service
[description]


Files

file  axis2_svc.h

Typedefs

typedef axis2_svc axis2_svc_t

Functions

AXIS2_EXTERN void axis2_svc_free (axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_add_op (axis2_svc_t *svc, const axutil_env_t *env, struct axis2_op *op)
AXIS2_EXTERN struct axis2_op * axis2_svc_get_op_with_qname (const axis2_svc_t *svc, const axutil_env_t *env, const axutil_qname_t *op_qname)
AXIS2_EXTERN struct axis2_op * axis2_svc_get_op_with_name (const axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *op_name)
AXIS2_EXTERN axutil_hash_taxis2_svc_get_all_ops (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_parent (axis2_svc_t *svc, const axutil_env_t *env, struct axis2_svc_grp *svc_grp)
AXIS2_EXTERN struct axis2_svc_grp * axis2_svc_get_parent (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_qname (axis2_svc_t *svc, const axutil_env_t *env, const axutil_qname_t *qname)
AXIS2_EXTERN const axutil_qname_t * axis2_svc_get_qname (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_add_param (axis2_svc_t *svc, const axutil_env_t *env, axutil_param_t *param)
AXIS2_EXTERN axutil_param_t * axis2_svc_get_param (const axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *name)
AXIS2_EXTERN axutil_array_list_taxis2_svc_get_all_params (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_bool_t axis2_svc_is_param_locked (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *param_name)
AXIS2_EXTERN axis2_status_t axis2_svc_engage_module (axis2_svc_t *svc, const axutil_env_t *env, struct axis2_module_desc *module_desc, struct axis2_conf *conf)
AXIS2_EXTERN axis2_status_t axis2_svc_disengage_module (axis2_svc_t *svc, const axutil_env_t *env, struct axis2_module_desc *module_desc, struct axis2_conf *conf)
AXIS2_EXTERN axis2_bool_t axis2_svc_is_module_engaged (axis2_svc_t *svc, const axutil_env_t *env, axutil_qname_t *module_qname)
AXIS2_EXTERN axis2_status_t axis2_svc_add_module_ops (axis2_svc_t *svc, const axutil_env_t *env, struct axis2_module_desc *module_desc, struct axis2_conf *axis2_config)
AXIS2_EXTERN axis2_status_t axis2_svc_set_style (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *style)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_style (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN struct axis2_op * axis2_svc_get_op_by_soap_action (const axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *soap_action)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_name (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_name (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *svc_name)
AXIS2_EXTERN axis2_status_t axis2_svc_set_last_update (axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN long axis2_svc_get_last_update (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_svc_desc (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_svc_desc (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *svc_desc)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_svc_wsdl_path (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_svc_wsdl_path (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *wsdl_path)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_file_name (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_file_name (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *file_name)
AXIS2_EXTERN axis2_status_t axis2_svc_add_mapping (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *wsa_action, struct axis2_op *axis2_op)
AXIS2_EXTERN axis2_status_t axis2_svc_add_module_qname (axis2_svc_t *svc, const axutil_env_t *env, const axutil_qname_t *module_qname)
AXIS2_EXTERN axutil_array_list_taxis2_svc_get_all_module_qnames (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_target_ns (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t saxis2_svc_et_target_ns (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *ns)
AXIS2_EXTERN const axis2_char_t * axis2_svc_get_target_ns_prefix (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_target_ns_prefix (axis2_svc_t *svc, const axutil_env_t *env, const axis2_char_t *prefix)
AXIS2_EXTERN axutil_hash_tgaxis2_svc_et_ns_map (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_ns_map (axis2_svc_t *svc, const axutil_env_t *env, axutil_hash_t *ns_map)
AXIS2_EXTERN axutil_param_container_t * axis2_svc_get_param_container (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_flow_container_taxis2_svc_get_flow_container (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_svc_taxis2_svc_create (const axutil_env_t *env)
AXIS2_EXTERN axis2_svc_taxis2_svc_create_with_qname (const axutil_env_t *env, const axutil_qname_t *qname)
AXIS2_EXTERN void * axis2_svc_get_impl_class (const axis2_svc_t *svc, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t axis2_svc_set_impl_class (axis2_svc_t *svc, const axutil_env_t *env, void *impl_class)

Detailed Description

service represents the static structure of a service in a service group. In Axis2 description hierarchy, a service lives inside the service group to which it belongs. services are configured in services.xml files located in the respective service group folders of the services folder in the repository. In services.xml file, services are declared in association with a given service group or at top level as a stand alone service. In cases where a service is configured without an associated service group, a service group with the same name as that of the service would be created by the deployment engine and the service would be associated with that newly created service group. The deployment engine would create service instances to represent those configured services in services.xml files and would associate them with the respective service group in the configuration. service encapsulates data on engaged module information, the XML schema defined in WSDL that is associated with the service and the operations of the service.

Typedef Documentation

typedef struct axis2_svc axis2_svc_t
 

Type name for struct axis2_svc


Function Documentation

AXIS2_EXTERN axis2_status_t axis2_svc_add_mapping axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  wsa_action,
struct axis2_op *  axis2_op
 

Adds WS-Addressing mapping for a given operation. The services.xml configuration file could specify a SOAP action that would map to one of the service operations. This method could be used to register that mapping against operations. WS-Addressing based dispatcher makes use of this mapping to identify the operation to be invoked, given WSA action.

Parameters:
svc pointer to service struct
env pointer to environment struct
wsa_action WSA action string
op pointer to operation that maps to the given WSA action
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_add_module_ops axis2_svc_t svc,
const axutil_env_t env,
struct axis2_module_desc *  module_desc,
struct axis2_conf *  axis2_config
 

Adds operations defined in a module to this service. It is possible to define operations that are associated to a module in a module.xml file. These operations in turn could be invoked in relation to a service. This method allows those module related operation to be added to a service.

Parameters:
svc pointer to service struct
env pointer to environment struct
module_desc pointer to module description containing module related operation information. service does not assume the ownership of module description
conf pointer to configuration, it is configuration that stores the modules
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_add_module_qname axis2_svc_t svc,
const axutil_env_t env,
const axutil_qname_t *  module_qname
 

Adds a module qname to list of module QNames associated with service.

Parameters:
svc pointer to service struct
env pointer to environment struct
module_qname pointer to QName to be added, this method clones the QName
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_add_op axis2_svc_t svc,
const axutil_env_t env,
struct axis2_op *  op
 

Adds operation.

Parameters:
svc pointer to service struct
env pointer to environment struct
op pointer to operation struct, service assumes ownership of operation
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_add_param axis2_svc_t svc,
const axutil_env_t env,
axutil_param_t *  param
 

Adds given parameter to operation.

Parameters:
svc pointer to service struct
env pointer to environment struct
param pointer to parameter, service assumes ownership of parameter
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_svc_t* axis2_svc_create const axutil_env_t env  ) 
 

Creates a service struct instance.

Parameters:
env pointer to environment struct
Returns:
pointer to newly created service

AXIS2_EXTERN axis2_svc_t* axis2_svc_create_with_qname const axutil_env_t env,
const axutil_qname_t *  qname
 

Creates a service struct with given QName.

Parameters:
env pointer to environment struct
qname service QName
Returns:
pointer to newly created service

AXIS2_EXTERN axis2_status_t axis2_svc_disengage_module axis2_svc_t svc,
const axutil_env_t env,
struct axis2_module_desc *  module_desc,
struct axis2_conf *  conf
 

Disengages given module from service.

Parameters:
svc pointer to service struct
env pointer to environment struct
module_desc pointer to module description to be engaged, service does not assume the ownership of module
conf pointer to configuration, it is configuration that holds module information
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_engage_module axis2_svc_t svc,
const axutil_env_t env,
struct axis2_module_desc *  module_desc,
struct axis2_conf *  conf
 

Engages given module to service.

Parameters:
svc pointer to service struct
env pointer to environment struct
module_desc pointer to module description to be engaged, service does not assume the ownership of module
conf pointer to configuration, it is configuration that holds module information
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN void axis2_svc_free axis2_svc_t svc,
const axutil_env_t env
 

Frees service.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
void

AXIS2_EXTERN axutil_array_list_t* axis2_svc_get_all_module_qnames const axis2_svc_t svc,
const axutil_env_t env
 

Gets all module QNames associated with the service as a list.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
pointer to array list containing QNames

AXIS2_EXTERN axutil_hash_t* axis2_svc_get_all_ops const axis2_svc_t svc,
const axutil_env_t env
 

Gets all operations of service.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
pointer to hash map containing all operations of the service

AXIS2_EXTERN axutil_array_list_t* axis2_svc_get_all_params const axis2_svc_t svc,
const axutil_env_t env
 

Gets all parameters stored within service.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
pointer to array list of parameters, returns a reference, not a cloned copy

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_file_name const axis2_svc_t svc,
const axutil_env_t env
 

Gets the name of the file that holds the implementation of the service. service implementation is compiled into shared libraries and is placed in the respective sub folder in the services folder of Axis2 repository.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
file name string

AXIS2_EXTERN long axis2_svc_get_last_update const axis2_svc_t svc,
const axutil_env_t env
 

Gets last update time of the service.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
last updated time in seconds

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_name const axis2_svc_t svc,
const axutil_env_t env
 

Gets service name.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
service name string

AXIS2_EXTERN struct axis2_op* axis2_svc_get_op_by_soap_action const axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  soap_action
 

Gets operation corresponding to given SOAP Action.

Parameters:
svc pointer to service struct
env pointer to environment struct
soap_action SOAP action string
Returns:
pointer to operation corresponding to given SOAP action if one exists, else NULL. Returns a reference, not a cloned copy

AXIS2_EXTERN struct axis2_op* axis2_svc_get_op_with_name const axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  op_name
 

Gets operation corresponding to the name.

Parameters:
svc pointer to service struct
env pointer to environment struct
op_name operation name string
Returns:
pointer to operation corresponding to given name

AXIS2_EXTERN struct axis2_op* axis2_svc_get_op_with_qname const axis2_svc_t svc,
const axutil_env_t env,
const axutil_qname_t *  op_qname
 

Gets operation corresponding to the given QName.

Parameters:
svc pointer to service struct
env pointer to environment struct
op_qname pointer to QName representing operation QName
Returns:
pointer to operation corresponding to given QName

AXIS2_EXTERN axutil_param_t* axis2_svc_get_param const axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  name
 

Gets named parameter.

Parameters:
svc pointer to service struct
env pointer to environment struct
name name string
Returns:
pointer to named parameter if exists, else NULL. Returns a reference, not a cloned copy

AXIS2_EXTERN axutil_param_container_t* axis2_svc_get_param_container const axis2_svc_t svc,
const axutil_env_t env
 

Populates the schema mappings. This method is used in code generation and WSDL generation (WSDL2C and C2WSDL). This method deals with the imported schemas that would be there in the WSDL.

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

AXIS2_EXTERN struct axis2_svc_grp* axis2_svc_get_parent const axis2_svc_t svc,
const axutil_env_t env
 

Gets parent which is of type service group.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
pointer to parent service group

AXIS2_EXTERN const axutil_qname_t* axis2_svc_get_qname const axis2_svc_t svc,
const axutil_env_t env
 

Gets QName.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
pointer to QName

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_style const axis2_svc_t svc,
const axutil_env_t env
 

Gets style. Style can be either RPC or document literal.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
string representing the style of service

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_svc_desc const axis2_svc_t svc,
const axutil_env_t env
 

Get the description of the services, which is in the service.xml, tag

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
services description string

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_svc_wsdl_path const axis2_svc_t svc,
const axutil_env_t env
 

Get the static wsdl file of the services, which is in the service.xml, <wsdl> tag

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
services description string

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_target_ns const axis2_svc_t svc,
const axutil_env_t env
 

Gets target namespace.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
target namespace as a string

AXIS2_EXTERN const axis2_char_t* axis2_svc_get_target_ns_prefix const axis2_svc_t svc,
const axutil_env_t env
 

Gets target namespace prefix.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
target namespace prefix string

AXIS2_EXTERN axis2_bool_t axis2_svc_is_module_engaged axis2_svc_t svc,
const axutil_env_t env,
axutil_qname_t *  module_qname
 

Check whether a given module is engaged to the service.

Parameters:
svc pointer to service struct
env pointer to environment struct
module_qname pointer to module qname to be engaged,
Returns:
AXIS2_TRUE if module is engaged, else AXIS2_FALSE

AXIS2_EXTERN axis2_bool_t axis2_svc_is_param_locked axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  param_name
 

Checks if the named parameter is locked.

Parameters:
svc pointer to service struct
env pointer to environment struct
param_name parameter name
Returns:
AXIS2_TRUE if the named parameter is locked, else AXIS2_FALSE

AXIS2_EXTERN axis2_status_t axis2_svc_set_file_name axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  file_name
 

Sets the name of the file that holds the implementation of the service. service implementation is compiled into shared libraries and is placed in the respective sub folder in the services folder of Axis2 repository.

Parameters:
svc pointer to service struct
env pointer to environment struct
file_name file name string
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_set_last_update axis2_svc_t svc,
const axutil_env_t env
 

Sets current time as last update time of the service.

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

AXIS2_EXTERN axis2_status_t axis2_svc_set_name axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  svc_name
 

Sets service name.

Parameters:
svc pointer to service struct
env pointer to environment struct
svc_name service name string
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_set_ns_map axis2_svc_t svc,
const axutil_env_t env,
axutil_hash_t ns_map
 

Sets the namespace map with all namespaces related to service.

Parameters:
svc pointer to service struct
env pointer to environment struct
ns_map pointer to hash map containing all namespaces
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_set_parent axis2_svc_t svc,
const axutil_env_t env,
struct axis2_svc_grp *  svc_grp
 

Sets parent which is of type service group.

Parameters:
svc pointer to service struct
env pointer to environment struct
svc_grp pointer to parent service group
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_set_qname axis2_svc_t svc,
const axutil_env_t env,
const axutil_qname_t *  qname
 

Sets QName.

Parameters:
svc pointer to service struct
env pointer to environment struct
qname pointer to QName
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_set_style axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  style
 

Sets style. Style can be either RPC or document literal.

Parameters:
svc pointer to service struct
env pointer to environment struct
style style of service as defined in WSDL
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_set_svc_desc axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  svc_desc
 

Set the description of the service which is in service.xml

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

AXIS2_EXTERN axis2_status_t axis2_svc_set_svc_wsdl_path axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  wsdl_path
 

Set the wsdl path of the service which is in service.xml

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

AXIS2_EXTERN axis2_status_t axis2_svc_set_target_ns_prefix axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  prefix
 

Sets target namespace prefix.

Parameters:
svc pointer to service struct
env pointer to environment struct
prefix target namespace prefix string
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axutil_hash_t* gaxis2_svc_et_ns_map const axis2_svc_t svc,
const axutil_env_t env
 

Gets the namespace map with all namespaces related to service.

Parameters:
svc pointer to service struct
env pointer to environment struct
Returns:
pointer to hash map containing all namespaces, returns a reference, not a cloned copy

AXIS2_EXTERN axis2_status_t saxis2_svc_et_target_ns axis2_svc_t svc,
const axutil_env_t env,
const axis2_char_t *  ns
 

Sets target namespace.

Parameters:
svc pointer to service struct
env pointer to environment struct
ns target namespace as a string
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE


Generated on Thu May 3 12:31:03 2007 for Axis2/C by  doxygen 1.4.6