diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2011-04-21 07:06:35 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2011-04-21 19:45:45 +0800 |
commit | 397aeade0545457dae034b0287049aa1cbeed782 (patch) | |
tree | 00e5f01aaea81e8add946ef0f18130841b07256f /plugins/groupwise-features/install-shared.c | |
parent | 69add830e12856ab29b96bdce7335bf18e0a2a6f (diff) | |
download | gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.tar gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.tar.gz gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.tar.bz2 gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.tar.lz gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.tar.xz gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.tar.zst gsoc2013-evolution-397aeade0545457dae034b0287049aa1cbeed782.zip |
Adapt to CamelService changes.
Diffstat (limited to 'plugins/groupwise-features/install-shared.c')
-rw-r--r-- | plugins/groupwise-features/install-shared.c | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/plugins/groupwise-features/install-shared.c b/plugins/groupwise-features/install-shared.c index 969ea0c30d..3899dab95b 100644 --- a/plugins/groupwise-features/install-shared.c +++ b/plugins/groupwise-features/install-shared.c @@ -59,7 +59,7 @@ install_folder_response (EMFolderSelector *emfs, gint response, gpointer *data) gchar *parent_name; gchar *container_id; const gchar *item_id; - CamelStore *store; + CamelService *service = NULL; CamelFolder *folder; EAccount *account; CamelProvider *provider; @@ -69,6 +69,7 @@ install_folder_response (EMFolderSelector *emfs, gint response, gpointer *data) gtk_widget_destroy (GTK_WIDGET (emfs)); } else { CamelSession *session; + CamelURL *url; EShell *shell; shell = e_shell_get_default (); @@ -91,24 +92,30 @@ install_folder_response (EMFolderSelector *emfs, gint response, gpointer *data) else parent_name = NULL; } - store = (CamelStore *) camel_session_get_service ( - session, uri, CAMEL_PROVIDER_STORE, NULL); - if (store == NULL) { + + url = camel_url_new (uri, NULL); + if (url != NULL) { + service = camel_session_get_service_by_url ( + session, url); + camel_url_free (url); + } + + if (!CAMEL_IS_STORE (service)) { g_strfreev (names); return; } - cnc = get_cnc (store); + cnc = get_cnc (CAMEL_STORE (service)); if (E_IS_GW_CONNECTION (cnc)) { container_id = get_container_id (cnc, parent_name); if (e_gw_connection_accept_shared_folder (cnc, folder_name, container_id, (gchar *)item_id, NULL) == E_GW_CONNECTION_STATUS_OK) { - CamelService *service; CamelURL *url; /* FIXME Not passing a GCancellable or GError here. */ folder = camel_store_get_folder_sync ( - store, "Mailbox", 0, NULL, NULL); + CAMEL_STORE (service), + "Mailbox", 0, NULL, NULL); /*changes = camel_folder_change_info_new (); camel_folder_change_info_remove_uid (changes, (gchar *) item_id); camel_folder_summary_remove_uid (folder->summary, item_id);*/ @@ -119,12 +126,12 @@ install_folder_response (EMFolderSelector *emfs, gint response, gpointer *data) CAMEL_MESSAGE_DELETED); camel_folder_summary_touch (folder->summary); /* camel_object_trigger_event (CAMEL_OBJECT (folder), "folder_changed", changes); */ - service = CAMEL_SERVICE (store); url = camel_service_get_camel_url (service); uri = camel_url_to_string (url, CAMEL_URL_HIDE_ALL); account = e_get_account_by_source_url (uri); uri = account->source->url; - em_folder_tree_model_remove_store (model, store); + em_folder_tree_model_remove_store ( + model, CAMEL_STORE (service)); provider = camel_provider_get (uri, NULL); if (provider == NULL) { g_strfreev (names); @@ -137,8 +144,9 @@ install_folder_response (EMFolderSelector *emfs, gint response, gpointer *data) return; } - em_folder_tree_model_add_store (model, store, account->name); - g_object_unref (store); + em_folder_tree_model_add_store ( + model, CAMEL_STORE (service), + account->name); } } |