[evolution-ews] Add sync versions for get_oal_full_detail and download_oal_file apis.



commit 4d3b76436a1e5687f2c7eada539112c03561cb47
Author: Chenthill Palanisamy <pchenthill novell com>
Date:   Tue Jun 28 15:06:21 2011 +0530

    Add sync versions for get_oal_full_detail and download_oal_file apis.

 src/server/e-ews-connection.c |   67 +++++++++++++++++++++++++++++++++++++++++
 src/server/e-ews-connection.h |   15 +++++++++
 2 files changed, 82 insertions(+), 0 deletions(-)
---
diff --git a/src/server/e-ews-connection.c b/src/server/e-ews-connection.c
index 7724fbf..ef75f7c 100644
--- a/src/server/e-ews-connection.c
+++ b/src/server/e-ews-connection.c
@@ -1501,6 +1501,39 @@ e_ews_connection_get_oal_full_detail_finish	(EEwsConnection *cnc,
 
 }
 
+gboolean	
+e_ews_connection_get_oal_full_detail	(EEwsConnection *cnc,
+					 const gchar *oab_url,
+					 const gchar *oal_id,
+					 EwsOALDetails **oal_det,
+					 GCancellable *cancellable,
+					 GError **error)
+{
+	EwsSyncData *sync_data;
+	gboolean result;
+
+	sync_data = g_new0 (EwsSyncData, 1);
+	sync_data->eflag = e_flag_new ();
+
+	e_ews_connection_get_oal_full_detail_start	
+						(cnc, oab_url, oal_id, 
+						 ews_sync_reply_cb,
+						 cancellable,
+						 (gpointer) sync_data);
+
+	e_flag_wait (sync_data->eflag);
+
+	result = e_ews_connection_get_oal_full_detail_finish 
+						(cnc, sync_data->res,
+						 oal_det, error);
+
+	e_flag_free (sync_data->eflag);
+	g_object_unref (sync_data->res);
+	g_free (sync_data);
+
+	return result;
+}
+
 static void
 oal_download_response_cb (SoupSession *session, SoupMessage *msg, gpointer user_data)
 {
@@ -1651,6 +1684,40 @@ e_ews_connection_download_oal_file_finish	(EEwsConnection *cnc,
 	return TRUE;
 }
 
+gboolean	
+e_ews_connection_download_oal_file	(EEwsConnection *cnc,
+					 const gchar *url,
+					 const gchar *cache_filename,
+					 EwsProgressFn progress_fn,
+					 gpointer progress_data,
+					 GCancellable *cancellable,
+					 GError **error)
+{
+	EwsSyncData *sync_data;
+	gboolean result;
+
+	sync_data = g_new0 (EwsSyncData, 1);
+	sync_data->eflag = e_flag_new ();
+
+	e_ews_connection_download_oal_file_start
+						(cnc, url, cache_filename, 
+						 ews_sync_reply_cb,
+						 progress_fn, progress_data,
+						 cancellable, sync_data);
+
+	e_flag_wait (sync_data->eflag);
+
+	result = e_ews_connection_download_oal_file_finish
+						(cnc, sync_data->res,
+						 error);
+
+	e_flag_free (sync_data->eflag);
+	g_object_unref (sync_data->res);
+	g_free (sync_data);
+
+	return result;
+}
+
 void
 e_ews_connection_set_mailbox	(EEwsConnection *cnc,
 				 const gchar *email)
diff --git a/src/server/e-ews-connection.h b/src/server/e-ews-connection.h
index aa72162..b9a4969 100644
--- a/src/server/e-ews-connection.h
+++ b/src/server/e-ews-connection.h
@@ -580,6 +580,13 @@ gboolean	e_ews_connection_get_oal_full_detail_finish
 						 GAsyncResult *result,
 						 EwsOALDetails **oal_det,
 						 GError **error);
+gboolean	e_ews_connection_get_oal_full_detail 
+						(EEwsConnection *cnc,
+						 const gchar *oab_url,
+						 const gchar *oal_id,
+						 EwsOALDetails **oal_det,
+						 GCancellable *cancellable,
+						 GError **error);
 
 /* Get free-busy status */
 void		e_ews_connection_get_free_busy_start
@@ -616,6 +623,14 @@ gboolean	e_ews_connection_download_oal_file_finish
 						(EEwsConnection *cnc,
 						 GAsyncResult *result,
 						 GError **error);
+gboolean	e_ews_connection_download_oal_file	
+						(EEwsConnection *cnc,
+						 const gchar *url,
+						 const gchar *cache_filename,
+						 EwsProgressFn progress_fn,
+						 gpointer progress_data,
+						 GCancellable *cancellable,
+						 GError **error);
 
 G_END_DECLS
 



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