Changeset 1475

Show
Ignore:
Timestamp:
01/26/07 02:16:34
Author:
pvanhoof
Message:

tny_folder_sync

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r1466 r1475  
     12007-01-26  Philip Van Hoof  <pvanhoof@gnome.org> 
     2 
     3        * Renamed tny_folder_expunge to tny_folder_sync, and made it possible 
     4        to sync without expunging 
     5 
     6        * This was a major API change 
     7 
    182007-01-25  Sergio Villar Senin <svillar@igalia.com> 
    29 
  • trunk/bindings/python/tinymail.defs.extra

    r1272 r1475  
    1515  (gtype-id "TNY_TYPE_ERROR") 
    1616  (values 
    17         '("folder_error_expunge" "TNY_FOLDER_ERROR_EXPUNGE") 
     17        '("folder_error_sync" "TNY_FOLDER_ERROR_SYNC") 
    1818        '("folder_error_remove_msg" "TNY_FOLDER_ERROR_REMOVE_MSG") 
    1919        '("folder_error_add_msg" "TNY_FOLDER_ERROR_ADD_MSG") 
  • trunk/libtinymail-camel/tny-camel-folder.c

    r1472 r1475  
    423423 
    424424static void  
    425 tny_camel_folder_expunge (TnyFolder *self, GError **err) 
    426 { 
    427         TNY_CAMEL_FOLDER_GET_CLASS (self)->expunge_func (self, err); 
     425tny_camel_folder_sync (TnyFolder *self, gboolean expunge, GError **err) 
     426{ 
     427        TNY_CAMEL_FOLDER_GET_CLASS (self)->sync_func (self, expunge, err); 
    428428        return; 
    429429} 
    430430 
    431431static void  
    432 tny_camel_folder_expunge_default (TnyFolder *self, GError **err) 
     432tny_camel_folder_sync_default (TnyFolder *self, gboolean expunge, GError **err) 
    433433{ 
    434434        TnyCamelFolderPriv *priv = TNY_CAMEL_FOLDER_GET_PRIVATE (self); 
     
    444444                } 
    445445 
    446         camel_folder_sync (priv->folder, TRUE, &ex); 
     446        camel_folder_sync (priv->folder, expunge, &ex); 
    447447 
    448448        if (camel_exception_is_set (&ex)) 
    449449        { 
    450450                g_set_error (err, TNY_FOLDER_ERROR,  
    451                         TNY_FOLDER_ERROR_EXPUNGE
     451                        TNY_FOLDER_ERROR_SYNC
    452452                        camel_exception_get_description (&ex)); 
    453453        } 
     
    24882488        klass->refresh_func = tny_camel_folder_refresh; 
    24892489        klass->remove_msg_func = tny_camel_folder_remove_msg; 
    2490         klass->expunge_func = tny_camel_folder_expunge
     2490        klass->sync_func = tny_camel_folder_sync
    24912491        klass->add_msg_func = tny_camel_folder_add_msg; 
    24922492        klass->transfer_msgs_func = tny_camel_folder_transfer_msgs; 
     
    25412541        class->remove_msg_func = tny_camel_folder_remove_msg_default; 
    25422542        class->add_msg_func = tny_camel_folder_add_msg_default; 
    2543         class->expunge_func = tny_camel_folder_expunge_default; 
     2543        class->sync_func = tny_camel_folder_sync_default; 
    25442544        class->transfer_msgs_func = tny_camel_folder_transfer_msgs_default; 
    25452545        class->transfer_msgs_async_func = tny_camel_folder_transfer_msgs_async_default; 
  • trunk/libtinymail-camel/tny-camel-folder.h

    r1430 r1475  
    5656        void (*add_msg_func) (TnyFolder *self, TnyMsg *msg, GError **err); 
    5757        void (*remove_msg_func) (TnyFolder *self, TnyHeader *header, GError **err); 
    58         void (*expunge_func) (TnyFolder *self, GError **err); 
     58        void (*sync_func) (TnyFolder *self, gboolean expunge, GError **err); 
    5959        TnyMsgRemoveStrategy* (*get_msg_remove_strategy_func) (TnyFolder *self); 
    6060        void (*set_msg_remove_strategy_func) (TnyFolder *self, TnyMsgRemoveStrategy *st); 
  • trunk/libtinymail-camel/tny-camel-send-queue.c

    r1407 r1475  
    245245                g_object_unref (G_OBJECT (headers)); 
    246246 
    247                 tny_folder_expunge (outbox, NULL); 
     247                tny_folder_sync (outbox, TRUE, NULL); 
    248248 
    249249                g_object_unref (G_OBJECT (outbox)); 
  • trunk/libtinymail-test/tny-folder-test.c

    r1336 r1475  
    234234         
    235235        /* Expunge ...*/ 
    236         tny_folder_expunge (iface, NULL);     
     236        tny_folder_sync (iface, TRUE, NULL);     
    237237        tny_folder_refresh (iface, NULL); 
    238238         
  • trunk/libtinymail/tny-error.c

    r1313 r1475  
    4444  if (etype == 0) { 
    4545    static const GEnumValue values[] = { 
    46       { TNY_FOLDER_ERROR_EXPUNGE, "TNY_FOLDER_ERROR_EXPUNGE", "folder_error_expunge" }, 
     46      { TNY_FOLDER_ERROR_SYNC, "TNY_FOLDER_ERROR_SYNC", "folder_error_sync" }, 
    4747      { TNY_FOLDER_ERROR_REMOVE_MSG, "TNY_FOLDER_ERROR_REMOVE_MSG", "folder_error_remove_msg" }, 
    4848      { TNY_FOLDER_ERROR_ADD_MSG, "TNY_FOLDER_ERROR_ADD_MSG", "folder_error_add_msg" }, 
  • trunk/libtinymail/tny-error.h

    r1313 r1475  
    3838enum _TnyError  
    3939{ 
    40         TNY_FOLDER_ERROR_EXPUNGE
     40        TNY_FOLDER_ERROR_SYNC
    4141        TNY_FOLDER_ERROR_REMOVE_MSG, 
    4242        TNY_FOLDER_ERROR_ADD_MSG, 
  • trunk/libtinymail/tny-folder.c

    r1430 r1475  
    223223 
    224224/** 
    225  * tny_folder_expunge
     225 * tny_folder_sync
    226226 * @self: a #TnyFolder object 
     227 * @expunge: whether or not to also expunge deleted messages 
    227228 * @err: a #GError object or NULL 
    228229 * 
    229230 * Persist changes made to a folder to its backing store, expunging deleted  
    230  * messages (the ones marked with TNY_HEADER_FLAG_DELETED) as well. 
     231 * messages (the ones marked with TNY_HEADER_FLAG_DELETED) as well if @expunge 
     232 * is TRUE. 
    231233 * 
    232234 * Example: 
     
    237239 * tny_list_remove (TNY_LIST (mymodel), G_OBJECT (header)); 
    238240 * g_object_unref (G_OBJECT (header)); 
    239  * tny_folder_expunge (folder); 
     241 * tny_folder_sync (folder, TRUE, NULL); 
    240242 * g_object_unref (G_OBJECT (folder)); 
    241243 * </programlisting></informalexample> 
    242244 **/ 
    243245void  
    244 tny_folder_expunge (TnyFolder *self, GError **err) 
    245 { 
    246 #ifdef DEBUG 
    247         if (!TNY_FOLDER_GET_IFACE (self)->expunge_func) 
    248                 g_critical ("You must implement tny_folder_expunge\n"); 
    249 #endif 
    250         TNY_FOLDER_GET_IFACE (self)->expunge_func (self, err); 
     246tny_folder_sync (TnyFolder *self, gboolean expunge, GError **err) 
     247{ 
     248#ifdef DEBUG 
     249        if (!TNY_FOLDER_GET_IFACE (self)->sync_func) 
     250                g_critical ("You must implement tny_folder_sync\n"); 
     251#endif 
     252        TNY_FOLDER_GET_IFACE (self)->sync_func (self, expunge, err); 
    251253        return; 
    252254} 
  • trunk/libtinymail/tny-folder.h

    r1465 r1475  
    8080        void (*remove_msg_func) (TnyFolder *self, TnyHeader *header, GError **err); 
    8181        void (*add_msg_func) (TnyFolder *self, TnyMsg *msg, GError **err); 
    82         void (*expunge_func) (TnyFolder *self, GError **err); 
     82        void (*sync_func) (TnyFolder *self, gboolean expunge, GError **err); 
    8383        TnyMsgRemoveStrategy* (*get_msg_remove_strategy_func) (TnyFolder *self); 
    8484        void (*set_msg_remove_strategy_func) (TnyFolder *self, TnyMsgRemoveStrategy *st); 
     
    116116void tny_folder_remove_msg (TnyFolder *self, TnyHeader *header, GError **err); 
    117117void tny_folder_add_msg (TnyFolder *self, TnyMsg *msg, GError **err); 
    118 void tny_folder_expunge (TnyFolder *self, GError **err); 
     118void tny_folder_sync (TnyFolder *self, gboolean expunge, GError **err); 
    119119TnyMsg* tny_folder_get_msg (TnyFolder *self, TnyHeader *header, GError **err); 
    120120void tny_folder_get_msg_async (TnyFolder *self, TnyHeader *header, TnyGetMsgCallback callback, gpointer user_data); 
  • trunk/libtinymail/tny-msg-remove-strategy.c

    r1262 r1475  
    3838 * Depending on the implementation it might only marks it as removed (it for  
    3939 * example sets the TNY_HEADER_FLAG_DELETED). In such a case only after 
    40  * performing the tny_folder_expunge method on the folder, it will really be 
     40 * performing the tny_folder_sync method on the folder, it will really be 
    4141 * removed. 
    4242 * 
  • trunk/tinymail/tny-demoui-summary-view.c

    r1449 r1475  
    318318                                        folder = tny_header_get_folder (header); 
    319319                                        tny_folder_remove_msg (folder, header, NULL); 
    320                                         tny_folder_expunge (folder, NULL); 
     320                                        tny_folder_sync (folder, TRUE, NULL); 
    321321                                        g_object_unref (G_OBJECT (folder)); 
    322322                                }