diff options
Diffstat (limited to 'src/mcd-account.c')
-rw-r--r-- | src/mcd-account.c | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/src/mcd-account.c b/src/mcd-account.c index 012367f9..0e317508 100644 --- a/src/mcd-account.c +++ b/src/mcd-account.c @@ -127,6 +127,7 @@ struct _McdAccountPrivate McdStorage *storage; TpDBusDaemon *dbus_daemon; + McdConnectivityMonitor *connectivity; McdAccountConnectionContext *connection_context; GKeyFile *keyfile; /* configuration file */ @@ -190,6 +191,7 @@ enum { PROP_0, PROP_DBUS_DAEMON, + PROP_CONNECTIVITY_MONITOR, PROP_STORAGE, PROP_NAME, PROP_ALWAYS_ON, @@ -3441,6 +3443,11 @@ set_property (GObject *obj, guint prop_id, priv->dbus_daemon = g_value_dup_object (val); break; + case PROP_CONNECTIVITY_MONITOR: + g_assert (priv->connectivity == NULL); + priv->connectivity = g_value_dup_object (val); + break; + case PROP_NAME: g_assert (priv->unique_name == NULL); priv->unique_name = g_value_dup_string (val); @@ -3479,6 +3486,11 @@ get_property (GObject *obj, guint prop_id, case PROP_DBUS_DAEMON: g_value_set_object (val, priv->dbus_daemon); break; + + case PROP_CONNECTIVITY_MONITOR: + g_value_set_object (val, priv->connectivity); + break; + case PROP_NAME: g_value_set_string (val, priv->unique_name); break; @@ -3559,6 +3571,7 @@ _mcd_account_dispose (GObject *object) tp_clear_object (&priv->storage); tp_clear_object (&priv->dbus_daemon); tp_clear_object (&priv->self_contact); + tp_clear_object (&priv->connectivity); _mcd_account_set_connection_context (self, NULL); _mcd_account_set_connection (self, NULL); @@ -3635,6 +3648,14 @@ mcd_account_class_init (McdAccountClass * klass) G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property + (object_class, PROP_CONNECTIVITY_MONITOR, + g_param_spec_object ("connectivity monitor", + "Connectivity monitor", + "Connectivity monitor", + MCD_TYPE_CONNECTIVITY_MONITOR, + G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY)); + + g_object_class_install_property (object_class, PROP_STORAGE, g_param_spec_object ("storage", "storage", "storage", MCD_TYPE_STORAGE, @@ -3729,7 +3750,9 @@ mcd_account_init (McdAccount *account) } McdAccount * -mcd_account_new (McdAccountManager *account_manager, const gchar *name) +mcd_account_new (McdAccountManager *account_manager, + const gchar *name, + McdConnectivityMonitor *connectivity) { gpointer *obj; McdStorage *storage = mcd_account_manager_get_storage (account_manager); @@ -3738,6 +3761,7 @@ mcd_account_new (McdAccountManager *account_manager, const gchar *name) obj = g_object_new (MCD_TYPE_ACCOUNT, "storage", storage, "dbus-daemon", dbus, + "connectivity-monitor", connectivity, "name", name, NULL); return MCD_ACCOUNT (obj); @@ -5132,3 +5156,9 @@ mcd_account_dup_nickname (McdAccount *self) return mcd_storage_dup_string (self->priv->storage, name, "Nickname"); } + +McdConnectivityMonitor * +mcd_account_get_connectivity_monitor (McdAccount *self) +{ + return self->priv->connectivity; +} |