configuration context
[Context Hierarchy]


Files

file  axis2_conf_ctx.h

Typedefs

typedef struct
axis2_conf_ctx 
axis2_conf_ctx_t

Functions

AXIS2_EXTERN
axis2_conf_ctx_t
axis2_conf_ctx_create (const axutil_env_t *env, struct axis2_conf *conf)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_set_conf (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, struct axis2_conf *conf)
AXIS2_EXTERN
axis2_ctx_t
axis2_conf_ctx_get_base (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axis2_conf_t
axis2_conf_ctx_get_conf (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axutil_hash_t
axis2_conf_ctx_get_op_ctx_map (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axutil_hash_t
axis2_conf_ctx_get_svc_ctx_map (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axutil_hash_t
axis2_conf_ctx_get_svc_grp_ctx_map (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_register_op_ctx (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *message_id, axis2_op_ctx_t *op_ctx)
AXIS2_EXTERN
axis2_op_ctx_t
axis2_conf_ctx_get_op_ctx (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *message_id)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_register_svc_ctx (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *svc_id, axis2_svc_ctx_t *svc_ctx)
AXIS2_EXTERN struct
axis2_svc_ctx * 
axis2_conf_ctx_get_svc_ctx (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *svc_id)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_register_svc_grp_ctx (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *svc_grp_id, axis2_svc_grp_ctx_t *svc_grp_ctx)
AXIS2_EXTERN
axis2_svc_grp_ctx_t
axis2_conf_ctx_get_svc_grp_ctx (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *svc_grp_id)
AXIS2_EXTERN const
axis2_char_t * 
axis2_conf_ctx_get_root_dir (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_set_root_dir (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *path)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_init (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, axis2_conf_t *conf)
AXIS2_EXTERN void axis2_conf_ctx_free (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env)
AXIS2_EXTERN
axis2_svc_grp_ctx_t
axis2_conf_ctx_fill_ctxs (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, axis2_msg_ctx_t *msg_ctx)
AXIS2_EXTERN
axis2_status_t 
axis2_conf_ctx_set_property (axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *key, axutil_property_t *value)
AXIS2_EXTERN
axutil_property_t * 
axis2_conf_ctx_get_property (const axis2_conf_ctx_t *conf_ctx, const axutil_env_t *env, const axis2_char_t *key)

Detailed Description

configuration context is the holder for all the state information related to configuration. It holds all the service group context, service context and operation context that exists within an engine instance. An engine instance has only one configuration context associated with it (Singleton pattern).

Typedef Documentation

typedef struct axis2_conf_ctx axis2_conf_ctx_t

Type name for struct axis2_conf_ctx


Function Documentation

AXIS2_EXTERN axis2_conf_ctx_t* axis2_conf_ctx_create ( const axutil_env_t env,
struct axis2_conf *  conf 
)

Creates a configuration context struct instance.

Parameters:
env pointer to environment struct
conf pointer to configuration, configuration context assumes ownership of the configuration
Returns:
pointer to newly created configuration context

AXIS2_EXTERN axis2_svc_grp_ctx_t* axis2_conf_ctx_fill_ctxs ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
axis2_msg_ctx_t msg_ctx 
)

This method fills the context hierarchy (service group, service and operation contexts that is) for the service and operation found in the given message context. If the context hierarchy is not already built it will create the contexts and build the context hierarchy.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
msg_ctx pointer to message context with service and operation for which the context hierarchy is to be built set
Returns:
pointer to the service group context, which is the root of the context hierarchy for given service and operation

AXIS2_EXTERN void axis2_conf_ctx_free ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Frees configuration context struct.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_ctx_t* axis2_conf_ctx_get_base ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Gets the base struct, which is of type context

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
pointer to context struct, returns a reference not a cloned copy

AXIS2_EXTERN axis2_conf_t* axis2_conf_ctx_get_conf ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Gets the configuration of the engine.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
pointer to configuration struct, returns a reference not a cloned copy

AXIS2_EXTERN axis2_op_ctx_t* axis2_conf_ctx_get_op_ctx ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  message_id 
)

Gets operation context corresponding to the given message ID.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
message_id message ID related to the operation to be retrieved
Returns:
pointer to operation context related to the given message ID

AXIS2_EXTERN axutil_hash_t* axis2_conf_ctx_get_op_ctx_map ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Gets the hash map of operation context instances.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
pointer to hash map containing all operation contexts

AXIS2_EXTERN axutil_property_t* axis2_conf_ctx_get_property ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  key 
)

Gets the property with the given key.

Parameters:
ctx pointer to context struct
env pointer to environment struct
key key string
Returns:
pointer to property struct corresponding to the given key

AXIS2_EXTERN const axis2_char_t* axis2_conf_ctx_get_root_dir ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Gets the root working directory. It is in this directory that the axis2.xml configuration file is located. The services and modules sub folders too are located in this directory.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
pointer to string containing the root folder name

AXIS2_EXTERN struct axis2_svc_ctx* axis2_conf_ctx_get_svc_ctx ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  svc_id 
) [read]

Gets service context with the given service ID

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
svc_id service ID
Returns:
pointer to service context with the given service ID

AXIS2_EXTERN axutil_hash_t* axis2_conf_ctx_get_svc_ctx_map ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Gets the hash map of service context instances.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
pointer to hash map containing all service contexts

AXIS2_EXTERN axis2_svc_grp_ctx_t* axis2_conf_ctx_get_svc_grp_ctx ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  svc_grp_id 
)

Gets service group with the given service group ID.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
svc_grp_id service group id
Returns:
pointer to service group context with the given ID

AXIS2_EXTERN axutil_hash_t* axis2_conf_ctx_get_svc_grp_ctx_map ( const axis2_conf_ctx_t conf_ctx,
const axutil_env_t env 
)

Gets the hash map of service group context instances.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
Returns:
pointer to hash map containing all service group contexts

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_init ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
axis2_conf_t conf 
)

