Add location interface
Tested:
$busctl introspect xyz.openbmc_project.eStoraged \
/xyz/openbmc_project/inventory/storage/mmcblk0
...
xyz.openbmc_project.Inventory.Decorator.LocationCode interface
.LocationCode property s "Embedded" emits-change
...
Signed-off-by: John Edward Broadbent <jebr@google.com>
Change-Id: Ib1c2177541de193c5930238958201ad26b38e7d2
diff --git a/src/estoraged.cpp b/src/estoraged.cpp
index 93efaae..83c96c2 100644
--- a/src/estoraged.cpp
+++ b/src/estoraged.cpp
@@ -100,8 +100,14 @@
return value;
});
+ locationInterface = objectServer.add_interface(
+ objectPath, "xyz.openbmc_project.Inventory.Decorator.LocationCode");
+ locationInterface->register_property("LocationCode",
+ std::string("Embedded"));
+
volumeInterface->initialize();
driveInterface->initialize();
+ locationInterface->initialize();
/* Set up the association between chassis and drive. */
association = objectServer.add_interface(
@@ -118,6 +124,7 @@
{
objectServer.remove_interface(volumeInterface);
objectServer.remove_interface(driveInterface);
+ objectServer.remove_interface(locationInterface);
objectServer.remove_interface(association);
}