}
}
-static struct dbus_signal proc_manager_dbus_signals[] = {
+/**
+ * @brief D-Bus signal handler for ProcPrelaunch
+ */
+static void proc_manager_dbus_app_prelaunch(GVariant *params)
+{
+ char *appid = NULL;
+ char *pkgid = NULL;
+ int flags = -1;
+ int categories = -1;
+
+ g_variant_get(params, "(&s&sii)", &appid, &pkgid, &flags, &categories);
+ if (!appid || !pkgid || flags < 0 || categories < 0) {
+ _D("Receive invalid D-Bus message. Ignore it");
+ return;
+ }
+
+ _D("App prelaunched : appid(%s), pkgid(%s), flags(0x%x), categories(0x%x)",
+ appid, pkgid, flags, categories);
+}
+
+static struct dbus_signal proc_manager_dbus_signals_amd[] = {
{ "AppLaunch", proc_manager_dbus_app_launch },
};
+static struct dbus_signal proc_manager_dbus_signals_rdhl[] = {
+ { "ProcPrelaunch", proc_manager_dbus_app_prelaunch },
+};
+
int proc_manager_dbus_init(void)
{
int ret;
ret = dbus_register_signals(AUL_DBUS_PATH_APPSTATUS, AUL_DBUS_INTERFACE_APPSTATUS,
- proc_manager_dbus_signals, ARRAY_SIZE(proc_manager_dbus_signals));
+ proc_manager_dbus_signals_amd, ARRAY_SIZE(proc_manager_dbus_signals_amd));
+ if (ret < 0) {
+ _E("Failed to register proc-manager AMD D-Bus signals (%d)", ret);
+ return ret;
+ }
+
+ ret = dbus_register_signals(RDHL_DBUS_PATH_PROC, RDHL_DBUS_INTERFACE_PROC,
+ proc_manager_dbus_signals_rdhl, ARRAY_SIZE(proc_manager_dbus_signals_rdhl));
if (ret < 0) {
- _E("Failed to register proc-manager D-Bus signals (%d)", ret);
+ _E("Failed to register proc-manager Resourced D-Bus signals (%d)", ret);
return ret;
}
#define AUL_DBUS_PATH_APPSTATUS "/Org/Tizen/Aul/AppStatus"
#define AUL_DBUS_INTERFACE_APPSTATUS "org.tizen.aul.AppStatus"
+#define RDHL_DBUS_PATH_PROC RDHL_DBUS_PATH(Process)
+#define RDHL_DBUS_INTERFACE_PROC RDHL_DBUS_INTERFACE(process)
+
int proc_manager_dbus_init(void);
#endif /* __RESOURCED_HEADLESS_PROC_MANAGER_DBUS_H__ */