diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2013-07-18 23:25:26 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2013-07-19 20:36:56 +0800 |
commit | 7383843653a4aecb0bffb589e57ff6bad51547fd (patch) | |
tree | 63bd66661d6d7d394d1adc03e20478ffd29b70e6 /libemail-engine/mail-folder-cache.h | |
parent | dd4d570b628a19e74546fbbbc9ee2c0e6783c9e7 (diff) | |
download | gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.tar gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.tar.gz gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.tar.bz2 gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.tar.lz gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.tar.xz gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.tar.zst gsoc2013-evolution-7383843653a4aecb0bffb589e57ff6bad51547fd.zip |
Reimplement mail_folder_cache_note_store().
* Use GIO-style async parameters.
* Add mail_folder_cache_note_store_finish().
* Do the bulk of the work in a thread so the logic is more readable.
* Queue multiple calls for the same CamelStore and share the results.
Diffstat (limited to 'libemail-engine/mail-folder-cache.h')
-rw-r--r-- | libemail-engine/mail-folder-cache.h | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/libemail-engine/mail-folder-cache.h b/libemail-engine/mail-folder-cache.h index 1c8a5cc4ee..8a91ca56a4 100644 --- a/libemail-engine/mail-folder-cache.h +++ b/libemail-engine/mail-folder-cache.h @@ -54,17 +54,6 @@ typedef struct _MailFolderCacheClass MailFolderCacheClass; typedef struct _MailFolderCachePrivate MailFolderCachePrivate; /** - * NoteDoneFunc: - * - * The signature of a function to be registered as a callback for - * mail_folder_cache_note_store() - */ -typedef gboolean (*NoteDoneFunc) (MailFolderCache *cache, - CamelStore *store, - CamelFolderInfo *info, - gpointer data); - -/** * MailFolderCache: * * Contains only private data that should be read and manipulated using the @@ -113,8 +102,13 @@ GMainContext * mail_folder_cache_ref_main_context void mail_folder_cache_note_store (MailFolderCache *cache, CamelStore *store, GCancellable *cancellable, - NoteDoneFunc done, - gpointer data); + GAsyncReadyCallback callback, + gpointer user_data); +gboolean mail_folder_cache_note_store_finish + (MailFolderCache *cache, + GAsyncResult *result, + CamelFolderInfo **out_info, + GError **error); void mail_folder_cache_note_folder (MailFolderCache *cache, CamelFolder *folder); gboolean mail_folder_cache_has_folder_info |