From 82a42f8b8a0cb0081d40009b345c3225d86f6e90 Mon Sep 17 00:00:00 2001 From: Claudio Takahasi Date: Mon, 3 Nov 2008 18:09:04 -0300 Subject: [PATCH] obexd: Use utility function to report transfer complete --- obexd/client/session.c | 130 ++++++++++++++++++++--------------------- 1 file changed, 62 insertions(+), 68 deletions(-) diff --git a/obexd/client/session.c b/obexd/client/session.c index 0f6022a87..0aa7887ad 100644 --- a/obexd/client/session.c +++ b/obexd/client/session.c @@ -419,18 +419,74 @@ int session_create(const char *source, return 0; } -static void abort_transfer(struct session_data *session) +static void agent_request(DBusConnection *conn, const char *agent_name, + const char *agent_path, const char *transfer_path) { DBusMessage *message; - message = dbus_message_new_method_call(session->agent_name, - session->agent_path, AGENT_INTERFACE, "Complete"); + if (agent_name == NULL || agent_path == NULL) + return; + + message = dbus_message_new_method_call(agent_name, + agent_path, AGENT_INTERFACE, "Request"); dbus_message_append_args(message, - DBUS_TYPE_OBJECT_PATH, &session->transfer_path, - DBUS_TYPE_INVALID); + DBUS_TYPE_OBJECT_PATH, &transfer_path, + DBUS_TYPE_INVALID); + + g_dbus_send_message(conn, message); + + /* FIXME: Reply needs be handled */ +} + +static void agent_notify_progress(DBusConnection *conn, const char *agent_name, + const char *agent_path, const char *transfer_path, + uint64_t transferred) +{ + DBusMessage *message; + + if (agent_name == NULL || agent_path == NULL) + return; - g_dbus_send_message(session->conn, message); + message = dbus_message_new_method_call(agent_name, + agent_path, AGENT_INTERFACE, "Progress"); + + dbus_message_set_no_reply(message, TRUE); + + dbus_message_append_args(message, + DBUS_TYPE_OBJECT_PATH, &transfer_path, + DBUS_TYPE_UINT64, &transferred, + DBUS_TYPE_INVALID); + + g_dbus_send_message(conn, message); +} + +static void agent_notify_complete(DBusConnection *conn, const char *agent_name, + const char *agent_path, const char *transfer_path) +{ + DBusMessage *message; + + if (agent_name == NULL || agent_path == NULL) + return; + + message = dbus_message_new_method_call(agent_name, + agent_path, AGENT_INTERFACE, "Complete"); + + dbus_message_set_no_reply(message, TRUE); + + dbus_message_append_args(message, + DBUS_TYPE_OBJECT_PATH, &transfer_path, + DBUS_TYPE_INVALID); + + g_dbus_send_message(conn, message); +} + + +static void abort_transfer(struct session_data *session) +{ + + agent_notify_complete(session->conn, session->agent_name, + session->agent_path, session->transfer_path); gw_obex_xfer_abort(session->xfer, NULL); @@ -654,68 +710,6 @@ static GDBusMethodTable session_methods[] = { { } }; -static void agent_request(DBusConnection *conn, const char *agent_name, - const char *agent_path, const char *transfer_path) -{ - DBusMessage *message; - - if (agent_name == NULL || agent_path == NULL) - return; - - message = dbus_message_new_method_call(agent_name, - agent_path, AGENT_INTERFACE, "Request"); - - dbus_message_append_args(message, - DBUS_TYPE_OBJECT_PATH, &transfer_path, - DBUS_TYPE_INVALID); - - g_dbus_send_message(conn, message); - - /* FIXME: Reply needs be handled */ -} - -static void agent_notify_progress(DBusConnection *conn, const char *agent_name, - const char *agent_path, const char *transfer_path, - uint64_t transferred) -{ - DBusMessage *message; - - if (agent_name == NULL || agent_path == NULL) - return; - - message = dbus_message_new_method_call(agent_name, - agent_path, AGENT_INTERFACE, "Progress"); - - dbus_message_set_no_reply(message, TRUE); - - dbus_message_append_args(message, - DBUS_TYPE_OBJECT_PATH, &transfer_path, - DBUS_TYPE_UINT64, &transferred, - DBUS_TYPE_INVALID); - - g_dbus_send_message(conn, message); -} - -static void agent_notify_complete(DBusConnection *conn, const char *agent_name, - const char *agent_path, const char *transfer_path) -{ - DBusMessage *message; - - if (agent_name == NULL || agent_path == NULL) - return; - - message = dbus_message_new_method_call(agent_name, - agent_path, AGENT_INTERFACE, "Complete"); - - dbus_message_set_no_reply(message, TRUE); - - dbus_message_append_args(message, - DBUS_TYPE_OBJECT_PATH, &transfer_path, - DBUS_TYPE_INVALID); - - g_dbus_send_message(conn, message); -} - static void append_variant(DBusMessageIter *iter, int type, void *val) { DBusMessageIter value; -- 2.47.3