diff options
author | Dan Winship <danw@src.gnome.org> | 2000-06-16 06:19:44 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2000-06-16 06:19:44 +0800 |
commit | cd157eecb933748212bf87b41dcf5fa863e75fd5 (patch) | |
tree | 29dc32794de0449c4a7e5fb544150e57ea4183bb /camel/providers/pop3/camel-pop3-folder.c | |
parent | e1de51e60e715983d1063810ac0cbfd80f99cc2c (diff) | |
download | gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.tar gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.tar.gz gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.tar.bz2 gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.tar.lz gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.tar.xz gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.tar.zst gsoc2013-evolution-cd157eecb933748212bf87b41dcf5fa863e75fd5.zip |
Kill. Folders are now always open, and handle "closing" sorts of
* camel-folder.c: (camel_folder_open, camel_folder_is_open,
camel_folder_get_mode): Kill. Folders are now always open, and
handle "closing" sorts of operations at sync or finalize time.
(camel_folder_sync): renamed from camel_folder_close. Syncs state
to the store but doesn't necessarily close/disconnect.
* providers/*/camel-*-folder.c: Merge "open" methods into "init"
methods. Rename close to sync and update appropriately.
* providers/imap/camel-imap-store.c: Remove camel_imap_store_open
and camel_imap_store_close, which should not have been copied from
the POP provider (where the exist to work around limitations of
the POP protocol).
svn path=/trunk/; revision=3581
Diffstat (limited to 'camel/providers/pop3/camel-pop3-folder.c')
-rw-r--r-- | camel/providers/pop3/camel-pop3-folder.c | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/camel/providers/pop3/camel-pop3-folder.c b/camel/providers/pop3/camel-pop3-folder.c index 807a810d06..9a2d982fcd 100644 --- a/camel/providers/pop3/camel-pop3-folder.c +++ b/camel/providers/pop3/camel-pop3-folder.c @@ -38,10 +38,8 @@ static CamelFolderClass *parent_class; static void finalize (GtkObject *object); -static void pop3_open (CamelFolder *folder, CamelFolderOpenMode mode, +static void pop3_sync (CamelFolder *folder, gboolean expunge, CamelException *ex); -static void pop3_close (CamelFolder *folder, gboolean expunge, - CamelException *ex); static gint get_message_count (CamelFolder *folder, CamelException *ex); static GPtrArray *get_uids (CamelFolder *folder, CamelException *ex); @@ -64,8 +62,7 @@ camel_pop3_folder_class_init (CamelPop3FolderClass *camel_pop3_folder_class) parent_class = gtk_type_class (camel_folder_get_type ()); /* virtual method overload */ - camel_folder_class->open = pop3_open; - camel_folder_class->close = pop3_close; + camel_folder_class->sync = pop3_sync; camel_folder_class->get_message_count = get_message_count; camel_folder_class->get_uids = get_uids; @@ -138,20 +135,10 @@ camel_pop3_folder_new (CamelStore *parent, CamelException *ex) } static void -pop3_open (CamelFolder *folder, CamelFolderOpenMode mode, CamelException *ex) +pop3_sync (CamelFolder *folder, gboolean expunge, CamelException *ex) { - camel_pop3_store_open (CAMEL_POP3_STORE (folder->parent_store), ex); - if (camel_exception_get_id (ex) == CAMEL_EXCEPTION_NONE) - parent_class->open (folder, mode, ex); -} - -static void -pop3_close (CamelFolder *folder, gboolean expunge, CamelException *ex) -{ - camel_pop3_store_close (CAMEL_POP3_STORE (folder->parent_store), - expunge, ex); - if (camel_exception_get_id (ex) == CAMEL_EXCEPTION_NONE) - parent_class->close (folder, expunge, ex); + if (expunge) + camel_pop3_store_expunge (CAMEL_POP3_STORE (folder->parent_store), ex); } |