[telepathy-mission-control/telepathy-mission-control-5.2] Add mcd_account_connection_proceed_with_reason

Alberto Mardegan alberto.mardegan at nokia.com
Thu Aug 20 06:13:31 PDT 2009


Use _mcd_account_set_connection_status to set the connection status reason.
---
 src/mcd-account-connection.c |   21 +++++++++++++--------
 src/mcd-connection-plugin.h  |    4 ++++
 2 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/src/mcd-account-connection.c b/src/mcd-account-connection.c
index 37cbd86..6867082 100644
--- a/src/mcd-account-connection.c
+++ b/src/mcd-account-connection.c
@@ -74,8 +74,10 @@ _mcd_account_connection_begin (McdAccount *account)
     mcd_account_connection_proceed (account, TRUE);
 }
 
-void 
-mcd_account_connection_proceed (McdAccount *account, gboolean success)
+void
+mcd_account_connection_proceed_with_reason (McdAccount *account,
+                                            gboolean success,
+                                            TpConnectionStatusReason reason)
 {
     McdAccountConnectionContext *ctx;
     McdAccountConnectionFunc func = NULL;
@@ -111,17 +113,20 @@ mcd_account_connection_proceed (McdAccount *account, gboolean success)
 	}
         else
         {
-            GError *error;
-
-            error = g_error_new (TP_ERRORS, TP_ERROR_NOT_AVAILABLE,
-                                 "Plugins refused connection to account %s",
-                                 mcd_account_get_unique_name (account));
-            _mcd_account_online_request_completed (account, error);
+            _mcd_account_set_connection_status
+                (account, TP_CONNECTION_STATUS_DISCONNECTED, reason);
         }
         _mcd_account_set_connection_context (account, NULL);
     }
 }
 
+void
+mcd_account_connection_proceed (McdAccount *account, gboolean success)
+{
+    mcd_account_connection_proceed_with_reason
+        (account, success, TP_CONNECTION_STATUS_REASON_NONE_SPECIFIED);
+}
+
 inline void
 _mcd_account_connection_class_init (McdAccountClass *klass)
 {
diff --git a/src/mcd-connection-plugin.h b/src/mcd-connection-plugin.h
index b694f91..8151f87 100644
--- a/src/mcd-connection-plugin.h
+++ b/src/mcd-connection-plugin.h
@@ -31,11 +31,15 @@
 #include "mcd-plugin.h"
 #include "mcd-transport.h"
 
+#include <telepathy-glib/enums.h>
+
 G_BEGIN_DECLS
 
 typedef void (*McdAccountConnectionFunc) (McdAccount *account, GHashTable *parameters, gpointer userdata);
 
 void mcd_account_connection_proceed (McdAccount *account, gboolean success);
+void mcd_account_connection_proceed_with_reason
+    (McdAccount *account, gboolean success, TpConnectionStatusReason reason);
 void mcd_account_connection_bind_transport (McdAccount *account,
                                             McdTransport *transport);
 
-- 
1.5.6.5



More information about the telepathy-commits mailing list