autoreboot: one-time object support

The new one_time D-Bus object is utilized for setting RebootPolicy for a
single boot. phosphor-state-manager will always look at this object
first for reboot policy, if it is the default of true, then
phosphor-state-manager will then look at the persistent user setting
under the non one_time object path.

See the following commit for more info:
https://github.com/openbmc/meta-phosphor/commit/7d29e7a2c135e91b222c57c66bb7ca61aae6398e

Tested:
Via some debug statements, confirmed that Path variables are both
updated with correct settings object.

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I8ef882633237529e03070607542b9acc218dffc6
diff --git a/settings.cpp b/settings.cpp
index 7a7784b..cc0b4cb 100644
--- a/settings.cpp
+++ b/settings.cpp
@@ -60,7 +60,20 @@
             {
                 if (autoRebootIntf == interface)
                 {
-                    autoReboot = path;
+                    /* There are two implementations of the AutoReboot
+                     * Interface. A persistent user setting and a one-time
+                     * setting which is only valid for one boot of the system.
+                     * The one-time setting will have "one_time" in its
+                     * object path.
+                     */
+                    if (path.find("one_time") != std::string::npos)
+                    {
+                        autoRebootOneTime = path;
+                    }
+                    else
+                    {
+                        autoReboot = path;
+                    }
                 }
                 else if (powerRestoreIntf == interface)
                 {