[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