Use different code paths for create and restore

There are 2 slightly different code paths for when
the code starts up and creates error log objects via
a GetManagedObjects call versus when it creates a single
new object on an InterfacesAdded callback.

The latter case involves creating all new interface
objects for an error log entry.  The former case involves
creating brand new interface objects for the interfaces
that did not need to be persisted, and restoring the data
for the objects that did.

Tested: Run through both code paths

Change-Id: I4e05324f315153a501271499a50ea00b3e5808c0
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/manager.hpp b/manager.hpp
index 0412130..0c8a095 100644
--- a/manager.hpp
+++ b/manager.hpp
@@ -86,14 +86,42 @@
     void createAll();
 
     /**
-     * Creates the IBM interface(s) for a single error log.
+     * Creates the IBM interface(s) for a single new error log.
+     *
+     * Any interfaces that require serialization will be created
+     * and serialized here.
      *
      * @param[in] objectPath - object path of the error log
-     * @param[in] properties - the xyz.openbmc_project.Logging.Entry
-     *                         properties
+     * @param[in] interfaces - map of all interfaces and properties
+     *                         on a phosphor-logging error log
      */
     void create(const std::string& objectPath,
-                const DbusPropertyMap& properties);
+                const DbusInterfaceMap& interfaces);
+
+    /**
+     * Creates the IBM interface(s) for a single error log after
+     * the application is restarted.
+     *
+     * Interfaces that were persisted will be restored from their
+     * previously saved filesystem data.
+     *
+     * @param[in] objectPath - object path of the error log
+     * @param[in] interfaces - map of all interfaces and properties
+     *                         on a phosphor-logging error log
+     */
+    void createWithRestore(const std::string& objectPath,
+                           const DbusInterfaceMap& interfaces);
+
+    /**
+     * Creates the IBM interfaces for a single error log that
+     * do not persist across app restarts.
+     *
+     * @param[in] objectPath - object path of the error log
+     * @param[in] interfaces - map of all interfaces and properties
+     *                         on a phosphor-logging error log
+     */
+    void createObject(const std::string& objectPath,
+                      const DbusInterfaceMap& interfaces);
 
     /**
      * Creates the IBM policy interface for a single error log