Remove custom org.openbmc.Object.ObjectMapper
Use the standard freedesktop ObjectManager interface.
Moved gdbus OM export calls to the correct place so these
signals are emitted as expected by system_manager.py.
Python apps that use pyobmc are already emitting these
correctly.
Change system_manager.py to watch for the freedesktop
signal rather than the custom one.
Added an sd_bus OM to led_controller.
diff --git a/objects/power_control_obj.c b/objects/power_control_obj.c
index da69413..85a8cff 100644
--- a/objects/power_control_obj.c
+++ b/objects/power_control_obj.c
@@ -10,7 +10,6 @@
#include "interfaces/openbmc_intf.h"
#include "openbmc.h"
#include "gpio.h"
-#include "object_mapper.h"
/* ------------------------------------------------------------------------- */
static const gchar* dbus_object_path = "/org/openbmc/control";
@@ -202,10 +201,6 @@
object_skeleton_set_control(object, control);
g_object_unref(control);
- ObjectMapper* mapper = object_mapper_skeleton_new();
- object_skeleton_set_object_mapper(object, mapper);
- g_object_unref(mapper);
-
//define method callbacks here
g_signal_connect(control_power,
"handle-set-power-state",
@@ -224,12 +219,10 @@
/* Export the object (@manager takes its own reference to @object) */
+ g_dbus_object_manager_server_set_connection(manager, connection);
g_dbus_object_manager_server_export(manager, G_DBUS_OBJECT_SKELETON(object));
g_object_unref(object);
- /* Export all objects */
- g_dbus_object_manager_server_set_connection(manager, connection);
-
// get gpio device paths
int rc = GPIO_OK;
do {
@@ -268,7 +261,6 @@
control_power_set_pgood_timeout(control_power,pgood_timeout);
g_timeout_add(poll_interval, poll_pgood, object);
}
- emit_object_added((GDBusObjectManager*)manager);
}
static void