"http://standards.freedesktop.org/dbus/1.0/introspect.dtd">
<node>
- <interface name="ttsd.worker.dbus">
+ <interface name="ttd.worker.dbus">
<!-- Method definitions -->
- <method name="ttsd_worker_submit_report">
+ <method name="ttd_worker_submit_report">
<arg type="s" name="report" direction="in"/>
+ <arg type="i" name="working_state" direction="in"/>
<arg type="i" name="ret" direction="out"/>
</method>
#ifndef __TTD_COMMON_WORKER_INF_DEF_H__
#define __TTD_COMMON_WORKER_INF_DEF_H__
-#define TTSD_WORKER_DBUS_NAME "ttsd.worker.dbus"
-#define TTSD_WORKER_DBUS_OBJECT_PATH "/ttsd_worker_dbus_object"
-#define TTSD_WORKER_DBUS_INTERFACE "ttsd.worker.dbus"
+#define TTD_WORKER_DBUS_NAME "ttd.worker.dbus"
+#define TTD_WORKER_DBUS_OBJECT_PATH "/ttd_worker_dbus_object"
+#define TTD_WORKER_DBUS_INTERFACE "ttd.worker.dbus"
#endif /* __TTD_COMMON_WORKER_INF_DEF_H__ */
struct _worker_interface_h {
guint owner_id;
GDBusObjectManagerServer *m_server;
- TtsdWorkerDbus *dbus_obj;
+ TtdWorkerDbus *dbus_obj;
};
-static gboolean __received_from_worker(TtsdWorkerDbus *obj, GDBusMethodInvocation *context, gchar *report, void *user_data)
+static void
+__received_from_worker(TtdWorkerDbus *obj,
+ GDBusMethodInvocation *context,
+ GVariant *parameters,
+ void *user_data)
{
int ret = 0;
- _D("Report[%s] is arrived from worker", report);
- if (!obj) {
- _E("Dbus object is NULL");
- ret = -1;
- return FALSE;
- }
-
- if (!context) {
- _E("Invocation is NULL");
- ret = -1;
- return FALSE;
- }
-
- if (!report) {
- _E("Report is NULL");
- ret = -1;
- return FALSE;
- }
-
- ttsd_worker_dbus_complete_ttsd_worker_submit_report(obj, context, ret);
+ ret_if(!obj);
+ ret_if(!context);
+ ret_if(!parameters);
- return FALSE;
+ ttd_worker_dbus_complete_ttd_worker_submit_report(obj, context, ret);
}
static void __on_name_acquired_cb(GDBusConnection *connection, const gchar *name, gpointer user_data)
}
worker_interface_h h = user_data;
- h->m_server = g_dbus_object_manager_server_new(TTSD_WORKER_DBUS_OBJECT_PATH);
+ h->m_server = g_dbus_object_manager_server_new(TTD_WORKER_DBUS_OBJECT_PATH);
if (!h->m_server) {
_E("Failed to create dbus server");
ttd_worker_interface_fini(h);
return;
}
- h->dbus_obj = ttsd_worker_dbus_skeleton_new();
+ h->dbus_obj = ttd_worker_dbus_skeleton_new();
if (!h->dbus_obj) {
_E("Failed to create dbus skeleton");
ttd_worker_interface_fini(h);
}
if (!g_dbus_interface_skeleton_export(G_DBUS_INTERFACE_SKELETON(h->dbus_obj),
- connection, TTSD_WORKER_DBUS_OBJECT_PATH, NULL)) {
+ connection, TTD_WORKER_DBUS_OBJECT_PATH, NULL)) {
_E("Failed to export interface with object path");
ttd_worker_interface_fini(h);
return;
}
- ret = g_signal_connect(h->dbus_obj, "handle-ttsd-worker-submit-report",
+ ret = g_signal_connect(h->dbus_obj, "handle-ttd-worker-submit-report",
G_CALLBACK (__received_from_worker), h);
if (!ret) {
_E("Failed to connect handle: submit-report");
}
_h->owner_id = g_bus_own_name(G_BUS_TYPE_SYSTEM,
- TTSD_WORKER_DBUS_NAME,
+ TTD_WORKER_DBUS_NAME,
G_BUS_NAME_OWNER_FLAGS_NONE,
__on_bus_acquired_cb,
__on_name_acquired_cb,
#ifdef LOG_TAG
#undef LOG_TAG
#endif
-#define LOG_TAG "TTSD_LIB"
+#define LOG_TAG "TTD_LIB"
#if !defined(_V)
#define _V(fmt, arg...) dlog_print(DLOG_VERBOSE, LOG_TAG, "[%s:%d] " fmt "\n", __func__, __LINE__, ##arg)
* limitations under the License.
*/
-#ifndef __TTSD_WORKER_LIB_H__
-#define __TTSD_WORKER_LIB_H__
+#ifndef __TTD_WORKER_LIB_H__
+#define __TTD_WORKER_LIB_H__
typedef enum {
- TTSD_WORKER_SUBMIT_SUCCESS,
- TTSD_WORKER_SUBMIT_FAIL,
-} ttsd_worker_submit_result_e;
+ TTD_WORKER_SUBMIT_SUCCESS,
+ TTD_WORKER_SUBMIT_FAIL,
+} ttd_worker_submit_result_e;
-typedef void(*ttsd_worker_submit_report_completed_cb)(ttsd_worker_submit_result_e result, void *user_data);
+typedef enum {
+ TTD_WORKER_WORKING,
+ TTD_WORKER_COMPLETED,
+ TTD_WORKER_FAILED,
+} ttd_worker_working_state_e;
+
+typedef void(*ttd_worker_submit_report_completed_cb)(ttd_worker_submit_result_e result, void *user_data);
-int ttsd_worker_submit_report(const char *report, ttsd_worker_submit_report_completed_cb completed_cb, void *completed_cb_data);
-int ttsd_worker_submit_report_sync(const char *report);
+int ttd_worker_submit_report(const char *report, ttd_worker_working_state_e working_state,
+ ttd_worker_submit_report_completed_cb completed_cb, void *completed_cb_data);
+int ttd_worker_submit_report_sync(const char *report, ttd_worker_working_state_e working_state);
-#endif /* __TTSD_WORKER_LIB_H__ */
+#endif /* __TTD_WORKER_LIB_H__ */
#include <gio/gio.h>
#include "log-private.h"
-#include "ttsd-worker-lib.h"
+#include "ttd-worker-lib.h"
#include "common-worker-inf-def.h"
#include "common-worker-inf-dbus.h"
typedef struct {
GCancellable *cancellable;
- TtsdWorkerDbus *dbus_object;
- ttsd_worker_submit_report_completed_cb completed_cb;
+ TtdWorkerDbus *dbus_object;
+ ttd_worker_submit_report_completed_cb completed_cb;
void *completed_cb_data;
} dbus_h;
static void __destroy_dbus_connection(dbus_h *h)
{
_D("Destory the DBus Connection");
+ if (!h)
+ return;
+
if (h->cancellable) {
g_cancellable_cancel(h->cancellable);
g_object_unref(h->cancellable);
}
+
if (h->dbus_object)
g_object_unref(h->dbus_object);
- if (h)
- g_free(h);
+
+ g_free(h);
}
static dbus_h *__make_dbus_connection(void)
h->cancellable = g_cancellable_new();
- h->dbus_object = ttsd_worker_dbus_proxy_new_for_bus_sync(G_BUS_TYPE_SYSTEM,
+ h->dbus_object = ttd_worker_dbus_proxy_new_for_bus_sync(G_BUS_TYPE_SYSTEM,
G_DBUS_PROXY_FLAGS_NONE,
- TTSD_WORKER_DBUS_NAME,
- TTSD_WORKER_DBUS_OBJECT_PATH,
+ TTD_WORKER_DBUS_NAME,
+ TTD_WORKER_DBUS_OBJECT_PATH,
h->cancellable,
&error);
if (!h->dbus_object) {
dbus_h *h = user_data;
gint ret_val = -1;
gboolean ret = FALSE;
- ttsd_worker_submit_result_e result;
+ ttd_worker_submit_result_e result;
_D("Send completed");
return;
}
- ret = ttsd_worker_dbus_call_ttsd_worker_submit_report_finish(h->dbus_object, &ret_val, res, &g_error);
+ ret = ttd_worker_dbus_call_ttd_worker_submit_report_finish(h->dbus_object, &ret_val, res, &g_error);
if (!ret) {
_E("DBus proxy call is failed[%s]", g_error->message);
- result = TTSD_WORKER_SUBMIT_FAIL;
+ result = TTD_WORKER_SUBMIT_FAIL;
g_error_free(g_error);
} else {
if (ret_val < 0) {
_E("Submit report is failed");
- result = TTSD_WORKER_SUBMIT_FAIL;
+ result = TTD_WORKER_SUBMIT_FAIL;
} else
- result = TTSD_WORKER_SUBMIT_SUCCESS;
+ result = TTD_WORKER_SUBMIT_SUCCESS;
}
if (h->completed_cb)
__destroy_dbus_connection(h);
}
-int ttsd_worker_submit_report(const char *report, ttsd_worker_submit_report_completed_cb completed_cb, void *user_data)
+int ttd_worker_submit_report(const char *report, ttd_worker_working_state_e working_state,
+ ttd_worker_submit_report_completed_cb completed_cb, void *user_data)
{
dbus_h *h = NULL;
h->completed_cb = completed_cb;
h->completed_cb_data = user_data;
- ttsd_worker_dbus_call_ttsd_worker_submit_report(h->dbus_object,
+ ttd_worker_dbus_call_ttd_worker_submit_report(h->dbus_object,
report,
+ working_state,
h->cancellable,
(GAsyncReadyCallback) __submit_completed_cb,
h);
return 0;
}
-int ttsd_worker_submit_report_sync(const char *report)
+int ttd_worker_submit_report_sync(const char *report, ttd_worker_working_state_e working_state)
{
dbus_h *h = NULL;
GError *error = NULL;
return -1;
}
- ret = ttsd_worker_dbus_call_ttsd_worker_submit_report_sync(h->dbus_object,
+ ret = ttd_worker_dbus_call_ttd_worker_submit_report_sync(h->dbus_object,
report,
+ working_state,
&ret_val,
h->cancellable,
&error);