host-bmc: Implement PowerSupply interface

Adding support to host Powersupply dbus interface.
Based on the PDRs received from remote PLDM terminus,
PLDM hosts the dbus interface based on the entity type.
The powersuppply interface is defined at [1].

Tested:
   Functional test passed

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Inventory/Item/PowerSupply.interface.yaml

Change-Id: I2f8c57a2db7e6ffffe14b7dff646e73164f84f86
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>
diff --git a/host-bmc/dbus/custom_dbus.cpp b/host-bmc/dbus/custom_dbus.cpp
index b02ed36..16b822a 100644
--- a/host-bmc/dbus/custom_dbus.cpp
+++ b/host-bmc/dbus/custom_dbus.cpp
@@ -127,6 +127,16 @@
     }
 }
 
+void CustomDBus::implementPowerSupplyInterface(const std::string& path)
+{
+    if (!powersupply.contains(path))
+    {
+        powersupply.emplace(
+            path, std::make_unique<PowerSupply>(
+                      pldm::utils::DBusHandler::getBus(), path.c_str()));
+    }
+}
+
 void CustomDBus::implementFanInterface(const std::string& path)
 {
     if (!fan.contains(path))