#include "ttd-worker-interface.h"
#include "common-worker-inf-def.h"
#include "common-worker-inf-dbus.h"
+#include "ttd-cmd-mgr.h"
struct _worker_interface_h {
guint owner_id;
GDBusObjectManagerServer *m_server;
- TtdWorkerDbus *dbus_obj;
+ TtdWorker *dbus_obj;
};
-static void
-__received_from_worker(TtdWorkerDbus *obj,
- GDBusMethodInvocation *context,
- GVariant *parameters,
- void *user_data)
+static gboolean
+__received_from_worker(TtdWorker *obj,
+ GDBusMethodInvocation *invocation,
+ const gchar *cmd_id,
+ const gchar *report,
+ gint working_state,
+ gpointer user_data)
{
int ret = 0;
- ret_if(!obj);
- ret_if(!context);
- ret_if(!parameters);
+ if (!cmd_id) {
+ _E("cmd_id is NULL");
+ ret = -1;
+ goto EXIT;
+ }
+
+ if ((working_state < TTD_CMD_RESULT_RUNNING) ||
+ (working_state > TTD_CMD_RESULT_FAIL)) {
+ _E("invail working state [%d]", working_state);
+ ret = -1;
+ goto EXIT;
+ }
+
+ if (!report)
+ _W("report is NULL");
+
+ ret = ttd_cmd_mgr_push_result(cmd_id, working_state, report);
+
+EXIT:
+ ttd_worker_complete_report(obj, invocation, ret);
- ttd_worker_dbus_complete_ttd_worker_submit_report(obj, context, ret);
+ return FALSE;
}
static void __on_name_acquired_cb(GDBusConnection *connection, const gchar *name, gpointer user_data)
return;
}
- h->dbus_obj = ttd_worker_dbus_skeleton_new();
+ h->dbus_obj = ttd_worker_skeleton_new();
if (!h->dbus_obj) {
_E("Failed to create dbus skeleton");
ttd_worker_interface_fini(h);
return;
}
- ret = g_signal_connect(h->dbus_obj, "handle-ttd-worker-submit-report",
+ ret = g_signal_connect(h->dbus_obj, "handle-report",
G_CALLBACK (__received_from_worker), h);
if (!ret) {
- _E("Failed to connect handle: submit-report");
+ _E("Failed to connect handle: report");
ttd_worker_interface_fini(h);
return;
}