diff options
author | Dan Winship <danw@src.gnome.org> | 2001-05-30 01:08:53 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2001-05-30 01:08:53 +0800 |
commit | 11ea26d0e33405490795a766406d5e065b6b9234 (patch) | |
tree | be249f7528c0a8b17cdd0890d40684f12eeb50e5 /camel/camel-disco-folder.h | |
parent | efabbb93c9f61e583d835d1735834cc5bd0ce63c (diff) | |
download | gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.tar gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.tar.gz gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.tar.bz2 gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.tar.lz gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.tar.xz gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.tar.zst gsoc2013-evolution-11ea26d0e33405490795a766406d5e065b6b9234.zip |
Code for logging and replaying offline operations.
* camel-disco-diary.c: Code for logging and replaying offline
operations.
* camel-disco-store.c (disco_construct): Set disco->status here
(where we can base it on the session's offline status) rather than
at init time.
(disco_connect): If we connect online and have a non-empty diary,
switch to RESYNCING mode and replay the diary to the server.
(disco_get_folder, disco_get_folder_info): Add _resyncing
variants.
* camel-disco-folder.c (disco_sync, disco_expunge_uids,
disco_append_message, disco_copy_messages_to,
disco_move_messages_to): Add _resyncing variants to switches.
(disco_expunge_uids, disco_append_message, disco_copy_messages_to,
disco_move_messages_to): Remove #ifdef'ed out diary code: let the
provider do it.
(disco_append_message): Redo the append methods to no longer
return the UID, since we're no longer doing the logging from here.
svn path=/trunk/; revision=10040
Diffstat (limited to 'camel/camel-disco-folder.h')
-rw-r--r-- | camel/camel-disco-folder.h | 47 |
1 files changed, 29 insertions, 18 deletions
diff --git a/camel/camel-disco-folder.h b/camel/camel-disco-folder.h index cdca5a3b52..7b0186ffc3 100644 --- a/camel/camel-disco-folder.h +++ b/camel/camel-disco-folder.h @@ -45,34 +45,45 @@ struct _CamelDiscoFolder { typedef struct { CamelFolderClass parent_class; - void (*refresh_info_online) (CamelFolder *folder, CamelException *ex); - - void (*sync_online) (CamelFolder *folder, CamelException *ex); - void (*sync_offline) (CamelFolder *folder, CamelException *ex); - - void (*expunge_uids_online) (CamelFolder *folder, GPtrArray *uids, - CamelException *ex); - void (*expunge_uids_offline) (CamelFolder *folder, GPtrArray *uids, - CamelException *ex); - - char * (*append_online) (CamelFolder *folder, - CamelMimeMessage *message, - const CamelMessageInfo *info, - CamelException *ex); - char * (*append_offline) (CamelFolder *folder, - CamelMimeMessage *message, - const CamelMessageInfo *info, - CamelException *ex); + void (*refresh_info_online) (CamelFolder *folder, CamelException *ex); + + void (*sync_online) (CamelFolder *folder, CamelException *ex); + void (*sync_offline) (CamelFolder *folder, CamelException *ex); + void (*sync_resyncing) (CamelFolder *folder, CamelException *ex); + + void (*expunge_uids_online) (CamelFolder *folder, GPtrArray *uids, + CamelException *ex); + void (*expunge_uids_offline) (CamelFolder *folder, GPtrArray *uids, + CamelException *ex); + void (*expunge_uids_resyncing) (CamelFolder *folder, GPtrArray *uids, + CamelException *ex); + + void (*append_online) (CamelFolder *folder, + CamelMimeMessage *message, + const CamelMessageInfo *info, + CamelException *ex); + void (*append_offline) (CamelFolder *folder, + CamelMimeMessage *message, + const CamelMessageInfo *info, + CamelException *ex); + void (*append_resyncing) (CamelFolder *folder, + CamelMimeMessage *message, + const CamelMessageInfo *info, + CamelException *ex); void (*copy_online) (CamelFolder *source, GPtrArray *uids, CamelFolder *destination, CamelException *ex); void (*copy_offline) (CamelFolder *source, GPtrArray *uids, CamelFolder *destination, CamelException *ex); + void (*copy_resyncing) (CamelFolder *source, GPtrArray *uids, + CamelFolder *destination, CamelException *ex); void (*move_online) (CamelFolder *source, GPtrArray *uids, CamelFolder *destination, CamelException *ex); void (*move_offline) (CamelFolder *source, GPtrArray *uids, CamelFolder *destination, CamelException *ex); + void (*move_resyncing) (CamelFolder *source, GPtrArray *uids, + CamelFolder *destination, CamelException *ex); void (*cache_message) (CamelDiscoFolder *disco_folder, const char *uid, CamelException *ex); |