axis2_svc_client_ops Struct Reference
[service client]

#include <axis2_svc_client.h>

List of all members.

Public Attributes

axis2_svc_t *(* get_svc )(const axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_status_t(* set_options )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_options_t *options)
const axis2_options_t *(* get_options )(const axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_status_t(* set_override_options )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_options_t *override_options)
const axis2_options_t *(* get_override_options )(const axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_status_t(* engage_module )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_char_t *module_name)
axis2_status_t(* disengage_module )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_char_t *module_name)
axis2_status_t(* add_header )(axis2_svc_client_t *svc_client, const axis2_env_t *env, axiom_node_t *header)
axis2_status_t(* remove_all_headers )(axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_status_t(* send_robust )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_qname_t *op_qname, const axiom_node_t *payload)
void(* fire_and_forget )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_qname_t *op_qname, const axiom_node_t *payload)
axiom_node_t *(* send_receive )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_qname_t *op_qname, const axiom_node_t *payload)
void(* send_receive_non_blocking )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_qname_t *op_qname, const axiom_node_t *payload, axis2_callback_t *callback)
axis2_op_client_t *(* create_op_client )(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_qname_t *op_qname)
axis2_status_t(* finalize_invoke )(axis2_svc_client_t *svc_client, const axis2_env_t *env)
const axis2_endpoint_ref_t *(* get_own_endpoint_ref )(const axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_char_t *transport)
const axis2_endpoint_ref_t *(* get_target_endpoint_ref )(const axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_status_t(* set_target_endpoint_ref )(axis2_svc_client_t *svc_client, const axis2_env_t *env, axis2_endpoint_ref_t *target_epr)
axis2_svc_ctx_t *(* get_svc_ctx )(const axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_status_t(* free_fn )(axis2_svc_client_t *svc_client, const axis2_env_t *env)
axis2_op_client_t *(* get_op_client )(const axis2_svc_client_t *svc_client, const axis2_env_t *env)


Detailed Description

service client ops struct. Encapsulator struct for operations of axis2_svc_client.


Member Data Documentation

axis2_status_t( * axis2_svc_client_ops::add_header)(axis2_svc_client_t *svc_client, const axis2_env_t *env, axiom_node_t *header)

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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
header om node representing the SOAP header in XML
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_op_client_t*( * axis2_svc_client_ops::create_op_client)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_qname_t *op_qname)

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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
op_qname axis2_qname_t of the operation
Returns:
pointer to newly created op_client configured for the given operation

axis2_status_t( * axis2_svc_client_ops::disengage_module)(axis2_svc_client_t *svc_client, const axis2_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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
module_name name of the module to be dis-engaged
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_status_t( * axis2_svc_client_ops::engage_module)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_char_t *module_name)

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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
module_name name of the module to be engaged
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_status_t( * axis2_svc_client_ops::finalize_invoke)(axis2_svc_client_t *svc_client, const axis2_env_t *env)

Cleans up service client invocation. This will close the output stream and/or remove entry from waiting queue of the transport listener queue.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

void( * axis2_svc_client_ops::fire_and_forget)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
op_qname operation qname. NULL is equivalent to an operation name of "__OPERATION_OUT_ONLY__"
payload pointer to OM node representing the XML payload to be sent

axis2_status_t( * axis2_svc_client_ops::free_fn)(axis2_svc_client_t *svc_client, const axis2_env_t *env)

Frees the service client.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_op_client_t*( * axis2_svc_client_ops::get_op_client)(const axis2_svc_client_t *svc_client, const axis2_env_t *env)

Gets the operation client

Parameters:
svc_client pointer to service_client struct
env env pointer to environemt struct
Returns:
pointer to service context struct. service client owns the returned pointer

const axis2_options_t*( * axis2_svc_client_ops::get_options)(const axis2_svc_client_t *svc_client, const axis2_env_t *env)

Gets options used by service client.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
a pointer to the options struct if options set, else NULL. Returns a reference, not a cloned copy.

const axis2_options_t*( * axis2_svc_client_ops::get_override_options)(const axis2_svc_client_t *svc_client, const axis2_env_t *env)

Gets the overriding options.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
pointer to overriding options struct if options set, else NULL. Returns a reference, not a cloned copy.

const axis2_endpoint_ref_t*( * axis2_svc_client_ops::get_own_endpoint_ref)(const axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_char_t *transport)

Gets the service client's own endpoint_ref, that is the endpoint the client will be sending from.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
transport name of the transport, e.g "http"
Returns:
pointer to the endpoint_ref struct. Returns a reference, not a cloned copy.

axis2_svc_t*( * axis2_svc_client_ops::get_svc)(const axis2_svc_client_t *svc_client, const axis2_env_t *env)

Returns the axis2_svc_t this is a client for. This is primarily useful when the service is created anonymously or from WSDL.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
a pointer to axis service struct, or NULL if no service is associated. Returns a reference, not a cloned copy.

axis2_svc_ctx_t*( * axis2_svc_client_ops::get_svc_ctx)(const axis2_svc_client_t *svc_client, const axis2_env_t *env)

Gets the service context.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
pointer to service context struct. service client owns the returned pointer.

const axis2_endpoint_ref_t*( * axis2_svc_client_ops::get_target_endpoint_ref)(const axis2_svc_client_t *svc_client, const axis2_env_t *env)

Gets the target endpoint ref.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
pointer to the endpoint_ref struct. Returns a reference, not a cloned copy.

axis2_status_t( * axis2_svc_client_ops::remove_all_headers)(axis2_svc_client_t *svc_client, const axis2_env_t *env)

Removes all the headers added to service client.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axiom_node_t*( * axis2_svc_client_ops::send_receive)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
op_qname operation qname. NULL is equivalent to an operation name of "__OPERATION_OUT_IN__"
payload pointer to OM node representing the XML payload to be sent
Returns:
pointer to OM node representing the XML response. The caller owns the returned node.

void( * axis2_svc_client_ops::send_receive_non_blocking)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
op_qname operation qname. NULL is equivalent to an operation name of "__OPERATION_OUT_IN__"
payload pointer to OM node representing the XML payload to be sent pointer to callback struct used to capture response

axis2_status_t( * axis2_svc_client_ops::send_robust)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_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.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
op_qname operation qname. NULL is equivalent to an operation name of "__OPERATION_ROBUST_OUT_ONLY__"
payload pointer to OM node representing the XML payload to be sent
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_status_t( * axis2_svc_client_ops::set_options)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_options_t *options)

Sets the options to be used by service client.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
options pointer to options struct to be set
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_status_t( * axis2_svc_client_ops::set_override_options)(axis2_svc_client_t *svc_client, const axis2_env_t *env, const axis2_options_t *override_options)

Sets the overriding options. The overriding client options related to this service interaction override any options that the underlying operation client may have.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
options pointer to options struct to be set
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_status_t( * axis2_svc_client_ops::set_target_endpoint_ref)(axis2_svc_client_t *svc_client, const axis2_env_t *env, axis2_endpoint_ref_t *target_epr)

Sets the target endpoint ref.

Parameters:
svc_client pointer to service client struct
env pointer to environment struct
target_epr pointer to the endpoint_ref struct to be set as target. service client takes over the ownership of the struct.
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE


The documentation for this struct was generated from the following file:
Generated on Tue Oct 3 18:21:20 2006 for Axis2/C by  doxygen 1.4.7