You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by da...@apache.org on 2009/10/05 07:28:08 UTC

svn commit: r821688 - in /webservices/axis2/trunk/c: include/axis2_svc_client.h src/core/clientapi/svc_client.c

Author: damitha
Date: Mon Oct  5 05:28:07 2009
New Revision: 821688

URL: http://svn.apache.org/viewvc?rev=821688&view=rev
Log:
Adding service client close functionality

Modified:
    webservices/axis2/trunk/c/include/axis2_svc_client.h
    webservices/axis2/trunk/c/src/core/clientapi/svc_client.c

Modified: webservices/axis2/trunk/c/include/axis2_svc_client.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/include/axis2_svc_client.h?rev=821688&r1=821687&r2=821688&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_svc_client.h (original)
+++ webservices/axis2/trunk/c/include/axis2_svc_client.h Mon Oct  5 05:28:07 2009
@@ -623,6 +623,17 @@
         axis2_svc_client_t * svc_client,
         const axutil_env_t * env);
 
+    /**
+     * Close the service client. 
+     * @param svc_client pointer to service_client struct
+     * @param env pointer to environment struct
+     * @return AXIS2_FAILURE if there was a fault, else AXIS2_SUCCESS
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_svc_client_close(
+        axis2_svc_client_t * svc_client,
+        const axutil_env_t * env);
+
     /** @} */
 #ifdef __cplusplus
 }

Modified: webservices/axis2/trunk/c/src/core/clientapi/svc_client.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/src/core/clientapi/svc_client.c?rev=821688&r1=821687&r2=821688&view=diff
==============================================================================
--- webservices/axis2/trunk/c/src/core/clientapi/svc_client.c (original)
+++ webservices/axis2/trunk/c/src/core/clientapi/svc_client.c Mon Oct  5 05:28:07 2009
@@ -1592,3 +1592,18 @@
     }
 }
 
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+axis2_svc_client_close(
+    axis2_svc_client_t * svc_client,
+    const axutil_env_t * env)
+{
+    axis2_status_t status = AXIS2_FAILURE;
+    axutil_property_t *property = NULL;
+
+    property = axutil_property_create_with_args(env, 0, 0, 0, AXIS2_VALUE_TRUE);
+    axis2_options_set_property(svc_client->options, env, AXIS2_SVC_CLIENT_CLOSED, property);
+    status = axis2_svc_client_send_robust(svc_client, env, NULL);
+
+    return status;
+}
+