dispatcher
[engine]


Files

file  axis2_disp.h

Classes

struct  axis2_disp_ops
struct  axis2_disp

Defines

#define AXIS2_DISP_NAMESPACE   "http://axis.ws.apache.org"
#define AXIS2_DISP_GET_BASE(disp, env)   ((disp)->ops->get_base(disp, env))
#define AXIS2_DISP_GET_QNAME(disp, env)   ((disp)->ops->get_qname(disp, env))
#define AXIS2_DISP_SET_QNAME(disp, env, name)   ((disp)->ops->set_qname(disp, env, name))
#define AXIS2_DISP_FREE(disp, env)   ((disp)->ops->free(disp, env))
#define AXIS2_DISP_FIND_SVC(msg_ctx, env)   ((msg_ctx)->ops->find_svc(msg_ctx, env))
#define AXIS2_DISP_FIND_OP(msg_ctx, env, svc)   ((msg_ctx)->ops->find_op(msg_ctx, env, svc))

Typedefs

typedef axis2_disp axis2_disp_t
typedef axis2_disp_ops axis2_disp_ops_t

Functions

AXIS2_EXTERN axis2_disp_taxis2_disp_create (const axis2_env_t *env, const axis2_qname_t *qname)
axis2_status_t axis2_disp_invoke (axis2_handler_t *handler, const axis2_env_t *env, axis2_msg_ctx_t *msg_ctx)
axis2_disp_taxis2_addr_disp_create (const axis2_env_t *env)
axis2_disp_taxis2_req_uri_disp_create (const axis2_env_t *env)
axis2_disp_taxiom_soap_body_disp_create (const axis2_env_t *env)
axis2_disp_taxiom_soap_action_disp_create (const axis2_env_t *env)

Detailed Description

dispatcher is responsible for finding the service and operation for a given invocation. A Web service request would contain information that help locate the service and the operation serving the request. This information could be in various formats, and hence the mechanism to find the requested service and operation based on the available information could too vary. Hence there can be various types on dispatches involved in a dispatching phase of the engine, that implements the API given in this header.

Define Documentation

#define AXIS2_DISP_FIND_OP ( msg_ctx,
env,
svc   )     ((msg_ctx)->ops->find_op(msg_ctx, env, svc))

Finds the operation in the give service that the request is targeted to.

See also:
axis2_disp_ops::find_op

#define AXIS2_DISP_FIND_SVC ( msg_ctx,
env   )     ((msg_ctx)->ops->find_svc(msg_ctx, env))

Finds service that should service the request.

See also:
axis2_disp_ops::find_svc

#define AXIS2_DISP_FREE ( disp,
env   )     ((disp)->ops->free(disp, env))

Frees dispatcher.

See also:
axis2_disp_ops::free

#define AXIS2_DISP_GET_BASE ( disp,
env   )     ((disp)->ops->get_base(disp, env))

Gets the base handler.

See also:
axis2_disp_ops::get_base

#define AXIS2_DISP_GET_QNAME ( disp,
env   )     ((disp)->ops->get_qname(disp, env))

Gets QName.

See also:
axis2_disp_ops::get_qname

#define AXIS2_DISP_SET_QNAME ( disp,
env,
name   )     ((disp)->ops->set_qname(disp, env, name))

Sets QName.

See also:
axis2_disp_ops::set_qname


Typedef Documentation

typedef struct axis2_disp_ops axis2_disp_ops_t

Type name for struct axis2_disp_ops

typedef struct axis2_disp axis2_disp_t

Type name for struct axis2_disp


Function Documentation

axis2_disp_t* axiom_soap_action_disp_create ( const axis2_env_t env  ) 

Creates a SOAP action based dispatcher.

Parameters:
env pointer to environment struct
Returns:
pointer to the newly created dispatcher with find_svc and find_op methods implemented based on SOAP action processing

axis2_disp_t* axiom_soap_body_disp_create ( const axis2_env_t env  ) 

Creates a SOAP body based dispatcher.

Parameters:
env pointer to environment struct
Returns:
pointer to the newly created dispatcher with find_svc and find_op methods implemented based on SOAP body processing.

axis2_disp_t* axis2_addr_disp_create ( const axis2_env_t env  ) 

Creates a WS-Addressing based dispatcher.

Parameters:
env pointer to environment struct
Returns:
pointer to the newly created dispatcher with find_svc and find_op methods implemented based on WS-Addressing

AXIS2_EXTERN axis2_disp_t* axis2_disp_create ( const axis2_env_t env,
const axis2_qname_t *  qname 
)

Creates a dispatcher struct instance.

Parameters:
env pointer to environment struct
qname pointer to QName. QName is cloned by create method.
Returns:
pointer to newly created dispatcher

axis2_status_t axis2_disp_invoke ( axis2_handler_t handler,
const axis2_env_t env,
axis2_msg_ctx_t msg_ctx 
)

Invokes the dispatcher.

Parameters:
handler pointer to handler that is the base of the dispatcher to be invoked
env pointer to environment struct
msg_ctx pointer to message context
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

axis2_disp_t* axis2_req_uri_disp_create ( const axis2_env_t env  ) 

Creates a request URI based dispatcher.

Parameters:
env pointer to environment struct
Returns:
pointer to the newly created dispatcher with find_svc and find_op methods implemented based on request URI processing.


Generated on Wed Dec 20 20:35:01 2006 for Axis2/C by  doxygen 1.5.1