| |
| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| #ifndef AXIS2_SVC_CLIENT_H |
| #define AXIS2_SVC_CLIENT_H |
| |
| /** |
| * @defgroup axis2_svc_client service client |
| * @ingroup axis2_client_api |
| * The service client interface serves as the primary client |
| * interface for consuming services. You can set the options to be |
| * used by the service client and then invoke an operation on a given |
| * service. There are several ways of invoking a service operation, |
| * which are based on the concept of a message exchange pattern |
| * (MEP). The two basic MEPs supported by service client are out-only |
| * and out-in. Each MEP can be used in either blocking or |
| * non-blocking mode. The operation invocations using the service |
| * client API are based on the XML-in/XML-out principle: both the |
| * payload to be sent to the service and the result from the service |
| * are in XML, represented in AXIOM. |
| * @{ |
| */ |
| |
| /** |
| * @file axis2_svc_client.h |
| */ |
| |
| #include <axis2_defines.h> |
| #include <axutil_env.h> |
| #include <axutil_uri.h> |
| #include <axis2_svc.h> |
| #include <axis2_options.h> |
| #include <axutil_qname.h> |
| #include <axiom_element.h> |
| #include <axis2_callback.h> |
| #include <axis2_endpoint_ref.h> |
| #include <axis2_svc_ctx.h> |
| #include <axis2_conf_ctx.h> |
| #include <axis2_op_client.h> |
| #include <axutil_string.h> |
| #include <neethi_policy.h> |
| |
| #ifdef __cplusplus |
| extern "C" |
| { |
| #endif |
| |
| /** Type name for struct axis2_svc_client */ |
| typedef struct axis2_svc_client axis2_svc_client_t; |
| |
| /** |
| * Returns the axis2_svc_t this is a client for. This is primarily |
| * useful when the service is created anonymously or from WSDL. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return a pointer to axis service struct, or NULL if no service |
| * is associated. Returns a reference, not a cloned copy. |
| */ |
| AXIS2_EXTERN axis2_svc_t *AXIS2_CALL |
| axis2_svc_client_get_svc( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Returns the axis2_conf_ctx_t. This is useful when creating service clients using |
| * the same configuration context as the original service client. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return a pointer to axis configuration context struct, or NULL. |
| * Returns a reference, not a cloned copy. |
| */ |
| AXIS2_EXTERN axis2_conf_ctx_t *AXIS2_CALL |
| axis2_svc_client_get_conf_ctx( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Sets the options to be used by service client. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param options pointer to options struct to be set |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_options( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axis2_options_t * options); |
| |
| /** |
| * Gets options used by service client. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return a pointer to the options struct if options set, else NULL. |
| * Returns a reference, not a cloned copy. |
| */ |
| AXIS2_EXTERN const axis2_options_t *AXIS2_CALL |
| axis2_svc_client_get_options( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Sets the overriding options. The overriding client options related |
| * to this service interaction override any options that the |
| * underlying operation client may have. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param options pointer to options struct to be set |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_override_options( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axis2_options_t * override_options); |
| |
| /** |
| * Gets the overriding options. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return pointer to overriding options struct if options set, else NULL. |
| * Returns a reference, not a cloned copy. |
| */ |
| AXIS2_EXTERN const axis2_options_t *AXIS2_CALL |
| axis2_svc_client_get_override_options( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Engages the named module. The engaged modules extend the message |
| * processing when consuming services. Modules help to apply QoS |
| * norms in messaging. Once a module is engaged to a service client, |
| * the axis2_engine makes sure to invoke the module for all the |
| * interactions between the client and the service. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param module_name name of the module to be engaged |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_engage_module( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axis2_char_t * module_name); |
| |
| /** |
| * Dis-engages the named module. Dis-engaging a module on a service |
| * client ensures that the axis2_engine would not invoke the named |
| * module when sending and receiving messages. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param module_name name of the module to be dis-engaged |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_disengage_module( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axis2_char_t * module_name); |
| |
| /** |
| * Adds an XML element as a header to be sent to the server side. |
| * This allows users to go beyond the usual XML-in/XML-out pattern, |
| * and send custom SOAP headers. Once added, service client owns |
| * the header and will clean up when the service client is freed. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param header om node representing the SOAP header in XML |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_add_header( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| axiom_node_t * header); |
| |
| /** |
| * Removes all the headers added to service client. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_remove_all_headers( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * This method can be used to send an XML message. |
| * This is a simple method to invoke a service operation whose MEP is |
| * Robust Out-Only. If a fault triggers on server side, this method |
| * would report an error back to the caller. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param op_qname operation qname. NULL is equivalent to an |
| * operation name of "__OPERATION_ROBUST_OUT_ONLY__" |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_send_robust_with_op_qname( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axutil_qname_t * op_qname, |
| const axiom_node_t * payload); |
| |
| /** |
| * This method can be used to send an XML message. |
| * This is a simple method to invoke a service operation whose MEP is |
| * Robust Out-Only. If a fault triggers on server side, this method |
| * would report an error back to the caller. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * operation name of "__OPERATION_ROBUST_OUT_ONLY__" |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_send_robust( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axiom_node_t * payload); |
| |
| /** |
| * Sends a message and forget about it. This method is used to interact with |
| * a service operation whose MEP is In-Only. That is, there is no |
| * opportunity to get an error from the service via this method; one may still |
| * get client-side errors, such as host unknown etc. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param op_qname operation qname. NULL is equivalent to an |
| * operation name of "__OPERATION_OUT_ONLY__" |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| */ |
| AXIS2_EXTERN void AXIS2_CALL |
| axis2_svc_client_fire_and_forget_with_op_qname( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axutil_qname_t * op_qname, |
| const axiom_node_t * payload); |
| |
| /** |
| * Sends a message and forget about it. This method is used to interact with |
| * a service operation whose MEP is In-Only. That is, there is no |
| * opportunity to get an error from the service via this method; one may still |
| * get client-side errors, such as host unknown etc. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| */ |
| AXIS2_EXTERN void AXIS2_CALL |
| axis2_svc_client_fire_and_forget( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axiom_node_t * payload); |
| |
| /** |
| * Sends XML request and receives XML response. |
| * This method is used to interact with a service operation whose MEP is In-Out. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param op_qname operation qname. NULL is equivalent to an |
| * operation name of "__OPERATION_OUT_IN__" |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| * @return pointer to OM node representing the XML response. The |
| * caller owns the returned node. |
| */ |
| AXIS2_EXTERN axiom_node_t *AXIS2_CALL |
| axis2_svc_client_send_receive_with_op_qname( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axutil_qname_t * op_qname, |
| const axiom_node_t * payload); |
| |
| /** |
| * Sends XML request and receives XML response. |
| * This method is used to interact with a service operation whose MEP is In-Out. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| * @return pointer to OM node representing the XML response. The |
| * caller owns the returned node. |
| */ |
| AXIS2_EXTERN axiom_node_t *AXIS2_CALL |
| axis2_svc_client_send_receive( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axiom_node_t * payload); |
| |
| /** |
| * Sends XML request and receives XML response, but does not block for response. |
| * This method is used to interact in non-blocking mode with a service |
| * operation whose MEP is In-Out. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param op_qname operation qname. NULL is equivalent to an |
| * operation name of "__OPERATION_OUT_IN__" |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| * @callback pointer to callback struct used to capture response |
| */ |
| AXIS2_EXTERN void AXIS2_CALL |
| axis2_svc_client_send_receive_non_blocking_with_op_qname( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axutil_qname_t * op_qname, |
| const axiom_node_t * payload, |
| axis2_callback_t * callback); |
| |
| /** |
| * Sends XML request and receives XML response, but does not block for response. |
| * This method is used to interact in non-blocking mode with a service |
| * operation whose MEP is In-Out. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param payload pointer to OM node representing the XML payload to be sent. |
| * The caller has control over the payload until the service client frees it. |
| * @callback pointer to callback struct used to capture response |
| */ |
| AXIS2_EXTERN void AXIS2_CALL |
| axis2_svc_client_send_receive_non_blocking( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axiom_node_t * payload, |
| axis2_callback_t * callback); |
| |
| /** |
| * Creates an op_client for a specific operation. This is the way to |
| * create a full functional MEP client which can be used to exchange |
| * messages for this specific operation. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param op_qname axutil_qname_t of the operation |
| * @return pointer to newly created op_client configured for the given operation |
| */ |
| AXIS2_EXTERN axis2_op_client_t *AXIS2_CALL |
| axis2_svc_client_create_op_client( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axutil_qname_t * op_qname); |
| |
| /** |
| * Cleans up service client invocation. This will close the output |
| * stream and/or remove entry from waiting queue of the transport |
| * listener queue. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_finalize_invoke( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the service client's own endpoint_ref, that is the |
| * endpoint the client will be sending from. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param transport name of the transport, e.g "http" |
| * @return pointer to the endpoint_ref struct. Returns a reference, |
| * not a cloned copy. |
| */ |
| AXIS2_EXTERN const axis2_endpoint_ref_t *AXIS2_CALL |
| axis2_svc_client_get_own_endpoint_ref( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| const axis2_char_t * transport); |
| |
| /** |
| * Gets the target endpoint ref. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return pointer to the endpoint_ref struct. Returns a reference, |
| * not a cloned copy. |
| */ |
| AXIS2_EXTERN const axis2_endpoint_ref_t *AXIS2_CALL |
| axis2_svc_client_get_target_endpoint_ref( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Sets the target endpoint ref. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param target_epr pointer to the endpoint_ref struct to be set as |
| * target. service client takes over the ownership of the struct. |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_target_endpoint_ref( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| axis2_endpoint_ref_t * target_epr); |
| |
| /** |
| * Sets the proxy with authentication support. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param proxy_host pointer to the proxy_host settings to be set |
| * @param proxy_port pointer to the proxy_port settings to be set |
| * @param username pointer to the username associated with proxy |
| * which is required for authentication |
| * @param password pointer to the password associated with proxy |
| * which is required for authentication |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_proxy_with_auth( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| axis2_char_t * proxy_host, |
| axis2_char_t * proxy_port, |
| axis2_char_t * username, |
| axis2_char_t * password); |
| |
| /** |
| * Sets the proxy. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @param proxy_host pointer to the proxy_host settings to be set |
| * @param proxy_port pointer to the proxy_port settings to be set |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_proxy( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| axis2_char_t * proxy_host, |
| axis2_char_t * proxy_port); |
| |
| /** |
| * Gets the service context. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return pointer to service context struct. service client owns |
| * the returned pointer. |
| */ |
| AXIS2_EXTERN axis2_svc_ctx_t *AXIS2_CALL |
| axis2_svc_client_get_svc_ctx( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Frees the service client. |
| * @param svc_client pointer to service client struct |
| * @param env pointer to environment struct |
| * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE |
| */ |
| AXIS2_EXTERN void AXIS2_CALL |
| axis2_svc_client_free( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the operation client |
| * @param svc_client pointer to service_client struct |
| * @param env env pointer to environment struct |
| * @return pointer to service context struct. service client owns |
| * the returned pointer |
| */ |
| AXIS2_EXTERN axis2_op_client_t *AXIS2_CALL |
| axis2_svc_client_get_op_client( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Creates a service client struct. |
| * @param env pointer to environment struct |
| * @param client_home name of the directory that contains the Axis2/C repository |
| * @return a pointer to newly created service client struct, |
| * or NULL on error with error code set in environment's error |
| */ |
| AXIS2_EXTERN axis2_svc_client_t *AXIS2_CALL |
| axis2_svc_client_create( |
| const axutil_env_t * env, |
| const axis2_char_t * client_home); |
| |
| /** |
| * Creates a service client struct for a specified service and configuration |
| * context. |
| * @param env pointer to environment struct |
| * @param conf_ctx pointer to configuration context. Newly created client |
| * assumes ownership of the conf_ctx |
| * @param svc pointer to service struct representing the service to be consumed. |
| * Newly created client assumes ownership of the service |
| * @param client_home name of the directory that contains the Axis2/C repository |
| * @return a pointer to newly created service client struct, |
| * or NULL on error with error code set in environment's error |
| */ |
| AXIS2_EXTERN axis2_svc_client_t *AXIS2_CALL |
| axis2_svc_client_create_with_conf_ctx_and_svc( |
| const axutil_env_t * env, |
| const axis2_char_t * client_home, |
| axis2_conf_ctx_t * conf_ctx, |
| axis2_svc_t * svc); |
| |
| /** |
| * Gets the last response SOAP envelope. |
| * @param svc_client pointer to service_client struct |
| * @param env env pointer to environment struct |
| * @return pointer to SOAP envelope that was returned as a result |
| * when send_receieve was called last time |
| */ |
| AXIS2_EXTERN axiom_soap_envelope_t *AXIS2_CALL |
| axis2_svc_client_get_last_response_soap_envelope( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the boolean value indicating if the last response had a SOAP fault. |
| * @param svc_client pointer to service_client struct |
| * @param env env pointer to environment struct |
| * @return AXIS2_TRUE if there was a fault, else AXIS2_FALSE |
| */ |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| axis2_svc_client_get_last_response_has_fault( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the authentication type required. |
| * @param svc_client pointer to service_client struct |
| * @param env env pointer to environment struct |
| * @return AXIS2_TRUE if the operation succeeded, else AXIS2_FALSE |
| */ |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| axis2_svc_client_get_auth_type( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the boolean value indicating whether HTTP Authentication |
| * is required. |
| * @param svc_client pointer to service_client struct |
| * @param env env pointer to environment struct |
| * @return AXIS2_TRUE if Authentication is required, else AXIS2_FALSE |
| */ |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| axis2_svc_client_get_http_auth_required( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the boolean value indicating whether Proxy Authentication |
| * is required. |
| * @param svc_client pointer to service_client struct |
| * @param env env pointer to environment struct |
| * @return AXIS2_TRUE if Authentication is required, else AXIS2_FALSE |
| */ |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| axis2_svc_client_get_proxy_auth_required( |
| const axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Create a policy object and set it to the description hierarchy |
| * @param svc_client pointer to service_client struct |
| * @param env pointer to environment struct |
| * @param root_node pointer to a policy node |
| * @return AXIS2_FAILURE if there was a fault, else AXIS2_SUCCESS |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_policy_from_om( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| axiom_node_t * root_node); |
| |
| /** |
| * Set the given policy object to the description hierarchy |
| * @param svc_client pointer to service_client struct |
| * @param env pointer to environment struct |
| * @param policy neethi_policy_t to a policy struct |
| * @return AXIS2_FAILURE if there was a fault, else AXIS2_SUCCESS |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| axis2_svc_client_set_policy( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env, |
| neethi_policy_t * policy); |
| |
| /** |
| * Gets the HTTP Headers of the last response. |
| * @param svc_client pointer to service_client struct |
| * @param env pointer to environment struct |
| * @return list of HTTP Response Headers |
| */ |
| AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL |
| axis2_svc_client_get_http_headers( |
| axis2_svc_client_t * svc_client, |
| const axutil_env_t * env); |
| |
| /** |
| * Gets the HTTP Status Code of the last response. |
| * @param svc_client pointer to service_client struct |
| * @param env pointer to environment struct |
| * @return HTTP Status Code |
| */ |
| AXIS2_EXTERN int AXIS2_CALL |
| axis2_svc_client_get_http_status_code( |
| 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 |
| } |
| #endif |
| |
| #endif /* AXIS2_SVC_CLIENT_H */ |