Initializes the configuration context. Within this function, it would initialize all the service group context, service context and operation context instances stored within configuration context.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
conf pointer to configuration struct
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_register_op_ctx ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  message_id,
axis2_op_ctx_t op_ctx 
)

Registers an operation context with the given message ID.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
message_id message id related to the operation context
op_ctx pointer to operation context, conf context assumes ownership of the operation context
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_register_svc_ctx ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  svc_id,
axis2_svc_ctx_t svc_ctx 
)

Registers a service context with the given service ID.

Parameters:
conf_ctx pointer t configuration context
env pointer to environment struct
svc_id ID of the service to be added
svc_ctx pointer to service context
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_register_svc_grp_ctx ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  svc_grp_id,
axis2_svc_grp_ctx_t svc_grp_ctx 
)

Registers a service group context with the given service group ID.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
svc_grp_id service group id
svc_grp_ctx pointer to service group context
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_set_conf ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
struct axis2_conf *  conf 
)

Sets the configuration associated with the engine instance.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
conf pointer to configuration
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_set_property ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  key,
axutil_property_t *  value 
)

Sets a property with the given key.

Parameters:
ctx pointer to context struct
env pointer to environment struct
key key string to store the property with
value pointer to property to be stored, context assumes the ownership of the property
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_conf_ctx_set_root_dir ( axis2_conf_ctx_t conf_ctx,
const axutil_env_t env,
const axis2_char_t *  path 
)

Sets the root working directory. It is in this directory that the axis2.xml configuration file is located. The services and modules sub folders too are located in this directory.

Parameters:
conf_ctx pointer to configuration context
env pointer to environment struct
path string containing the path of root directory
Returns:
AXIS2_SUCCESS on success, else AXIS2_FAILURE


Generated on Fri Apr 17 11:49:44 2009 for Axis2/C by  doxygen 1.5.3