Implementation of OS status, boot count and boot progress

Change-Id: I1b00a932db2533b83fa0bd7bb4fbd62c0299bff7
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
diff --git a/host_state_manager.hpp b/host_state_manager.hpp
index 8204931..41310d6 100644
--- a/host_state_manager.hpp
+++ b/host_state_manager.hpp
@@ -3,8 +3,12 @@
 #include <string>
 #include <functional>
 #include <sdbusplus/bus.hpp>
+#include <xyz/openbmc_project/State/Boot/Progress/server.hpp>
+#include <xyz/openbmc_project/Control/Boot/RebootAttempts/server.hpp>
+#include <xyz/openbmc_project/State/OperatingSystem/Status/server.hpp>
 #include "xyz/openbmc_project/State/Host/server.hpp"
 #include "settings.hpp"
+#include "config.h"
 
 namespace phosphor
 {
@@ -14,7 +18,11 @@
 {
 
 using HostInherit = sdbusplus::server::object::object<
-        sdbusplus::xyz::openbmc_project::State::server::Host>;
+        sdbusplus::xyz::openbmc_project::State::server::Host,
+        sdbusplus::xyz::openbmc_project::State::Boot::server::Progress,
+        sdbusplus::xyz::openbmc_project::Control::Boot::server::RebootAttempts,
+        sdbusplus::xyz::openbmc_project::State::OperatingSystem::server::Status>;
+
 namespace sdbusRule = sdbusplus::bus::match::rules;
 
 /** @class Host
@@ -57,6 +65,8 @@
             // Will throw exception on fail
             determineInitialState();
 
+            attemptsLeft(BOOT_COUNT_MAX_ALLOWED);
+
             // We deferred this until we could get our property correct
             this->emit_object_added();
         }
@@ -106,13 +116,6 @@
         bool stateActive(const std::string& target);
 
         /**
-         * @brief Set the HOST BOOTCOUNT Sensor value
-         *
-         * @param[in] bootCount  - new BOOTCOUNT value
-         */
-        void setHostbootCount(int bootCount);
-
-        /**
          * @brief Determine if auto reboot flag is set
          *
          * @return boolean corresponding to current auto_reboot setting