[evolution-data-server] Allow reading retrieving messages parallely



commit d966c85b61787f810ff9e46d0055320b18582ad2
Author: Chenthill Palanisamy <pchenthill novell com>
Date:   Tue Mar 2 20:51:26 2010 +0530

    Allow reading retrieving messages parallely

 camel/camel-exception-list.def             |    6 +++++-
 camel/camel-store.h                        |    1 +
 camel/providers/imapx/camel-imapx-server.c |    2 +-
 camel/providers/imapx/camel-imapx-store.c  |    4 +++-
 4 files changed, 10 insertions(+), 3 deletions(-)
---
diff --git a/camel/camel-exception-list.def b/camel/camel-exception-list.def
index 8fe1e26..9d2940f 100644
--- a/camel/camel-exception-list.def
+++ b/camel/camel-exception-list.def
@@ -34,4 +34,8 @@ CAMEL_EXCEPTION_SERVICE_INVALID,
 CAMEL_EXCEPTION_SERVICE_URL_INVALID,
 CAMEL_EXCEPTION_SERVICE_UNAVAILABLE,
 CAMEL_EXCEPTION_SERVICE_CANT_AUTHENTICATE,
-CAMEL_EXCEPTION_SERVICE_NOT_CONNECTED
+CAMEL_EXCEPTION_SERVICE_NOT_CONNECTED,
+
+
+/* CamelOperation */
+CAMEL_EXCEPTION_OPERATION_IN_PROGRESS = 400
diff --git a/camel/camel-store.h b/camel/camel-store.h
index e4a19ee..abf8cfd 100644
--- a/camel/camel-store.h
+++ b/camel/camel-store.h
@@ -116,6 +116,7 @@ typedef struct _CamelRenameInfo {
 #define CAMEL_STORE_VJUNK		(1 << 3)
 #define CAMEL_STORE_PROXY		(1 << 4)
 #define CAMEL_STORE_IS_MIGRATING (1 << 5)
+#define CAMEL_STORE_ASYNC		(1 << 6)
 
 struct _CamelDB;
 
diff --git a/camel/providers/imapx/camel-imapx-server.c b/camel/providers/imapx/camel-imapx-server.c
index 2ac663b..b930a48 100644
--- a/camel/providers/imapx/camel-imapx-server.c
+++ b/camel/providers/imapx/camel-imapx-server.c
@@ -3731,7 +3731,7 @@ imapx_server_get_message (CamelIMAPXServer *is, CamelFolder *folder, const gchar
 	
 	if (imapx_is_job_in_queue (is, folder->full_name, IMAPX_JOB_GET_MESSAGE, uid)) {
 		/* TODO set a right exception */
-		camel_exception_set (ex, 1, "Dowloading message... \n");
+		camel_exception_set (ex, CAMEL_EXCEPTION_OPERATION_IN_PROGRESS, "Downloading message...");
 		QUEUE_UNLOCK (is);
 		return NULL;
 	}
diff --git a/camel/providers/imapx/camel-imapx-store.c b/camel/providers/imapx/camel-imapx-store.c
index 223e550..20b17cf 100644
--- a/camel/providers/imapx/camel-imapx-store.c
+++ b/camel/providers/imapx/camel-imapx-store.c
@@ -883,7 +883,9 @@ camel_imapx_store_class_init(CamelIMAPXStoreClass *klass)
 static void
 camel_imapx_store_init (gpointer object, gpointer klass)
 {
-	/*CamelIMAPXStore *istore = object;*/
+	CamelStore *store = (CamelStore *) object;
+
+	store->flags |= CAMEL_STORE_ASYNC;
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]