summaryrefslogtreecommitdiff
path: root/src/mcd-account-connection.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mcd-account-connection.c')
-rw-r--r--src/mcd-account-connection.c115
1 files changed, 0 insertions, 115 deletions
diff --git a/src/mcd-account-connection.c b/src/mcd-account-connection.c
index 09b3a219..a532f351 100644
--- a/src/mcd-account-connection.c
+++ b/src/mcd-account-connection.c
@@ -36,118 +36,3 @@
#include "mcd-account-priv.h"
#include "mcd-account-manager.h"
#include "mcd-connection-priv.h"
-
-struct _McdAccountConnectionContext {
- GHashTable *params;
- gboolean user_initiated;
-};
-
-void
-_mcd_account_connection_context_free (McdAccountConnectionContext *c)
-{
- g_hash_table_unref (c->params);
- g_free (c);
-}
-
-void
-_mcd_account_connection_begin (McdAccount *account,
- gboolean user_initiated)
-{
- McdAccountConnectionContext *ctx;
-
- /* check whether a connection process is already ongoing */
- if (_mcd_account_get_connection_context (account) != NULL)
- {
- DEBUG ("already trying to connect");
- return;
- }
-
- /* get account params */
- /* create dynamic params HT */
- /* run the handlers */
- ctx = g_malloc (sizeof (McdAccountConnectionContext));
- ctx->user_initiated = user_initiated;
-
- /* If we get this far, the account should be valid, so getting the
- * parameters should succeed.
- */
- ctx->params = _mcd_account_dup_parameters (account);
- g_assert (ctx->params != NULL);
-
- _mcd_account_set_connection_status (account,
- TP_CONNECTION_STATUS_CONNECTING,
- TP_CONNECTION_STATUS_REASON_REQUESTED,
- NULL, NULL, NULL);
- _mcd_account_set_connection_context (account, ctx);
- mcd_account_connection_proceed (account, TRUE);
-}
-
-void
-mcd_account_connection_proceed_with_reason (McdAccount *account,
- gboolean success,
- TpConnectionStatusReason reason)
-{
- McdAccountConnectionContext *ctx;
- gboolean delayed;
-
- /* call next handler, or terminate the chain (emitting proper signal).
- * if everything is fine, call mcd_manager_create_connection() and
- * _mcd_connection_connect () with the dynamic parameters. Remove that call
- * from mcd_manager_create_connection() */
- ctx = _mcd_account_get_connection_context (account);
- g_return_if_fail (ctx != NULL);
- g_return_if_fail (ctx->params != NULL);
-
- if (success)
- {
- if (mcd_connectivity_monitor_is_online (
- mcd_account_get_connectivity_monitor (account)))
- {
- DEBUG ("%s wants to connect and we're online - go for it",
- mcd_account_get_unique_name (account));
- delayed = FALSE;
- }
- else if (!mcd_account_get_waiting_for_connectivity (account))
- {
- DEBUG ("%s wants to connect, but we're offline; queuing it up",
- mcd_account_get_unique_name (account));
- delayed = TRUE;
- mcd_account_set_waiting_for_connectivity (account, TRUE);
- }
- else
- {
- DEBUG ("%s wants to connect, but is already waiting for "
- "connectivity?", mcd_account_get_unique_name (account));
- delayed = TRUE;
- }
- }
- else
- {
- DEBUG ("%s failed to connect: reason code %d",
- mcd_account_get_unique_name (account), reason);
- delayed = FALSE;
- }
-
- if (!delayed)
- {
- /* end of the chain */
- if (success)
- {
- _mcd_account_connect (account, ctx->params);
- }
- else
- {
- _mcd_account_set_connection_status
- (account, TP_CONNECTION_STATUS_DISCONNECTED, reason, NULL,
- TP_ERROR_STR_DISCONNECTED, NULL);
- }
- _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);
-}