diff options
author | Dan Winship <danw@helixcode.com> | 2000-04-07 04:10:05 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2000-04-07 04:10:05 +0800 |
commit | f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb (patch) | |
tree | a1bb7f65da6d7b02e755f7b4b088e8b2c20e0458 /camel/camel-folder.c | |
parent | 1a6692a89d5e2ea02e777c010aa410b5ec5a48f3 (diff) | |
download | gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.tar gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.tar.gz gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.tar.bz2 gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.tar.lz gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.tar.xz gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.tar.zst gsoc2013-evolution-f3f2afef4c3c60fa1ba472ef93e8e8516e7027bb.zip |
Reorganize the folder-fetching methods and implement a folder cache so
2000-04-06 Dan Winship <danw@helixcode.com>
* camel-store.[ch]: Reorganize the folder-fetching methods and
implement a folder cache so that multiple requests for the same
folder will yield the same CamelFolder object (as long as it
remains active). Includes some code to remove no-longer-active
folders from the cache, but it doesn't get used since nothing is
ever unref'ed in Camel right now...
* providers/mbox/camel-mbox-store.c:
* providers/pop3/camel-pop3-store.c: update for CamelStore
changes.
* camel-folder.[ch]: Remove the (unused) CamelException argument
from camel_folder_get_name and camel_folder_get_full_name.
(camel_folder_set_name): make this go away since changing a
folder's name after it has been created could result in it
conflicting with a separately-issued folder.
svn path=/trunk/; revision=2314
Diffstat (limited to 'camel/camel-folder.c')
-rw-r--r-- | camel/camel-folder.c | 41 |
1 files changed, 11 insertions, 30 deletions
diff --git a/camel/camel-folder.c b/camel/camel-folder.c index e6ab27b876..dffbb7d011 100644 --- a/camel/camel-folder.c +++ b/camel/camel-folder.c @@ -70,9 +70,8 @@ static void _close_async (CamelFolder *folder, static void _set_name (CamelFolder *folder, const gchar *name, CamelException *ex); -static const gchar *_get_name (CamelFolder *folder, - CamelException *ex); -static const gchar *_get_full_name (CamelFolder *folder, CamelException *ex); +static const gchar *_get_name (CamelFolder *folder); +static const gchar *_get_full_name (CamelFolder *folder); static gboolean _can_hold_folders (CamelFolder *folder); @@ -270,7 +269,7 @@ _init (CamelFolder *folder, CamelStore *parent_store, folder->open_mode = FOLDER_OPEN_UNKNOWN; folder->open_state = FOLDER_CLOSE; folder->separator = separator; - camel_folder_set_name (folder, name, ex); + CF_CLASS (folder)->set_name (folder, name, ex); } @@ -462,8 +461,7 @@ _set_name (CamelFolder *folder, if (folder->parent_folder) { parent_full_name = - camel_folder_get_full_name (folder->parent_folder, ex); - if (camel_exception_get_id (ex)) return; + camel_folder_get_full_name (folder->parent_folder); full_name = g_strdup_printf ("%s%c%s", parent_full_name, folder->separator, name); @@ -479,24 +477,9 @@ _set_name (CamelFolder *folder, } -/** - * camel_folder_set_name:set the (short) name of the folder - * @folder: folder - * @name: new name of the folder - * @ex: exception object - **/ -void -camel_folder_set_name (CamelFolder *folder, const gchar *name, - CamelException *ex) -{ - g_assert (folder != NULL); - CF_CLASS (folder)->set_name (folder, name, ex); -} - - static const gchar * -_get_name (CamelFolder *folder, CamelException *ex) +_get_name (CamelFolder *folder) { return folder->name; } @@ -512,16 +495,16 @@ _get_name (CamelFolder *folder, CamelException *ex) * Return value: name of the folder **/ const gchar * -camel_folder_get_name (CamelFolder *folder, CamelException *ex) +camel_folder_get_name (CamelFolder *folder) { g_assert (folder != NULL); - return CF_CLASS (folder)->get_name (folder, ex); + return CF_CLASS (folder)->get_name (folder); } static const gchar * -_get_full_name (CamelFolder *folder, CamelException *ex) +_get_full_name (CamelFolder *folder) { return folder->full_name; } @@ -535,10 +518,10 @@ _get_full_name (CamelFolder *folder, CamelException *ex) * Return value: full name of the folder **/ const gchar * -camel_folder_get_full_name (CamelFolder *folder, CamelException *ex) +camel_folder_get_full_name (CamelFolder *folder) { g_assert (folder != NULL); - return CF_CLASS (folder)->get_full_name (folder, ex); + return CF_CLASS (folder)->get_full_name (folder); } @@ -648,9 +631,7 @@ _get_subfolder (CamelFolder *folder, g_assert (folder->parent_store != NULL); - current_folder_full_name = camel_folder_get_full_name (folder, ex); - if (camel_exception_get_id (ex)) return NULL; - + current_folder_full_name = camel_folder_get_full_name (folder); full_name = g_strdup_printf ("%s%c%s", current_folder_full_name, folder->separator, folder_name); |