aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/imap/camel-imap-search.h
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2002-01-14 17:35:52 +0800
committerMichael Zucci <zucchi@src.gnome.org>2002-01-14 17:35:52 +0800
commit345d090ac854ad26d2a19827d56f3d48382a1256 (patch)
tree43aed744bd98d91bfb0586e129094e4b1f263a0b /camel/providers/imap/camel-imap-search.h
parent7ace2ffaad1c6be679d29d5240512ceff35ea4a1 (diff)
downloadgsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.tar
gsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.tar.gz
gsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.tar.bz2
gsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.tar.lz
gsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.tar.xz
gsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.tar.zst
gsoc2013-evolution-345d090ac854ad26d2a19827d56f3d48382a1256.zip
Rewritten to use a cache for body searches when online. Will need some
2002-01-14 Not Zed <NotZed@Ximian.com> * providers/imap/camel-imap-search.c (imap_body_contains): Rewritten to use a cache for body searches when online. Will need some heavy testing but so far seems to be beneficial. * providers/imap/camel-imap-folder.c (imap_search_by_expression, search_by_uids): dont initialise search object here. (camel_imap_folder_new): Setup search object here with pointer to cache dir. 2001-12-01 Not Zed <NotZed@Ximian.com> * camel-store-summary.[ch]: New class to store a store's folder list in. Not yet completed. svn path=/trunk/; revision=15314
Diffstat (limited to 'camel/providers/imap/camel-imap-search.h')
-rw-r--r--camel/providers/imap/camel-imap-search.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/camel/providers/imap/camel-imap-search.h b/camel/providers/imap/camel-imap-search.h
index 44335f0e82..9d1694c2c9 100644
--- a/camel/providers/imap/camel-imap-search.h
+++ b/camel/providers/imap/camel-imap-search.h
@@ -27,6 +27,8 @@
#define _CAMEL_IMAP_SEARCH_H
#include <camel/camel-folder-search.h>
+#include <e-util/e-msgport.h>
+#include <camel/camel-data-cache.h>
#define CAMEL_IMAP_SEARCH_TYPE (camel_imap_search_get_type ())
#define CAMEL_IMAP_SEARCH(obj) CAMEL_CHECK_CAST (obj, camel_imap_search_get_type (), CamelImapSearch)
@@ -38,6 +40,15 @@ typedef struct _CamelImapSearchClass CamelImapSearchClass;
struct _CamelImapSearch {
CamelFolderSearch parent;
+ guint32 lastuid; /* current 'last uid' for the folder */
+ guint32 validity; /* validity of the current folder */
+
+ CamelDataCache *cache; /* disk-cache for searches */
+
+ /* cache of body search matches */
+ unsigned int matches_count;
+ EDList matches;
+ GHashTable *matches_hash;
};
struct _CamelImapSearchClass {
@@ -46,6 +57,6 @@ struct _CamelImapSearchClass {
};
guint camel_imap_search_get_type (void);
-CamelFolderSearch *camel_imap_search_new (void);
+CamelFolderSearch *camel_imap_search_new (const char *cachedir);
#endif /* ! _CAMEL_IMAP_SEARCH_H */