From 61cde96cc5a4d03ede627738044dda735785c4c3 Mon Sep 17 00:00:00 2001 From: David Woodhouse Date: Thu, 22 Jul 2010 15:04:24 +0100 Subject: [PATCH] Base message creation into own function --- ews_syncfolder.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/ews_syncfolder.c b/ews_syncfolder.c index 9e34626..5b7c267 100644 --- a/ews_syncfolder.c +++ b/ews_syncfolder.c @@ -47,6 +47,23 @@ static gchar *get_child_string(xmlNode *node, const gchar *name) return soup_soap_parameter_get_string_value(node); } +static SoupSoapMessage * +soup_ews_message_new(const gchar *url, const gchar *request) +{ + SoupSoapMessage *msg = soup_soap_message_new("POST", url, TRUE, NULL, NULL, NULL); + + soup_message_headers_append (SOUP_MESSAGE(msg)->request_headers, + "User-Agent", "libews/0.1"); + + soup_soap_message_start_envelope(msg); + soup_soap_message_start_body(msg); + soup_soap_message_add_namespace(msg, "types", + "http://schemas.microsoft.com/exchange/services/2006/types"); + soup_soap_message_start_element(msg, "SyncFolderItems", NULL, NULL); + soup_soap_message_set_default_namespace(msg, "http://schemas.microsoft.com/exchange/services/2006/messages"); + return msg; +} + int main(int argc, char **argv) { SoupSession *sess; @@ -95,17 +112,8 @@ int main(int argc, char **argv) soup_session_add_feature(sess, SOUP_SESSION_FEATURE(logger)); } - msg = soup_soap_message_new("POST", url, TRUE, NULL, NULL, NULL); - - soup_message_headers_append (SOUP_MESSAGE(msg)->request_headers, - "User-Agent", "libews/0.1"); + msg = soup_ews_message_new(url, "SyncFolderItems"); - soup_soap_message_start_envelope(msg); - soup_soap_message_start_body(msg); - soup_soap_message_add_namespace(msg, "types", - "http://schemas.microsoft.com/exchange/services/2006/types"); - soup_soap_message_start_element(msg, "SyncFolderItems", NULL, NULL); - soup_soap_message_set_default_namespace(msg, "http://schemas.microsoft.com/exchange/services/2006/messages"); soup_soap_message_start_element(msg, "ItemShape", NULL, NULL); -- 2.49.0