From e5ec1aea4bc153d4587c450294e6568f4de89910 Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Thu, 29 Aug 2013 15:22:45 +0100 Subject: [PATCH 05/16] Remove support for checking conditions on accounts We no longer have API for external transport providers, and we've never defined any conditions on the transport provider we do have. --- src/mcd-master.c | 33 ++++++--------------------------- src/mcd-transport.c | 26 -------------------------- src/mcd-transport.h | 7 ------- 3 files changed, 6 insertions(+), 60 deletions(-) diff --git a/src/mcd-master.c b/src/mcd-master.c index 603b777..415a4cc 100644 --- a/src/mcd-master.c +++ b/src/mcd-master.c @@ -145,22 +145,14 @@ mcd_master_transport_connected (McdMaster *master, McdTransportPlugin *plugin, while (g_hash_table_iter_next (&iter, NULL, &v)) { McdAccount *account = MCD_ACCOUNT (v); - GHashTable *conditions; if (!mcd_account_would_like_to_connect (account)) continue; DEBUG ("account %s would like to connect", mcd_account_get_unique_name (account)); - conditions = mcd_account_get_conditions (account); - if (mcd_transport_plugin_check_conditions (plugin, transport, - conditions)) - { - DEBUG ("conditions matched"); - _mcd_account_connect_with_auto_presence (account, FALSE); - mcd_account_connection_bind_transport (account, transport); - } - g_hash_table_unref (conditions); + _mcd_account_connect_with_auto_presence (account, FALSE); + mcd_account_connection_bind_transport (account, transport); } } @@ -589,12 +581,9 @@ _mcd_master_account_replace_transport (McdMaster *master, McdAccount *account) { McdMasterPrivate *priv = master->priv; - GHashTable *conditions; gboolean connected = FALSE; - gboolean unconditional = FALSE; const gchar *name; const guint n_plugins = priv->transport_plugins->len; - guint n_conds; guint i; g_return_val_if_fail (MCD_IS_ACCOUNT (account), FALSE); @@ -611,11 +600,7 @@ _mcd_master_account_replace_transport (McdMaster *master, return TRUE; } - conditions = mcd_account_get_conditions (account); - n_conds = g_hash_table_size (conditions); - unconditional = (n_conds == 0); - - DEBUG ("Checking %s [%u conditions, %u plugins]", name, n_conds, n_plugins); + DEBUG ("Checking %s [%u plugins]", name, n_plugins); for (i = 0; !connected && i < priv->transport_plugins->len; i++) { @@ -636,18 +621,12 @@ _mcd_master_account_replace_transport (McdMaster *master, if (status != MCD_TRANSPORT_STATUS_CONNECTED) continue; - if (unconditional || - mcd_transport_plugin_check_conditions (plugin, transport, - conditions)) - { - mcd_account_connection_bind_transport (account, transport); - connected = TRUE; - break; - } + mcd_account_connection_bind_transport (account, transport); + connected = TRUE; + break; } } - g_hash_table_unref (conditions); return connected; } diff --git a/src/mcd-transport.c b/src/mcd-transport.c index 9f9bdc7..5e29d9e 100644 --- a/src/mcd-transport.c +++ b/src/mcd-transport.c @@ -121,32 +121,6 @@ mcd_transport_plugin_get_transports (McdTransportPlugin *plugin) return iface->get_transports (plugin); } - -/** - * mcd_transport_plugin_check_conditions: - * @plugin: the #McdTransportPlugin. - * @transport: a #McdTransport. - * @conditions: a #GHashTable with account conditions. - * - * Checks whether @transport satisfies the @conditions. - * - * Returns: %TRUE if all conditions are met, %FALSE otherwise. - */ -gboolean -mcd_transport_plugin_check_conditions (McdTransportPlugin *plugin, - McdTransport *transport, - const GHashTable *conditions) -{ - McdTransportPluginIface *iface; - - iface = MCD_TRANSPORT_PLUGIN_GET_IFACE (plugin); - - if (iface->check_conditions == NULL) - return TRUE; - else - return iface->check_conditions (plugin, transport, conditions); -} - /** * mcd_transport_get_name: * @plugin: the #McdTransportPlugin. diff --git a/src/mcd-transport.h b/src/mcd-transport.h index ec97286..a7e5bc3 100644 --- a/src/mcd-transport.h +++ b/src/mcd-transport.h @@ -53,9 +53,6 @@ struct _McdTransportPluginIface /* methods */ const GList * (*get_transports) (McdTransportPlugin *plugin); - gboolean (*check_conditions) (McdTransportPlugin *plugin, - McdTransport *transport, - const GHashTable *conditions); const gchar * (*get_transport_name) (McdTransportPlugin *plugin, McdTransport *transport); McdTransportStatus (*get_transport_status) (McdTransportPlugin *plugin, @@ -70,10 +67,6 @@ GType mcd_transport_plugin_get_type (void) G_GNUC_CONST; const GList *mcd_transport_plugin_get_transports (McdTransportPlugin *plugin); -gboolean mcd_transport_plugin_check_conditions (McdTransportPlugin *plugin, - McdTransport *transport, - const GHashTable *conditions); - const gchar *mcd_transport_get_name (McdTransportPlugin *plugin, McdTransport *transport); McdTransportStatus mcd_transport_get_status (McdTransportPlugin *plugin, -- 1.8.4.rc3