[telepathy-mission-control/master] Use tp_dbus_daemon_request_name now we depend on a new enough tp-glib

Simon McVittie simon.mcvittie at collabora.co.uk
Wed May 27 09:49:36 PDT 2009


---
 src/mcd-account-manager.c |    6 ++--
 src/mcd-dispatcher.c      |    6 ++--
 src/mcd-misc.c            |   70 ---------------------------------------------
 src/mcd-misc.h            |    5 ---
 src/mcd-service.c         |    6 ++--
 5 files changed, 9 insertions(+), 84 deletions(-)

diff --git a/src/mcd-account-manager.c b/src/mcd-account-manager.c
index fdec336..885aa5e 100644
--- a/src/mcd-account-manager.c
+++ b/src/mcd-account-manager.c
@@ -865,9 +865,9 @@ register_dbus_service (McdAccountManager *account_manager)
     dbus_connection = TP_PROXY (priv->dbus_daemon)->dbus_connection;
     connection = dbus_g_connection_get_connection (dbus_connection);
 
-    if (!_mcd_dbus_daemon_request_name (priv->dbus_daemon,
-                                        MC_ACCOUNT_MANAGER_DBUS_SERVICE,
-                                        TRUE /* idempotent */, &error))
+    if (!tp_dbus_daemon_request_name (priv->dbus_daemon,
+                                      MC_ACCOUNT_MANAGER_DBUS_SERVICE,
+                                      TRUE /* idempotent */, &error))
     {
         /* FIXME: put in proper error handling when MC gains the ability to
          * be the AM or the CD but not both */
diff --git a/src/mcd-dispatcher.c b/src/mcd-dispatcher.c
index 9755fe4..a229e21 100644
--- a/src/mcd-dispatcher.c
+++ b/src/mcd-dispatcher.c
@@ -2635,9 +2635,9 @@ mcd_dispatcher_constructed (GObject *object)
 
     dgc = TP_PROXY (priv->dbus_daemon)->dbus_connection;
 
-    if (!_mcd_dbus_daemon_request_name (priv->dbus_daemon,
-                                        MCD_CHANNEL_DISPATCHER_BUS_NAME,
-                                        TRUE /* idempotent */, &error))
+    if (!tp_dbus_daemon_request_name (priv->dbus_daemon,
+                                      MCD_CHANNEL_DISPATCHER_BUS_NAME,
+                                      TRUE /* idempotent */, &error))
     {
         /* FIXME: put in proper error handling when MC gains the ability to
          * be the AM or the CD but not both */
diff --git a/src/mcd-misc.c b/src/mcd-misc.c
index 0b36a95..c482205 100644
--- a/src/mcd-misc.c
+++ b/src/mcd-misc.c
@@ -444,73 +444,3 @@ out:
     g_free (tmp_filename);
     return retval;
 }
-
-/* Copied from telepathy-glib, licensed under LGPL >= 2.1 */
-/*
- * _mcd_dbus_daemon_request_name:
- * @self: a TpDBusDaemon
- * @well_known_name: a well-known name to acquire
- * @idempotent: whether to consider it to be a success if this process
- *              already owns the name
- * @error: used to raise an error if %FALSE is returned
- *
- * Claim the given well-known name without queueing, allowing replacement
- * or replacing an existing name-owner.
- */
-gboolean
-_mcd_dbus_daemon_request_name (TpDBusDaemon *self,
-                               const gchar *well_known_name,
-                               gboolean idempotent,
-                               GError **error)
-{
-  TpProxy *as_proxy = (TpProxy *) self;
-  DBusGConnection *gconn = as_proxy->dbus_connection;
-  DBusConnection *dbc = dbus_g_connection_get_connection (gconn);
-  DBusError dbus_error;
-  int result;
-
-  g_return_val_if_fail (TP_IS_DBUS_DAEMON (self), FALSE);
-  g_return_val_if_fail (tp_dbus_check_valid_bus_name (well_known_name,
-        TP_DBUS_NAME_TYPE_WELL_KNOWN, error), FALSE);
-
-  dbus_error_init (&dbus_error);
-  result = dbus_bus_request_name (dbc, well_known_name,
-      DBUS_NAME_FLAG_DO_NOT_QUEUE, &dbus_error);
-
-  switch (result)
-    {
-    case DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER:
-      return TRUE;
-
-    case DBUS_REQUEST_NAME_REPLY_ALREADY_OWNER:
-      if (idempotent)
-        {
-          return TRUE;
-        }
-      else
-        {
-          g_set_error (error, TP_ERRORS, TP_ERROR_NOT_AVAILABLE,
-              "Name '%s' already in use by this process", well_known_name);
-          return FALSE;
-        }
-
-    case DBUS_REQUEST_NAME_REPLY_EXISTS:
-    case DBUS_REQUEST_NAME_REPLY_IN_QUEUE:
-      /* the latter shouldn't actually happen since we said DO_NOT_QUEUE */
-      g_set_error (error, TP_ERRORS, TP_ERROR_NOT_AVAILABLE,
-          "Name '%s' already in use by another process", well_known_name);
-      return FALSE;
-
-    case -1:
-      g_set_error (error, TP_ERRORS, TP_ERROR_NOT_AVAILABLE,
-          "%s: %s", dbus_error.name, dbus_error.message);
-      dbus_error_free (&dbus_error);
-      return FALSE;
-
-    default:
-      g_set_error (error, TP_ERRORS, TP_ERROR_NOT_AVAILABLE,
-          "RequestName('%s') returned %d and I don't know what that means",
-          well_known_name, result);
-      return FALSE;
-    }
-}
diff --git a/src/mcd-misc.h b/src/mcd-misc.h
index 9efa5c3..82b2f70 100644
--- a/src/mcd-misc.h
+++ b/src/mcd-misc.h
@@ -58,10 +58,5 @@ gboolean _mcd_file_set_contents (const gchar *filename, const gchar *contents,
 G_GNUC_INTERNAL
 void _mc_ext_register_dbus_glib_marshallers (void);
 
-gboolean _mcd_dbus_daemon_request_name (TpDBusDaemon *self,
-                                        const gchar *well_known_name,
-                                        gboolean idempotent,
-                                        GError **error);
-
 G_END_DECLS
 #endif /* MCD_MISC_H */
diff --git a/src/mcd-service.c b/src/mcd-service.c
index eee382f..ec91410 100644
--- a/src/mcd-service.c
+++ b/src/mcd-service.c
@@ -88,9 +88,9 @@ mcd_service_obtain_bus_name (McdService * obj)
 
     DEBUG ("Requesting MC dbus service");
 
-    if (!_mcd_dbus_daemon_request_name (mcd_master_get_dbus_daemon (master),
-                                        MISSION_CONTROL_DBUS_SERVICE,
-                                        TRUE /* idempotent */, &error))
+    if (!tp_dbus_daemon_request_name (mcd_master_get_dbus_daemon (master),
+                                      MISSION_CONTROL_DBUS_SERVICE,
+                                      TRUE /* idempotent */, &error))
     {
         g_error ("Failed registering '%s' service: %s",
                  MISSION_CONTROL_DBUS_SERVICE, error->message);
-- 
1.5.6.5



More information about the telepathy-commits mailing list