Main Page | Modules | Class List | Directories | File List | Class Members | File Members | Examples

axis2_svc_client.h File Reference

#include <axis2_defines.h>
#include <axis2_env.h>
#include <axis2_svc.h>
#include <axis2_options.h>
#include <axis2_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>

Go to the source code of this file.

Defines

#define AXIS2_ANON_SERVICE   "__ANONYMOUS_SERVICE__"
#define AXIS2_ANON_OUT_ONLY_OP   "__OPERATION_OUT_ONLY__"
#define AXIS2_ANON_ROBUST_OUT_ONLY_OP   "__OPERATION_ROBUST_OUT_ONLY__"
#define AXIS2_ANON_OUT_IN_OP   "__OPERATION_OUT_IN__"
#define AXIS2_SVC_CLIENT_GET_AXIS_SERVICE(svc_client, env)   ((svc_client)->ops->get_svc(svc_client, env))
#define AXIS2_SVC_CLIENT_SET_OPTIONS(svc_client, env, options)   ((svc_client)->ops->set_options(svc_client, env, options))
#define AXIS2_SVC_CLIENT_GET_OPTIONS(svc_client, env)   ((svc_client)->ops->get_options(svc_client, env))
#define AXIS2_SVC_CLIENT_SET_OVERRIDE_OPTIONS(svc_client, env, override_options)   ((svc_client)->ops->set_override_options(svc_client, env, override_options))
#define AXIS2_SVC_CLIENT_GET_OVERRIDE_OPTIONS(svc_client, env)   ((svc_client)->ops->get_override_options(svc_client, env))
#define AXIS2_SVC_CLIENT_ENGAGE_MODULE(svc_client, env, module_name)   ((svc_client)->ops->engage_module(svc_client, env, module_name))
#define AXIS2_SVC_CLIENT_DISENGAGE_MODULE(svc_client, env, module_name)   ((svc_client)->ops->disengage_module(svc_client, env, module_name))
#define AXIS2_SVC_CLIENT_ADD_HEADER(svc_client, env, header)   ((svc_client)->ops->add_header(svc_client, env, header))
#define AXIS2_SVC_CLIENT_REMOVE_ALL_HEADERS(svc_client, env)   ((svc_client)->ops->remove_all_headers(svc_client, env))
#define AXIS2_SVC_CLIENT_SEND_ROBUST(svc_client, env, payload)   ((svc_client)->ops->send_robust(svc_client, env, NULL, payload))
#define AXIS2_SVC_CLIENT_SEND_ROBUST_WITH_OP_QNAME(svc_client, env, op_qname, payload)   ((svc_client)->ops->send_robust(svc_client, env, op_qname, payload))
#define AXIS2_SVC_CLIENT_FIRE_AND_FORGET(svc_client, env, payload)   ((svc_client)->ops->fire_and_forget(svc_client, env, NULL, payload))
#define AXIS2_SVC_CLIENT_FIRE_AND_FORGET_WITH_OP_QNAME(svc_client, env, op_qname, payload)   ((svc_client)->ops->fire_and_forget(svc_client, env, op_qname, payload))
#define AXIS2_SVC_CLIENT_SEND_RECEIVE(svc_client, env, payload)   ((svc_client)->ops->send_receive(svc_client, env, NULL, payload))
#define AXIS2_SVC_CLIENT_SEND_RECEIVE_WITH_OP_QNAME(svc_client, env, op_qname, payload)   ((svc_client)->ops->send_receive(svc_client, env, op_qname, payload))
#define AXIS2_SVC_CLIENT_SEND_RECEIVE_NON_BLOCKING(svc_client, env, payload, callback)   ((svc_client)->ops->send_receive_non_blocking(svc_client, env, NULL, payload, callback))
#define AXIS2_SVC_CLIENT_SEND_RECEIVE_NON_BLOCKING_WITH_OP_QNAME(svc_client, env, op_qname, payload, callback)   ((svc_client)->ops->send_receive_non_blocking(svc_client, env, op_qname, payload, callback))
#define AXIS2_SVC_CLIENT_CREATE_OP_CLIENT(svc_client, env, op_qname)   ((svc_client)->ops->create_op_client(svc_client, env, op_qname))
#define AXIS2_SVC_CLIENT_FINALIZE_INVOKE(svc_client, env)   ((svc_client)->ops->finalize_invoke(svc_client, env))
#define AXIS2_SVC_CLIENT_GET_OWN_ENDPOINT_REF(svc_client, env, transport)   ((svc_client)->ops->get_own_endpoint_ref(svc_client, env, transport))
#define AXIS2_SVC_CLIENT_GET_TARGET_ENDPOINT_REF(svc_client, env)   ((svc_client)->ops->get_target_endpoint_ref(svc_client, env))
#define AXIS2_SVC_CLIENT_SET_TARGET_ENDPOINT_REF(svc_client, env, target_epr)   ((svc_client)->ops->set_target_endpoint_ref(svc_client, env, target_epr))
#define AXIS2_SVC_CLIENT_GET_SVC_CTX(svc_client, env)   ((svc_client)->ops->get_svc_ctx(svc_client, env))
#define AXIS2_SVC_CLIENT_FREE(svc_client, env)   ((svc_client)->ops->free(svc_client, env))

Typedefs

typedef axis2_svc_client_ops axis2_svc_client_ops_t
typedef axis2_svc_client axis2_svc_client_t

Functions

AXIS2_EXTERN axis2_svc_client_taxis2_svc_client_create (const axis2_env_t *env, const axis2_char_t *client_home)
AXIS2_EXTERN axis2_svc_client_taxis2_svc_client_create_with_conf_ctx_and_svc (const axis2_env_t *env, const axis2_char_t *client_home, axis2_conf_ctx_t *conf_ctx, axis2_svc_t *svc)


Detailed Description

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.

Define Documentation

#define AXIS2_ANON_OUT_IN_OP   "__OPERATION_OUT_IN__"
 

out-in MEP operation name

#define AXIS2_ANON_OUT_ONLY_OP   "__OPERATION_OUT_ONLY__"
 

out-only MEP operation name

#define AXIS2_ANON_ROBUST_OUT_ONLY_OP   "__OPERATION_ROBUST_OUT_ONLY__"
 

out-only robust MEP operation name

#define AXIS2_ANON_SERVICE   "__ANONYMOUS_SERVICE__"
 

Name of anonymous service


Generated on Fri Jun 16 18:02:34 2006 for Axis2/C by  doxygen 1.4.2