[next] telepathy-rakia: New TpChannelManager API
Guillaume Desmottes
gdesmott at kemper.freedesktop.org
Wed Jan 29 07:00:47 PST 2014
Module: telepathy-rakia
Branch: next
Commit: 03f87e0bfaa3dcd32c4e1422dc85d6e3e5602682
URL: http://cgit.freedesktop.org/telepathy/telepathy-rakia/commit/?id=03f87e0bfaa3dcd32c4e1422dc85d6e3e5602682
Author: Guillaume Desmottes <guillaume.desmottes at collabora.co.uk>
Date: Wed Jan 29 15:12:57 2014 +0100
New TpChannelManager API
---
rakia/media-manager.c | 43 +++++++++++++++++--------------------------
rakia/text-manager.c | 46 ++++++++++++++++------------------------------
2 files changed, 33 insertions(+), 56 deletions(-)
diff --git a/rakia/media-manager.c b/rakia/media-manager.c
index 7402cb6..4257e3c 100644
--- a/rakia/media-manager.c
+++ b/rakia/media-manager.c
@@ -248,7 +248,7 @@ call_channel_closed_cb (RakiaCallChannel *chan, gpointer user_data)
RakiaMediaManager *fac = RAKIA_MEDIA_MANAGER (user_data);
RakiaMediaManagerPrivate *priv = RAKIA_MEDIA_MANAGER_GET_PRIVATE (fac);
- tp_channel_manager_emit_channel_closed_for_object (fac,
+ tp_channel_manager_emit_channel_closed_for_object (TP_CHANNEL_MANAGER (fac),
TP_EXPORTABLE_CHANNEL (chan));
if (priv->channels)
@@ -386,7 +386,7 @@ incoming_call_cb (RakiaSipSession *session,
channel = new_call_channel (idata->fac, idata->handle, idata->handle, NULL,
session);
- tp_channel_manager_emit_new_channel (idata->fac,
+ tp_channel_manager_emit_new_channel (TP_CHANNEL_MANAGER (idata->fac),
TP_EXPORTABLE_CHANNEL (channel), NULL);
g_object_unref (session);
@@ -573,9 +573,9 @@ typedef enum
static gboolean
rakia_media_manager_requestotron (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties,
- RequestMethod method)
+ TpChannelManagerRequest *request,
+ GHashTable *request_properties,
+ RequestMethod method)
{
RakiaMediaManager *self = RAKIA_MEDIA_MANAGER (manager);
RakiaMediaManagerPrivate *priv = RAKIA_MEDIA_MANAGER_GET_PRIVATE (self);
@@ -660,8 +660,9 @@ rakia_media_manager_requestotron (TpChannelManager *manager,
if (peer == handle)
{
- tp_channel_manager_emit_request_already_satisfied (self,
- request_token, TP_EXPORTABLE_CHANNEL (channel));
+ tp_channel_manager_emit_request_already_satisfied (
+ TP_CHANNEL_MANAGER (self), request,
+ TP_EXPORTABLE_CHANNEL (channel));
return TRUE;
}
}
@@ -672,44 +673,35 @@ rakia_media_manager_requestotron (TpChannelManager *manager,
request_properties, session);
g_object_unref (session);
- request_tokens = g_slist_prepend (NULL, request_token);
- tp_channel_manager_emit_new_channel (self,
+ request_tokens = g_slist_prepend (NULL, request);
+ tp_channel_manager_emit_new_channel (TP_CHANNEL_MANAGER (self),
TP_EXPORTABLE_CHANNEL (channel), request_tokens);
g_slist_free (request_tokens);
return TRUE;
error:
- tp_channel_manager_emit_request_failed (self, request_token,
+ tp_channel_manager_emit_request_failed (TP_CHANNEL_MANAGER (self), request,
error->domain, error->code, error->message);
g_error_free (error);
return TRUE;
}
static gboolean
-rakia_media_manager_request_channel (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties)
-{
- return rakia_media_manager_requestotron (manager, request_token,
- request_properties, METHOD_REQUEST);
-}
-
-static gboolean
rakia_media_manager_create_channel (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties)
+ TpChannelManagerRequest *request,
+ GHashTable *request_properties)
{
- return rakia_media_manager_requestotron (manager, request_token,
+ return rakia_media_manager_requestotron (manager, request,
request_properties, METHOD_CREATE);
}
static gboolean
rakia_media_manager_ensure_channel (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties)
+ TpChannelManagerRequest *request,
+ GHashTable *request_properties)
{
- return rakia_media_manager_requestotron (manager, request_token,
+ return rakia_media_manager_requestotron (manager, request,
request_properties, METHOD_ENSURE);
}
@@ -722,7 +714,6 @@ channel_manager_iface_init (gpointer g_iface,
iface->foreach_channel = rakia_media_manager_foreach_channel;
iface->type_foreach_channel_class =
rakia_media_manager_type_foreach_channel_class;
- iface->request_channel = rakia_media_manager_request_channel;
iface->create_channel = rakia_media_manager_create_channel;
iface->ensure_channel = rakia_media_manager_ensure_channel;
}
diff --git a/rakia/text-manager.c b/rakia/text-manager.c
index 6cde1fb..ca52479 100644
--- a/rakia/text-manager.c
+++ b/rakia/text-manager.c
@@ -240,7 +240,7 @@ channel_closed (RakiaTextChannel *chan, gpointer user_data)
TpHandle contact_handle;
gboolean really_destroyed = TRUE;
- tp_channel_manager_emit_channel_closed_for_object (self,
+ tp_channel_manager_emit_channel_closed_for_object (TP_CHANNEL_MANAGER (self),
(TpExportableChannel *) chan);
if (priv->channels == NULL)
@@ -260,7 +260,7 @@ channel_closed (RakiaTextChannel *chan, gpointer user_data)
{
DEBUG ("reopening channel with handle %u due to pending messages",
contact_handle);
- tp_channel_manager_emit_new_channel (self,
+ tp_channel_manager_emit_new_channel (TP_CHANNEL_MANAGER (self),
(TpExportableChannel *) chan, NULL);
}
}
@@ -298,7 +298,7 @@ rakia_text_manager_new_channel (RakiaTextManager *fac,
else
request_tokens = NULL;
- tp_channel_manager_emit_new_channel (fac,
+ tp_channel_manager_emit_new_channel (TP_CHANNEL_MANAGER (fac),
(TpExportableChannel *) chan, request_tokens);
g_slist_free (request_tokens);
@@ -346,9 +346,9 @@ rakia_text_manager_type_foreach_channel_class (GType type,
static gboolean
rakia_text_manager_requestotron (RakiaTextManager *self,
- gpointer request_token,
- GHashTable *request_properties,
- gboolean require_new)
+ TpChannelManagerRequest *request,
+ GHashTable *request_properties,
+ gboolean require_new)
{
RakiaTextManagerPrivate *priv = RAKIA_TEXT_MANAGER_GET_PRIVATE (self);
TpBaseConnection *base_conn = (TpBaseConnection *) priv->conn;
@@ -381,7 +381,7 @@ rakia_text_manager_requestotron (RakiaTextManager *self,
{
rakia_text_manager_new_channel (self,
handle, tp_base_connection_get_self_handle (base_conn),
- request_token);
+ request);
return TRUE;
}
@@ -392,12 +392,12 @@ rakia_text_manager_requestotron (RakiaTextManager *self,
goto error;
}
- tp_channel_manager_emit_request_already_satisfied (self, request_token,
- channel);
+ tp_channel_manager_emit_request_already_satisfied (TP_CHANNEL_MANAGER (self),
+ request, channel);
return TRUE;
error:
- tp_channel_manager_emit_request_failed (self, request_token,
+ tp_channel_manager_emit_request_failed (TP_CHANNEL_MANAGER (self), request,
error->domain, error->code, error->message);
g_error_free (error);
return TRUE;
@@ -406,36 +406,23 @@ error:
static gboolean
rakia_text_manager_create_channel (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties)
+ TpChannelManagerRequest *request,
+ GHashTable *request_properties)
{
RakiaTextManager *self = RAKIA_TEXT_MANAGER (manager);
- return rakia_text_manager_requestotron (self, request_token,
+ return rakia_text_manager_requestotron (self, request,
request_properties, TRUE);
}
-
-static gboolean
-rakia_text_manager_request_channel (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties)
-{
- RakiaTextManager *self = RAKIA_TEXT_MANAGER (manager);
-
- return rakia_text_manager_requestotron (self, request_token,
- request_properties, FALSE);
-}
-
-
static gboolean
rakia_text_manager_ensure_channel (TpChannelManager *manager,
- gpointer request_token,
- GHashTable *request_properties)
+ TpChannelManagerRequest *request,
+ GHashTable *request_properties)
{
RakiaTextManager *self = RAKIA_TEXT_MANAGER (manager);
- return rakia_text_manager_requestotron (self, request_token,
+ return rakia_text_manager_requestotron (self, request,
request_properties, FALSE);
}
@@ -625,6 +612,5 @@ channel_manager_iface_init (gpointer g_iface, gpointer iface_data)
iface->type_foreach_channel_class =
rakia_text_manager_type_foreach_channel_class;
iface->create_channel = rakia_text_manager_create_channel;
- iface->request_channel = rakia_text_manager_request_channel;
iface->ensure_channel = rakia_text_manager_ensure_channel;
}
More information about the telepathy-commits
mailing list