You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2007/01/22 06:57:42 UTC

svn commit: r498537 [1/3] - in /webservices/axis2/trunk/c: axiom/src/om/ axiom/src/parser/guththila/ include/ modules/core/addr/ modules/core/clientapi/ modules/core/context/ modules/core/deployment/ modules/core/engine/ modules/core/transport/http/ mo...

Author: samisa
Date: Sun Jan 21 21:57:41 2007
New Revision: 498537

URL: http://svn.apache.org/viewvc?view=rev&rev=498537
Log:
Removed ops, fixed logic to remove unwanted logic and make it more efficient. Dopped logic to minimize use of properties. Also introduced a string struct

Modified:
    webservices/axis2/trunk/c/axiom/src/om/om_stax_builder.c
    webservices/axis2/trunk/c/axiom/src/parser/guththila/guththila_xml_reader_wrapper.c
    webservices/axis2/trunk/c/include/axis2_any_content_type.h
    webservices/axis2/trunk/c/include/axis2_conf.h
    webservices/axis2/trunk/c/include/axis2_endpoint_ref.h
    webservices/axis2/trunk/c/include/axis2_msg_ctx.h
    webservices/axis2/trunk/c/include/axis2_msg_info_headers.h
    webservices/axis2/trunk/c/include/axis2_relates_to.h
    webservices/axis2/trunk/c/include/axis2_svc_name.h
    webservices/axis2/trunk/c/modules/core/addr/any_content_type.c
    webservices/axis2/trunk/c/modules/core/addr/endpoint_ref.c
    webservices/axis2/trunk/c/modules/core/addr/msg_info_headers.c
    webservices/axis2/trunk/c/modules/core/addr/relates_to.c
    webservices/axis2/trunk/c/modules/core/addr/svc_name.c
    webservices/axis2/trunk/c/modules/core/clientapi/op_client.c
    webservices/axis2/trunk/c/modules/core/context/msg_ctx.c
    webservices/axis2/trunk/c/modules/core/deployment/conf_builder.c
    webservices/axis2/trunk/c/modules/core/deployment/dep_engine.c
    webservices/axis2/trunk/c/modules/core/engine/conf.c
    webservices/axis2/trunk/c/modules/core/transport/http/http_transport_utils.c
    webservices/axis2/trunk/c/modules/core/transport/http/sender/http_transport_sender.c
    webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c
    webservices/axis2/trunk/c/modules/core/util/core_utils.c
    webservices/axis2/trunk/c/util/include/axis2_string.h
    webservices/axis2/trunk/c/util/src/qname.c
    webservices/axis2/trunk/c/util/src/string.c

Modified: webservices/axis2/trunk/c/axiom/src/om/om_stax_builder.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/om/om_stax_builder.c?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/om/om_stax_builder.c (original)
+++ webservices/axis2/trunk/c/axiom/src/om/om_stax_builder.c Sun Jan 21 21:57:41 2007
@@ -409,8 +409,6 @@
     }
     else if (AXIOM_NODE_IS_COMPLETE(om_builder->lastnode, env))
     {
-        axiom_element_t *om_ele = NULL;
-
         om_ele = axiom_element_create(env,
                 AXIOM_NODE_GET_PARENT(om_builder->lastnode, env),
                 temp_localname, NULL, &element_node);
@@ -427,7 +425,6 @@
     }
     else
     {
-        axiom_element_t *om_ele = NULL;
         om_ele = axiom_element_create(env, om_builder->lastnode,
                 temp_localname, NULL, &element_node);
         if (element_node)

Modified: webservices/axis2/trunk/c/axiom/src/parser/guththila/guththila_xml_reader_wrapper.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/parser/guththila/guththila_xml_reader_wrapper.c?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/parser/guththila/guththila_xml_reader_wrapper.c (original)
+++ webservices/axis2/trunk/c/axiom/src/parser/guththila/guththila_xml_reader_wrapper.c Sun Jan 21 21:57:41 2007
@@ -461,8 +461,8 @@
     int i = -1;
     AXIS2_ENV_CHECK(env, -1);
     i = guththila_next((axis2_env_t*) env, AXIS2_INTF_TO_IMPL(parser)->guththila_parser);
-/*    while (i == GUTHTHILA_CHARACTER && AXIS2_INTF_TO_IMPL(parser)->guththila_parser->is_whitespace)
-      i = guththila_next((axis2_env_t*) env, AXIS2_INTF_TO_IMPL(parser)->guththila_parser);*/
+    while (i == GUTHTHILA_CHARACTER && AXIS2_INTF_TO_IMPL(parser)->guththila_parser->is_whitespace)
+      i = guththila_next((axis2_env_t*) env, AXIS2_INTF_TO_IMPL(parser)->guththila_parser);
     return i == -1 ? -1 : AXIS2_INTF_TO_IMPL(parser)->event_map[i];
 }
 

Modified: webservices/axis2/trunk/c/include/axis2_any_content_type.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/include/axis2_any_content_type.h?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_any_content_type.h (original)
+++ webservices/axis2/trunk/c/include/axis2_any_content_type.h Sun Jan 21 21:57:41 2007
@@ -45,108 +45,78 @@
 
     /** Type name for axis2_any_content_type */
     typedef struct axis2_any_content_type axis2_any_content_type_t;
-    /** Type name for axis2_any_content_type_ops */
-    typedef struct axis2_any_content_type_ops axis2_any_content_type_ops_t;
 
     /**
-     * any_content_type ops struct. 
+     * creates an instance of any content type struct.
+     * @param env pointer to environment struct
+     * @return pointer to the newly created any content type instance
      */
-    struct axis2_any_content_type_ops
-    {
-        /**
-         * Adds given value to content value map with given QName.
-         * @param any_content_type pointer to any content type struct
-         * @param env pointer to environment struct
-         * @param qname pointer to QName to be used as key
-         * @param value value string to be added
-         * @return AXIS2_SUCCESS on success else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                add_value)(
-                    axis2_any_content_type_t *any_content_type,
-                    const axis2_env_t *env,
-                    const axis2_qname_t *qname,
-                    const axis2_char_t *value);
-
-        /**
-         * Gets the value corresponding to the given QName from the content 
-         * value map.
-         * @param any_content_type pointer to any content type struct
-         * @param env pointer to environment struct
-         * @param qname pointer to QName of the corresponding value to be 
-         * retrieved
-         * @return value string if present, else returns NULL
-         */
-        const axis2_char_t *(AXIS2_CALL *
-                get_value)(
-                    const axis2_any_content_type_t *any_content_type,
-                    const axis2_env_t *env,
-                    const axis2_qname_t *qname);
-        /**
-         * Gets the map of all values.
-         * @param any_content_type pointer to any content type struct
-         * @param env pointer to environment struct
-         * @return pointer to hash table containing all values, returns a 
-         * reference, not a cloned copy 
-         */
-        axis2_hash_t *(AXIS2_CALL *
-                get_value_map)(
-                    const axis2_any_content_type_t *any_content_type,
-                    const axis2_env_t *env);
-
-        /**
-         * Frees any content type struct.
-         * @param any_content_type pointer to any content type struct
-         * @param env pointer to environment struct
-         * @return AXIS2_SUCCESS on success else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                free)(
-                    axis2_any_content_type_t *any_content_type,
-                    const axis2_env_t *env);
-
-    };
+    AXIS2_EXTERN axis2_any_content_type_t *AXIS2_CALL
+    axis2_any_content_type_create(const axis2_env_t *env);
 
     /**
-     * axis2 any content type struct.
+     * Adds given value to content value map with given QName.
+     * @param any_content_type pointer to any content type struct
+     * @param env pointer to environment struct
+     * @param qname pointer to QName to be used as key
+     * @param value value string to be added
+     * @return AXIS2_SUCCESS on success else AXIS2_FAILURE
      */
-    struct axis2_any_content_type
-    {
-        /** operations of axis2 any content type struct */
-        axis2_any_content_type_ops_t *ops;
-    };
-
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_any_content_type_add_value(axis2_any_content_type_t *any_content_type,
+        const axis2_env_t *env,
+        const axis2_qname_t *qname,
+        const axis2_char_t *value);
 
     /**
-     * creates an instance of any content type struct.
+     * Gets the value corresponding to the given QName from the content 
+     * value map.
+     * @param any_content_type pointer to any content type struct
      * @param env pointer to environment struct
-     * @return pointer to the newly created any content type instance
+     * @param qname pointer to QName of the corresponding value to be 
+     * retrieved
+     * @return value string if present, else returns NULL
      */
-    AXIS2_EXTERN axis2_any_content_type_t *AXIS2_CALL
-    axis2_any_content_type_create(
+    AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+    axis2_any_content_type_get_value(const axis2_any_content_type_t *any_content_type,
+        const axis2_env_t *env,
+        const axis2_qname_t *qname);
+    /**
+     * Gets the map of all values.
+     * @param any_content_type pointer to any content type struct
+     * @param env pointer to environment struct
+     * @return pointer to hash table containing all values, returns a 
+     * reference, not a cloned copy 
+     */
+    AXIS2_EXTERN axis2_hash_t *AXIS2_CALL
+    axis2_any_content_type_get_value_map(const axis2_any_content_type_t *any_content_type,
         const axis2_env_t *env);
 
+    /**
+     * Frees any content type struct.
+     * @param any_content_type pointer to any content type struct
+     * @param env pointer to environment struct
+     * @return AXIS2_SUCCESS on success else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_any_content_type_free(axis2_any_content_type_t *any_content_type,
+        const axis2_env_t *env);
 
-/** Adds given value with given QName to the value map.
-    @sa axis2_any_content_type_ops#add_value */
+/** Adds given value with given QName to the value map. */
 #define AXIS2_ANY_CONTENT_TYPE_ADD_VALUE(any_content_type, env, qname, value) \
-    ((any_content_type)->ops->add_value(any_content_type, env, qname, value))
+    axis2_any_content_type_add_value(any_content_type, env, qname, value)
 
-/** Gets value corresponding to given QName.
-    @sa axis2_any_content_type_ops#get_value */
+/** Gets value corresponding to given QName. */
 #define AXIS2_ANY_CONTENT_TYPE_GET_VALUE(any_content_type, env, qname) \
-    ((any_content_type)->ops->get_value(any_content_type, env, qname))
+    axis2_any_content_type_get_value(any_content_type, env, qname)
 
-/** Gets the value map.
-    @sa axis2_any_content_type_ops#get_value_map */
+/** Gets the value map. */
 #define AXIS2_ANY_CONTENT_TYPE_GET_VALUE_MAP(any_content_type, env) \
-    ((any_content_type)->ops->get_value_map(any_content_type, env))
+    axis2_any_content_type_get_value_map(any_content_type, env)
 
-/** Frees any content type struct.
-    @sa axis2_any_content_type_ops#free */
+/** Frees any content type struct. */
 #define AXIS2_ANY_CONTENT_TYPE_FREE(any_content_type, env) \
-    ((any_content_type)->ops->free(any_content_type, env))
-
+    axis2_any_content_type_free(any_content_type, env)
 
 /** @} */
 
@@ -155,3 +125,4 @@
 #endif
 
 #endif    /* AXIS2_ANY_CONTENT_TYPE_H */
+

Modified: webservices/axis2/trunk/c/include/axis2_conf.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/include/axis2_conf.h?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_conf.h (original)
+++ webservices/axis2/trunk/c/include/axis2_conf.h Sun Jan 21 21:57:41 2007
@@ -714,6 +714,17 @@
     axis2_conf_create(
         const axis2_env_t *env);
 
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    axis2_conf_get_enable_mtom(
+        axis2_conf_t *conf,
+        const axis2_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_conf_set_enable_mtom(
+        axis2_conf_t *conf,
+        const axis2_env_t *env,
+        axis2_bool_t enable_mtom);
+
 
 /** Frees the conf.
     @sa axis2_conf_ops#free */

Modified: webservices/axis2/trunk/c/include/axis2_endpoint_ref.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/include/axis2_endpoint_ref.h?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_endpoint_ref.h (original)
+++ webservices/axis2/trunk/c/include/axis2_endpoint_ref.h Sun Jan 21 21:57:41 2007
@@ -49,264 +49,6 @@
 
     /** Type name for struct axis2_endpoint_ref */
     typedef struct axis2_endpoint_ref axis2_endpoint_ref_t;
-    /** Type name for struct axis2_endpoint_ref_ops */
-    typedef struct axis2_endpoint_ref_ops axis2_endpoint_ref_ops_t;
-
-
-    /**
-     * endpoint reference ops struct.
-     * Encapsulator struct for operations of axis2_endpoint_ref.
-     */
-    struct axis2_endpoint_ref_ops
-    {
-        /**
-         * Gets endpoint address. Address URI identifies the endpoint. 
-         * This may be a network address or a logical address.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return endpoint address string
-         */
-        const axis2_char_t *(AXIS2_CALL *
-                get_address)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets endpoint address. Address URI identifies the endpoint. 
-         * This may be a network address or a logical address.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param address address string
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_address)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    const axis2_char_t *address);
-
-        /**
-         * Gets interface QName. QName represents the primary portType of 
-         * the endpoint being conveyed.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to interface QName, returns a reference, not a cloned
-         * copy
-         */
-        const axis2_qname_t *(AXIS2_CALL *
-                get_interface_qname)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets interface QName. QName represents the primary portType of 
-         * the endpoint being conveyed.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param interface_name pointer to interface QName, this method creates
-         * a clone of the QName
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_interface_qname)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    const axis2_qname_t *interface_qname);
-
-        /**
-         * Gets reference parameter list. A reference may contain a number 
-         * of individual parameters which are associated with the endpoint 
-         * to facilitate a particular interaction. Reference parameters 
-         * are element information items that are named by QName and are 
-         * required to properly interact with the endpoint. 
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to array list containing all reference parameters,
-         * returns a reference, not a cloned copy 
-         */
-        axis2_array_list_t *(AXIS2_CALL *
-                get_ref_param_list)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Gets the list of metadata. An endpoint can have different associated 
-         * metadata such as WSDL, XML Schema, and WS-Policy policies.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to array list containing metadata, returns a 
-         * reference, not a cloned copy
-         */
-        axis2_array_list_t *(AXIS2_CALL *
-                get_metadata_list)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Gets the list of reference attributes. 
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to array list containing reference attributes, 
-         * returns a reference, not a cloned copy
-         */
-        axis2_array_list_t *(AXIS2_CALL *
-                get_ref_attribute_list)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Gets the list of metadata attributes.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to array list containing metadata attributes, 
-         * returns a reference, not a cloned copy
-         */
-        axis2_array_list_t *(AXIS2_CALL *
-                get_metadata_attribute_list)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Gets the list of extensions. Extensions are a mechanism to allow 
-         * additional elements to be specified in association with the endpoint.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to array list containing extensions, 
-         * returns a reference, not a cloned copy
-         */
-        axis2_array_list_t *(AXIS2_CALL *
-                get_extension_list)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Adds a reference parameter in the form of an AXIOM node. 
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param ref_param_node pointer to AXIOM node representing reference 
-         * parameter, endpoint reference does not assume the ownership of 
-         * the node 
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                add_ref_param)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    axiom_node_t *ref_param_node);
-
-        /**
-         * Adds metadata in the form of an AXIOM node. An endpoint can have 
-         * different associated metadata such as WSDL, XML Schema and 
-         * WS-Policy policies.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param metadata_node AXIOM node representing metadata, 
-         * endpoint reference does not assume the ownership of the node 
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                add_metadata)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    axiom_node_t *metadata_node);
-
-        /**
-         * Adds a reference attribute in the form of an AXIOM attribute.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param attr AXIOM attribute representing reference attribute,
-         * endpoint reference does not assume the ownership of the attribute
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                add_ref_attribute)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    axiom_attribute_t *attr);
-
-        /**
-         * Adds a meta attribute in the form of an AXIOM attribute.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param attr AXIOM attribute representing meta attribute,
-         * endpoint reference does not assume the ownership of the attribute
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                add_metadata_attribute)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    axiom_attribute_t *attr);
-
-        /**
-         * Adds an extension in the form of an AXIOM node.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param extension_node pointer to AXIOM node representing extension,
-         * endpoint reference does not assume the ownership of the node
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                add_extension)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    axiom_node_t *extension_node);
-
-        /**
-         * Gets service name. An endpoint in WS-Addressing has a QName 
-         * identifying the WSDL service element that contains the definition 
-         * of the endpoint being conveyed. The service name provides a link 
-         * to a full description of the service endpoint.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return pointer to service name struct, returns a reference, not 
-         * a cloned copy
-         */
-        axis2_svc_name_t *(AXIS2_CALL *
-                get_svc_name)(
-                    const axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets service name. An endpoint in WS-Addressing has a QName 
-         * identifying the WSDL service element that contains the definition 
-         * of the endpoint being conveyed. The service name provides a link 
-         * to a full description of the service endpoint.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @param svc_name pointer to service name struct, endpoint assumes
-         * ownership of the struct
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_svc_name)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env,
-                    axis2_svc_name_t *svc_name);
-
-
-        /**
-         * Frees endpoint reference struct.
-         * @param endpoint_ref pointer to endpoint reference struct
-         * @param env pointer to environment struct
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                free)(
-                    axis2_endpoint_ref_t *endpoint_ref,
-                    const axis2_env_t *env);
-
-    };
-
-    /**
-     * endpoint reference struct.
-     */
-    struct axis2_endpoint_ref
-    {
-        /** endpoint reference related ops */
-        axis2_endpoint_ref_ops_t *ops;
-    };
-
 
     /**
      * Creates endpoint reference struct.
@@ -315,8 +57,7 @@
      * @return pointer to newly created endpoint reference
      */
     AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
-    axis2_endpoint_ref_create(
-        const axis2_env_t *env,
+    axis2_endpoint_ref_create(const axis2_env_t *env,
         const axis2_char_t *address);
 
     /**
@@ -327,94 +68,295 @@
      * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
      */
     axis2_status_t AXIS2_CALL
-    axis2_endpoint_ref_free_void_arg(
-        void *endpoint_ref,
+    axis2_endpoint_ref_free_void_arg(void *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Gets endpoint address. Address URI identifies the endpoint. 
+     * This may be a network address or a logical address.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return endpoint address string
+     */
+    AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+    axis2_endpoint_ref_get_address(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Sets endpoint address. Address URI identifies the endpoint. 
+     * This may be a network address or a logical address.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param address address string
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_set_address(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        const axis2_char_t *address);
+
+    /**
+     * Gets interface QName. QName represents the primary portType of 
+     * the endpoint being conveyed.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to interface QName, returns a reference, not a cloned
+     * copy
+     */
+    AXIS2_EXTERN const axis2_qname_t *AXIS2_CALL
+    axis2_endpoint_ref_get_interface_qname(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Sets interface QName. QName represents the primary portType of 
+     * the endpoint being conveyed.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param interface_name pointer to interface QName, this method creates
+     * a clone of the QName
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_set_interface_qname(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        const axis2_qname_t *interface_qname);
+
+    /**
+     * Gets reference parameter list. A reference may contain a number 
+     * of individual parameters which are associated with the endpoint 
+     * to facilitate a particular interaction. Reference parameters 
+     * are element information items that are named by QName and are 
+     * required to properly interact with the endpoint. 
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to array list containing all reference parameters,
+     * returns a reference, not a cloned copy 
+     */
+    AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
+    axis2_endpoint_ref_get_ref_param_list(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Gets the list of metadata. An endpoint can have different associated 
+     * metadata such as WSDL, XML Schema, and WS-Policy policies.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to array list containing metadata, returns a 
+     * reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
+    axis2_endpoint_ref_get_metadata_list(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Gets the list of reference attributes. 
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to array list containing reference attributes, 
+     * returns a reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
+    axis2_endpoint_ref_get_ref_attribute_list(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Gets the list of metadata attributes.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to array list containing metadata attributes, 
+     * returns a reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
+    axis2_endpoint_ref_get_metadata_attribute_list(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Gets the list of extensions. Extensions are a mechanism to allow 
+     * additional elements to be specified in association with the endpoint.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to array list containing extensions, 
+     * returns a reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
+    axis2_endpoint_ref_get_extension_list(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Adds a reference parameter in the form of an AXIOM node. 
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param ref_param_node pointer to AXIOM node representing reference 
+     * parameter, endpoint reference does not assume the ownership of 
+     * the node 
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_add_ref_param(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        axiom_node_t *ref_param_node);
+
+    /**
+     * Adds metadata in the form of an AXIOM node. An endpoint can have 
+     * different associated metadata such as WSDL, XML Schema and 
+     * WS-Policy policies.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param metadata_node AXIOM node representing metadata, 
+     * endpoint reference does not assume the ownership of the node 
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_add_metadata(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        axiom_node_t *metadata_node);
+
+    /**
+     * Adds a reference attribute in the form of an AXIOM attribute.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param attr AXIOM attribute representing reference attribute,
+     * endpoint reference does not assume the ownership of the attribute
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_add_ref_attribute(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        axiom_attribute_t *attr);
+
+    /**
+     * Adds a meta attribute in the form of an AXIOM attribute.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param attr AXIOM attribute representing meta attribute,
+     * endpoint reference does not assume the ownership of the attribute
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_add_metadata_attribute(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        axiom_attribute_t *attr);
+
+    /**
+     * Adds an extension in the form of an AXIOM node.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param extension_node pointer to AXIOM node representing extension,
+     * endpoint reference does not assume the ownership of the node
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_add_extension(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        axiom_node_t *extension_node);
+
+    /**
+     * Gets service name. An endpoint in WS-Addressing has a QName 
+     * identifying the WSDL service element that contains the definition 
+     * of the endpoint being conveyed. The service name provides a link 
+     * to a full description of the service endpoint.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return pointer to service name struct, returns a reference, not 
+     * a cloned copy
+     */
+    AXIS2_EXTERN axis2_svc_name_t *AXIS2_CALL
+    axis2_endpoint_ref_get_svc_name(const axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env);
+
+    /**
+     * Sets service name. An endpoint in WS-Addressing has a QName 
+     * identifying the WSDL service element that contains the definition 
+     * of the endpoint being conveyed. The service name provides a link 
+     * to a full description of the service endpoint.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @param svc_name pointer to service name struct, endpoint assumes
+     * ownership of the struct
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_set_svc_name(axis2_endpoint_ref_t *endpoint_ref,
+        const axis2_env_t *env,
+        axis2_svc_name_t *svc_name);
+
+    /**
+     * Frees endpoint reference struct.
+     * @param endpoint_ref pointer to endpoint reference struct
+     * @param env pointer to environment struct
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_endpoint_ref_free(axis2_endpoint_ref_t *endpoint_ref,
         const axis2_env_t *env);
 
-/** Gets address.
-    @sa axis2_endpoint_ref_ops#get_address */
+/** Gets address. */
 #define AXIS2_ENDPOINT_REF_GET_ADDRESS(endpoint_ref, env) \
-      ((endpoint_ref)->ops->get_address(endpoint_ref, env))
+      axis2_endpoint_ref_get_address(endpoint_ref, env)
 
-/** Sets address.
-    @sa axis2_endpoint_ref_ops#set_address */
+/** Sets address. */
 #define AXIS2_ENDPOINT_REF_SET_ADDRESS(endpoint_ref, env, address) \
-      ((endpoint_ref)->ops->set_address(endpoint_ref, env, address))
+      axis2_endpoint_ref_set_address(endpoint_ref, env, address)
 
-/** Gets interface name.
-    @sa axis2_endpoint_ref_ops#get_interface_name */
+/** Gets interface name. */
 #define AXIS2_ENDPOINT_REF_GET_INTERFACE_NAME(endpoint_ref, env) \
-      ((endpoint_ref)->ops->get_interface_qname(endpoint_ref, env))
+      axis2_endpoint_ref_get_interface_qname(endpoint_ref, env)
 
-/** Sets interface name.
-    @sa axis2_endpoint_ref_ops#set_interface_name */
+/** Sets interface name. */
 #define AXIS2_ENDPOINT_REF_SET_INTERFACE_NAME(endpoint_ref, env, interface_qname)\
-      ((endpoint_ref)->ops->set_interface_qname(endpoint_ref, env, interface_qname))
+      axis2_endpoint_ref_set_interface_qname(endpoint_ref, env, interface_qname)
 
-/** Gets service name.
-    @sa axis2_endpoint_ref_ops#get_svc_name */
+/** Gets service name. */
 #define AXIS2_ENDPOINT_REF_GET_SVC_NAME(endpoint_ref, env) \
-      ((endpoint_ref)->ops->get_svc_name(endpoint_ref, env))
+      axis2_endpoint_ref_get_svc_name(endpoint_ref, env)
 
-/** Sets service name.
-    @sa axis2_endpoint_ref_ops#set_svc_name */
+/** Sets service name. */
 #define AXIS2_ENDPOINT_REF_SET_SVC_NAME(endpoint_ref, env, svc_name) \
-      ((endpoint_ref)->ops->set_svc_name(endpoint_ref, env, svc_name))
+      axis2_endpoint_ref_set_svc_name(endpoint_ref, env, svc_name)
 
-/** Gets reference parameter list.
-    @sa axis2_endpoint_ref_ops#get_ref_param_list */
+/** Gets reference parameter list. */
 #define AXIS2_ENDPOINT_REF_GET_REF_PARAM_LIST(endpoint_ref, env) \
-      ((endpoint_ref)->ops->get_ref_param_list(endpoint_ref, env))
+      axis2_endpoint_ref_get_ref_param_list(endpoint_ref, env)
 
-/** Gets metadata list.
-    @sa axis2_endpoint_ref_ops#get_metadata_list */
+/** Gets metadata list. */
 #define AXIS2_ENDPOINT_REF_GET_METADATA_LIST(endpoint_ref, env) \
-      ((endpoint_ref)->ops->get_metadata_list(endpoint_ref, env))
+      axis2_endpoint_ref_get_metadata_list(endpoint_ref, env)
 
-/** Adds reference parameter.
-    @sa axis2_endpoint_ref_ops#add_ref_param */
+/** Adds reference parameter. */
 #define AXIS2_ENDPOINT_REF_ADD_REF_PARAM(endpoint_ref, env, node) \
-      ((endpoint_ref)->ops->add_ref_param(endpoint_ref, env, node))
+      axis2_endpoint_ref_add_ref_param(endpoint_ref, env, node)
 
-/** Adds metadata.
-    @sa axis2_endpoint_ref_ops#add_metadata */
+/** Adds metadata. */
 #define AXIS2_ENDPOINT_REF_ADD_METADATA(endpoint_ref, env, node) \
-      ((endpoint_ref)->ops->add_metadata(endpoint_ref, env, node))
+      axis2_endpoint_ref_add_metadata(endpoint_ref, env, node)
 
-/** Frees endpoint reference.
-    @sa axis2_endpoint_ref_ops#free */
+/** Frees endpoint reference. */
 #define AXIS2_ENDPOINT_REF_FREE(endpoint_ref, env) \
-      ((endpoint_ref)->ops->free(endpoint_ref, env))
+      axis2_endpoint_ref_free(endpoint_ref, env)
 
-/** Gets reference attribute list.
-    @sa axis2_endpoint_ref_ops#get_ref_attribute_list */
+/** Gets reference attribute list. */
 #define AXIS2_ENDPOINT_REF_GET_REF_ATTRIBUTE_LIST(endpoint_ref, env) \
-        ((endpoint_ref)->ops->get_ref_attribute_list(endpoint_ref, env))
+        axis2_endpoint_ref_get_ref_attribute_list(endpoint_ref, env)
 
-/** Gets metadata attribute list.
-    @sa axis2_endpoint_ref_ops#get_metadata_attribute_list */
+/** Gets metadata attribute list. */
 #define AXIS2_ENDPOINT_REF_GET_META_ATTRIBUTE_LIST(endpoint_ref, env) \
-        ((endpoint_ref)->ops->get_metadata_attribute_list(endpoint_ref, env))
+        axis2_endpoint_ref_get_metadata_attribute_list(endpoint_ref, env)
 
-/** Gets reference extension list.
-    @sa axis2_endpoint_ref_ops#get_ref_extension_list */
+/** Gets reference extension list. */
 #define AXIS2_ENDPOINT_REF_GET_REF_EXTENSION_LIST(endpoint_ref, env) \
-        ((endpoint_ref)->ops->get_extension_list(endpoint_ref, env))
+        axis2_endpoint_ref_get_extension_list(endpoint_ref, env)
 
-/** Adds reference attribute.
-    @sa axis2_endpoint_ref_ops#add_ref_attribute */
+/** Adds reference attribute. */
 #define AXIS2_ENDPOINT_REF_ADD_REF_ATTRIBUTE(endpoint_ref, env, attr) \
-        ((endpoint_ref)->ops->add_ref_attribute(endpoint_ref, env, attr))
+        axis2_endpoint_ref_add_ref_attribute(endpoint_ref, env, attr)
 
-/** Adds metadata attribute.
-    @sa axis2_endpoint_ref_ops#add_metadata_attribute */
+/** Adds metadata attribute. */
 #define AXIS2_ENDPOINT_REF_ADD_META_ATTRIBUTE(endpoint_ref, env, attr) \
-        ((endpoint_ref)->ops->add_metadata_attribute(endpoint_ref, env, attr))
+        axis2_endpoint_ref_add_metadata_attribute(endpoint_ref, env, attr)
 
-/** Adds extension.
-    @sa axis2_endpoint_ref_ops#add_extension */
+/** Adds extension. */
 #define AXIS2_ENDPOINT_REF_ADD_EXTENSION(endpoint_ref, env, node) \
-        ((endpoint_ref)->ops->add_extension(endpoint_ref, env, node))
+        axis2_endpoint_ref_add_extension(endpoint_ref, env, node)
 
 
 /** @} */

Modified: webservices/axis2/trunk/c/include/axis2_msg_ctx.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/include/axis2_msg_ctx.h?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_msg_ctx.h (original)
+++ webservices/axis2/trunk/c/include/axis2_msg_ctx.h Sun Jan 21 21:57:41 2007
@@ -960,7 +960,7 @@
      * @return AXIS2_TRUE if MTOM is enabled, else AXIS2_FALSE
      */
     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
-    axis2_msg_ctx_get_doing_mtom(const axis2_msg_ctx_t *msg_ctx,
+    axis2_msg_ctx_get_doing_mtom(axis2_msg_ctx_t *msg_ctx,
         const axis2_env_t *env);
 
     /**
@@ -1370,6 +1370,29 @@
     AXIS2_EXTERN int AXIS2_CALL
     axis2_msg_ctx_get_paused_phase_index(const axis2_msg_ctx_t *msg_ctx,
         const axis2_env_t *env);
+
+    /**
+     * Gets character set encoding to be used.
+     * @param msg_ctx message context
+     * @param env pointer to environment struct
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_string_t* AXIS2_CALL
+    axis2_msg_ctx_get_charset_encoding(axis2_msg_ctx_t *msg_ctx,
+        const axis2_env_t *env);
+
+    /**
+     * Sets character set encoding to be used.
+     * @param msg_ctx message context
+     * @param env pointer to environment struct
+     * @param str pointer to string struct representing encoding
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_ctx_set_charset_encoding(axis2_msg_ctx_t *msg_ctx,
+        const axis2_env_t *env,
+        axis2_string_t *str);
+
 
 /** Gets base context struct. */
 #define AXIS2_MSG_CTX_GET_BASE(msg_ctx, env) \

Modified: webservices/axis2/trunk/c/include/axis2_msg_info_headers.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/include/axis2_msg_info_headers.h?view=diff&rev=498537&r1=498536&r2=498537
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_msg_info_headers.h (original)
+++ webservices/axis2/trunk/c/include/axis2_msg_info_headers.h Sun Jan 21 21:57:41 2007
@@ -56,399 +56,6 @@
 
     /** Type name for struct axis2_msg_info_headers */
     typedef struct axis2_msg_info_headers axis2_msg_info_headers_t;
-    /** Type name for struct axis2_msg_info_headers_ops  */
-    typedef struct axis2_msg_info_headers_ops axis2_msg_info_headers_ops_t;
-
-
-    /**
-     * message information headers ops struct.
-     */
-    struct axis2_msg_info_headers_ops
-    {
-        /**
-         * Gets to endpoint. to endpoint represents the address of the 
-         * intended receiver of this message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return pointer to endpoint reference representing to address, 
-         * returns a reference, not a cloned copy
-         */
-        axis2_endpoint_ref_t *(AXIS2_CALL *
-                get_to)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets to endpoint. to endpoint represents the address of the 
-         * intended receiver of this message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param to pointer to endpoint reference representing to address, 
-         * message information headers assumes ownership of the endpoint
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_to)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    axis2_endpoint_ref_t *to);
-
-        /**
-         * Gets from endpoint. from endpoint represents the address of the 
-         * endpoint where the message originated from.         
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return pointer to endpoint reference representing from address, 
-         * returns a reference, not a cloned copy
-         */
-        axis2_endpoint_ref_t *(AXIS2_CALL *
-                get_from)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets from endpoint. from endpoint represents the address of the 
-         * endpoint where the message originated from.         
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param from pointer to endpoint reference representing from address, 
-         * message information headers assumes ownership of the endpoint
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_from)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    axis2_endpoint_ref_t *from);
-
-        /**
-         * Gets reply to endpoint. reply to endpoint identifies the intended 
-         * receiver for replies to a message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return pointer to endpoint reference representing reply to address, 
-         * returns a reference, not a cloned copy
-         */
-        axis2_endpoint_ref_t *(AXIS2_CALL *
-                get_reply_to)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets reply to endpoint. reply to endpoint identifies the intended 
-         * receiver for replies to a message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param reply_to pointer to endpoint reference representing reply to 
-         * address, message information headers assumes ownership of the endpoint
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_reply_to)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    axis2_endpoint_ref_t *reply_to);
-
-        /**
-         * Sets the bool value indicating whether the reply to endpoint should 
-         * be none. reply to endpoint identifies the intended receiver for 
-         * replies to a message. The URI "http://www.w3.org/2005/08/addressing/none"
-         * in the reply to address indicates that no reply should be sent.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param none AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
-         * is to be used as reply to URI, else AXIS2_FALSE
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_reply_to_none)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env, 
-                    const axis2_bool_t none);
-
-        /**
-         * Gets the bool value indicating whether the reply to endpoint should 
-         * be none. reply to endpoint identifies the intended receiver for 
-         * replies related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/none"
-         * in the reply to address indicates that no reply should be sent.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
-         * is to be used as reply to URI, else AXIS2_FALSE
-         */
-        axis2_bool_t (AXIS2_CALL *
-                get_reply_to_none)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets the bool value indicating whether the reply to endpoint should 
-         * be anonymous. reply to endpoint identifies the intended receiver for 
-         * replies related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/anonymous"
-         * in the reply to address indicates that reply should be sent to 
-         * from address.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param anonymous AXIS2_TRUE if 
-         * http://www.w3.org/2005/08/addressing/anonymous
-         * is to be used as reply to URI, else AXIS2_FALSE
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_reply_to_anonymous)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env, 
-                    const axis2_bool_t anonymous);
-
-        /**
-         * Gets the bool value indicating whether the reply to endpoint should 
-         * be anonymous. reply to endpoint identifies the intended receiver for 
-         * replies related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/anonymous"
-         * in the reply to address indicates that reply should be sent to 
-         * from address.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/anonymous
-         * is to be used as reply to URI, else AXIS2_FALSE
-         */
-        axis2_bool_t (AXIS2_CALL *
-                get_reply_to_anonymous)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Gets fault to endpoint. fault to endpoint identifies the intended 
-         * receiver for faults related to a message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return pointer to endpoint reference representing fault to address, 
-         * returns a reference, not a cloned copy         
-         */
-        axis2_endpoint_ref_t *(AXIS2_CALL *
-                get_fault_to)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets fault to endpoint. fault to endpoint identifies the intended 
-         * receiver for faults related to a message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param fault pointer to endpoint reference representing fault to 
-         * address, message information headers assumes ownership of the endpoint
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_fault_to)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    axis2_endpoint_ref_t *fault_to);
-
-        /**
-         * Sets the bool value indicating whether the fault to endpoint should 
-         * be none. fault to endpoint identifies the intended receiver for 
-         * faults related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/none"
-         * in the fault to address indicates that no fault should be sent back.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param none AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
-         * is to be used as fault to URI, else AXIS2_FALSE
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_fault_to_none)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env, 
-                    const axis2_bool_t none);
-
-        /**
-         * Gets the bool value indicating whether the fault to endpoint should 
-         * be none. fault to endpoint identifies the intended receiver for 
-         * faults related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/none"
-         * in the fault to address indicates that no fault should be sent back.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
-         * is to be used as fault to URI, else AXIS2_FALSE
-         */
-        axis2_bool_t (AXIS2_CALL *
-                get_fault_to_none)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets the bool value indicating whether the fault to endpoint should 
-         * be anonymous. fault to endpoint identifies the intended receiver for 
-         * faults related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/anonymous"
-         * in the fault to address indicates that fault should be sent to 
-         * from address.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param anonymous AXIS2_TRUE if 
-         * http://www.w3.org/2005/08/addressing/anonymous
-         * is to be used as fault to URI, else AXIS2_FALSE
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_fault_to_anonymous)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env, 
-                    const axis2_bool_t anonymous);
-
-        /**
-         * Gets the bool value indicating whether the fault to endpoint should 
-         * be anonymous. fault to endpoint identifies the intended receiver for 
-         * faults related to a message. The URI 
-         * "http://www.w3.org/2005/08/addressing/anonymous"
-         * in the fault to address indicates that fault should be sent to 
-         * from address.         
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/anonymous
-         * is to be used as fault to URI, else AXIS2_FALSE
-         */
-        axis2_bool_t (AXIS2_CALL *
-                get_fault_to_anonymous)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Gets WS-Addressing action. action is an absolute IRI 
-         * (Internationalized Resource Identifier) that uniquely identifies 
-         * the semantics implied by this message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return WS-Addressing action string
-         */
-        const axis2_char_t *(AXIS2_CALL *
-                get_action)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets WS-Addressing action. action is an absolute IRI 
-         * (Internationalized Resource Identifier) that uniquely identifies 
-         * the semantics implied by this message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param action WS-Addressing action string
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_action)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    const axis2_char_t *action);
-
-        /**
-         * Gets message ID. message ID is an absolute IRI that uniquely 
-         * identifies the message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return message ID string. 
-         */
-        const axis2_char_t *(AXIS2_CALL *
-                get_message_id)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets message ID. message ID is an absolute IRI that uniquely 
-         * identifies the message.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param message_id message ID string
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_message_id)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    const axis2_char_t *message_id);
-
-        /**
-         * Gets relates to information. 
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return pointer to relates to struct, returns a reference, not a 
-         * cloned copy
-         * @sa axis2_relates_to
-         */
-        axis2_relates_to_t *(AXIS2_CALL *
-                get_relates_to)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Sets relates to information. 
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param relates_to pointer to relates to struct, message information
-         * headers assumes ownership of struct
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                set_relates_to)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    axis2_relates_to_t *relates_to);
-
-        /**
-         * Gets all reference parameters associated with message information 
-         * headers.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return pointer to array list containing all reference parameters
-         */
-        axis2_array_list_t *(AXIS2_CALL *
-                get_all_ref_params)(
-                    const axis2_msg_info_headers_t *msg_info_headers,
-                    const axis2_env_t *env);
-
-        /**
-         * Adds a reference parameter in the form of an AXIOM node.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @param ref_param pointer to AXIOM node representing reference 
-         * parameter, message information header does not assume ownership of
-         * node
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-
-        axis2_status_t (AXIS2_CALL *
-                add_ref_param)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env,
-                    axiom_node_t *ref_param);
-
-        /**
-         * Frees message information header struct.
-         * @param msg_info_headers pointer to message information headers struct
-         * @param env pointer to environment struct
-         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
-         */
-        axis2_status_t (AXIS2_CALL *
-                free)(
-                    struct axis2_msg_info_headers *msg_info_headers,
-                    const axis2_env_t *env);
-
-    };
-
-    /**
-     * message information headers struct.
-     */
-    struct axis2_msg_info_headers
-    {
-        /** message information headers  related ops */
-        axis2_msg_info_headers_ops_t *ops;
-    };
-
 
     /**
      * Creates message information headers struct.
@@ -463,131 +70,452 @@
         axis2_endpoint_ref_t *to,
         const axis2_char_t *action);
 
+    /**
+     * Gets to endpoint. to endpoint represents the address of the 
+     * intended receiver of this message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return pointer to endpoint reference representing to address, 
+     * returns a reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
+    axis2_msg_info_headers_get_to(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets to endpoint. to endpoint represents the address of the 
+     * intended receiver of this message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param to pointer to endpoint reference representing to address, 
+     * message information headers assumes ownership of the endpoint
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_to(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        axis2_endpoint_ref_t *to);
+
+    /**
+     * Gets from endpoint. from endpoint represents the address of the 
+     * endpoint where the message originated from.         
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return pointer to endpoint reference representing from address, 
+     * returns a reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
+    axis2_msg_info_headers_get_from(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets from endpoint. from endpoint represents the address of the 
+     * endpoint where the message originated from.         
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param from pointer to endpoint reference representing from address, 
+     * message information headers assumes ownership of the endpoint
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_from(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        axis2_endpoint_ref_t *from);
+
+    /**
+     * Gets reply to endpoint. reply to endpoint identifies the intended 
+     * receiver for replies to a message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return pointer to endpoint reference representing reply to address, 
+     * returns a reference, not a cloned copy
+     */
+    AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
+    axis2_msg_info_headers_get_reply_to(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets reply to endpoint. reply to endpoint identifies the intended 
+     * receiver for replies to a message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param reply_to pointer to endpoint reference representing reply to 
+     * address, message information headers assumes ownership of the endpoint
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_reply_to(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        axis2_endpoint_ref_t *reply_to);
+
+    /**
+     * Sets the bool value indicating whether the reply to endpoint should 
+     * be none. reply to endpoint identifies the intended receiver for 
+     * replies to a message. The URI "http://www.w3.org/2005/08/addressing/none"
+     * in the reply to address indicates that no reply should be sent.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param none AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
+     * is to be used as reply to URI, else AXIS2_FALSE
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_reply_to_none(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env, 
+        const axis2_bool_t none);
+
+    /**
+     * Gets the bool value indicating whether the reply to endpoint should 
+     * be none. reply to endpoint identifies the intended receiver for 
+     * replies related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/none"
+     * in the reply to address indicates that no reply should be sent.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
+     * is to be used as reply to URI, else AXIS2_FALSE
+     */
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    axis2_msg_info_headers_get_reply_to_none(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets the bool value indicating whether the reply to endpoint should 
+     * be anonymous. reply to endpoint identifies the intended receiver for 
+     * replies related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/anonymous"
+     * in the reply to address indicates that reply should be sent to 
+     * from address.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param anonymous AXIS2_TRUE if 
+     * http://www.w3.org/2005/08/addressing/anonymous
+     * is to be used as reply to URI, else AXIS2_FALSE
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_reply_to_anonymous(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env, 
+        const axis2_bool_t anonymous);
+
+    /**
+     * Gets the bool value indicating whether the reply to endpoint should 
+     * be anonymous. reply to endpoint identifies the intended receiver for 
+     * replies related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/anonymous"
+     * in the reply to address indicates that reply should be sent to 
+     * from address.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/anonymous
+     * is to be used as reply to URI, else AXIS2_FALSE
+     */
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    axis2_msg_info_headers_get_reply_to_anonymous(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Gets fault to endpoint. fault to endpoint identifies the intended 
+     * receiver for faults related to a message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return pointer to endpoint reference representing fault to address, 
+     * returns a reference, not a cloned copy         
+     */
+    AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
+    axis2_msg_info_headers_get_fault_to(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets fault to endpoint. fault to endpoint identifies the intended 
+     * receiver for faults related to a message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param fault pointer to endpoint reference representing fault to 
+     * address, message information headers assumes ownership of the endpoint
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_fault_to(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        axis2_endpoint_ref_t *fault_to);
+
+    /**
+     * Sets the bool value indicating whether the fault to endpoint should 
+     * be none. fault to endpoint identifies the intended receiver for 
+     * faults related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/none"
+     * in the fault to address indicates that no fault should be sent back.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param none AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
+     * is to be used as fault to URI, else AXIS2_FALSE
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_fault_to_none(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env, 
+        const axis2_bool_t none);
+
+    /**
+     * Gets the bool value indicating whether the fault to endpoint should 
+     * be none. fault to endpoint identifies the intended receiver for 
+     * faults related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/none"
+     * in the fault to address indicates that no fault should be sent back.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/none
+     * is to be used as fault to URI, else AXIS2_FALSE
+     */
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    axis2_msg_info_headers_get_fault_to_none(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets the bool value indicating whether the fault to endpoint should 
+     * be anonymous. fault to endpoint identifies the intended receiver for 
+     * faults related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/anonymous"
+     * in the fault to address indicates that fault should be sent to 
+     * from address.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param anonymous AXIS2_TRUE if 
+     * http://www.w3.org/2005/08/addressing/anonymous
+     * is to be used as fault to URI, else AXIS2_FALSE
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_fault_to_anonymous(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env, 
+        const axis2_bool_t anonymous);
+
+    /**
+     * Gets the bool value indicating whether the fault to endpoint should 
+     * be anonymous. fault to endpoint identifies the intended receiver for 
+     * faults related to a message. The URI 
+     * "http://www.w3.org/2005/08/addressing/anonymous"
+     * in the fault to address indicates that fault should be sent to 
+     * from address.         
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return AXIS2_TRUE if http://www.w3.org/2005/08/addressing/anonymous
+     * is to be used as fault to URI, else AXIS2_FALSE
+     */
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    axis2_msg_info_headers_get_fault_to_anonymous(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Gets WS-Addressing action. action is an absolute IRI 
+     * (Internationalized Resource Identifier) that uniquely identifies 
+     * the semantics implied by this message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return WS-Addressing action string
+     */
+    AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+    axis2_msg_info_headers_get_action(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets WS-Addressing action. action is an absolute IRI 
+     * (Internationalized Resource Identifier) that uniquely identifies 
+     * the semantics implied by this message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param action WS-Addressing action string
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_action(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        const axis2_char_t *action);
+
+    /**
+     * Gets message ID. message ID is an absolute IRI that uniquely 
+     * identifies the message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return message ID string. 
+     */
+    AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+    axis2_msg_info_headers_get_message_id(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets message ID. message ID is an absolute IRI that uniquely 
+     * identifies the message.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param message_id message ID string
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_message_id(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        const axis2_char_t *message_id);
+
+    /**
+     * Gets relates to information. 
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return pointer to relates to struct, returns a reference, not a 
+     * cloned copy
+     * @sa axis2_relates_to
+     */
+    AXIS2_EXTERN axis2_relates_to_t *AXIS2_CALL
+    axis2_msg_info_headers_get_relates_to(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Sets relates to information. 
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param relates_to pointer to relates to struct, message information
+     * headers assumes ownership of struct
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_set_relates_to(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        axis2_relates_to_t *relates_to);
+
+    /**
+     * Gets all reference parameters associated with message information 
+     * headers.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return pointer to array list containing all reference parameters
+     */
+    AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
+    axis2_msg_info_headers_get_all_ref_params(const axis2_msg_info_headers_t *msg_info_headers,
+        const axis2_env_t *env);
+
+    /**
+     * Adds a reference parameter in the form of an AXIOM node.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @param ref_param pointer to AXIOM node representing reference 
+     * parameter, message information header does not assume ownership of
+     * node
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_add_ref_param(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env,
+        axiom_node_t *ref_param);
+
+    /**
+     * Frees message information header struct.
+     * @param msg_info_headers pointer to message information headers struct
+     * @param env pointer to environment struct
+     * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axis2_msg_info_headers_free(struct axis2_msg_info_headers *msg_info_headers,
+        const axis2_env_t *env);
 
-/** Gets to endpoint.
-    @sa axis2_msg_info_headers_ops#get_to */
+/** Gets to endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_GET_TO(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_to(msg_info_headers, env))
+        axis2_msg_info_headers_get_to(msg_info_headers, env)
 
-/** Sets to endpoint.
-    @sa axis2_msg_info_headers_ops#set_to */
+/** Sets to endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_SET_TO(msg_info_headers, env, to) \
-        ((msg_info_headers)->ops->set_to(msg_info_headers, env, to))
+        axis2_msg_info_headers_set_to(msg_info_headers, env, to)
 
-/** Gets from endpoint.
-    @sa axis2_msg_info_headers_ops#get_from */
+/** Gets from endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_GET_FROM(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_from(msg_info_headers, env))
+        axis2_msg_info_headers_get_from(msg_info_headers, env)
 
-/** Sets from endpoint.
-    @sa axis2_msg_info_headers_ops#set_from */
+/** Sets from endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_SET_FROM(msg_info_headers, env, from) \
-        ((msg_info_headers)->ops->set_from(msg_info_headers, env, from))
+        axis2_msg_info_headers_set_from(msg_info_headers, env, from)
 
-/** Gets reply to endpoint.
-    @sa axis2_msg_info_headers_ops#get_reply_to */
+/** Gets reply to endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_GET_REPLY_TO(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_reply_to(msg_info_headers, env))
+        axis2_msg_info_headers_get_reply_to(msg_info_headers, env)
 
-/** Sets reply to endpoint.
-    @sa axis2_msg_info_headers_ops#set_reply_to */
+/** Sets reply to endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_SET_REPLY_TO(msg_info_headers, env, reply_to) \
-        ((msg_info_headers)->ops->set_reply_to(msg_info_headers, env, reply_to))
+        axis2_msg_info_headers_set_reply_to(msg_info_headers, env, reply_to)
 
-/** Sets bool value indicating if reply to is none.
-    @sa axis2_msg_info_headers_ops#set_reply_to_none */
+/** Sets bool value indicating if reply to is none. */
 #define AXIS2_MSG_INFO_HEADERS_SET_REPLY_TO_NONE(msg_info_headers, env, none) \
-        ((msg_info_headers)->ops->set_reply_to_none(msg_info_headers, env, none))
+        axis2_msg_info_headers_set_reply_to_none(msg_info_headers, env, none)
 
-/** Gets bool value indicating if reply to is none.
-    @sa axis2_msg_info_headers_ops#get_reply_to_none */
+/** Gets bool value indicating if reply to is none. */
 #define AXIS2_MSG_INFO_HEADERS_GET_REPLY_TO_NONE(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_reply_to_none(msg_info_headers, env))
+        axis2_msg_info_headers_get_reply_to_none(msg_info_headers, env)
 
-/** Sets bool value indicating if reply to is anonymous.
-    @sa axis2_msg_info_headers_ops#set_reply_to_anonymous */
+/** Sets bool value indicating if reply to is anonymous. */
 #define AXIS2_MSG_INFO_HEADERS_SET_REPLY_TO_ANONYMOUS(msg_info_headers, env, anonymous) \
-        ((msg_info_headers)->ops->set_reply_to_anonymous(msg_info_headers, env, anonymous))
+        axis2_msg_info_headers_set_reply_to_anonymous(msg_info_headers, env, anonymous)
 
-/** Gets bool value indicating if reply to is anonymous.
-    @sa axis2_msg_info_headers_ops#get_reply_to_anonymous */
+/** Gets bool value indicating if reply to is anonymous. */
 #define AXIS2_MSG_INFO_HEADERS_GET_REPLY_TO_ANONYMOUS(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_reply_to_anonymous(msg_info_headers, env))
+        axis2_msg_info_headers_get_reply_to_anonymous(msg_info_headers, env)
 
-/** Gets fault to endpoint.
-    @sa axis2_msg_info_headers_ops#get_fault_to */
+/** Gets fault to endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_GET_FAULT_TO(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_fault_to(msg_info_headers, env))
+        axis2_msg_info_headers_get_fault_to(msg_info_headers, env)
 
-/** Sets fault to endpoint.
-    @sa axis2_msg_info_headers_ops#set_fault_to */
+/** Sets fault to endpoint. */
 #define AXIS2_MSG_INFO_HEADERS_SET_FAULT_TO(msg_info_headers, env, fault_to) \
-        ((msg_info_headers)->ops->set_fault_to(msg_info_headers, env, fault_to))
+        axis2_msg_info_headers_set_fault_to(msg_info_headers, env, fault_to)
 
-/** Sets bool value indicating if fault to is none.
-    @sa axis2_msg_info_headers_ops#set_fault_to_none */
+/** Sets bool value indicating if fault to is none. */
 #define AXIS2_MSG_INFO_HEADERS_SET_FAULT_TO_NONE(msg_info_headers, env, none) \
-        ((msg_info_headers)->ops->set_fault_to_none(msg_info_headers, env, none))
+        axis2_msg_info_headers_set_fault_to_none(msg_info_headers, env, none)
 
-/** Gets bool value indicating if fault to is none.
-    @sa axis2_msg_info_headers_ops#get_fault_to_none */
+/** Gets bool value indicating if fault to is none. */
 #define AXIS2_MSG_INFO_HEADERS_GET_FAULT_TO_NONE(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_fault_to_none(msg_info_headers, env))
+        axis2_msg_info_headers_get_fault_to_none(msg_info_headers, env)
 
-/** Sets bool value indicating if fault to is anonymous.
-    @sa axis2_msg_info_headers_ops#set_fault_to_anonymous */
+/** Sets bool value indicating if fault to is anonymous. */
 #define AXIS2_MSG_INFO_HEADERS_SET_FAULT_TO_ANONYMOUS(msg_info_headers, env, anonymous) \
-        ((msg_info_headers)->ops->set_fault_to_anonymous(msg_info_headers, env, anonymous))
+        axis2_msg_info_headers_set_fault_to_anonymous(msg_info_headers, env, anonymous)
 
-/** Gets bool value indicating if fault to is anonymous.
-    @sa axis2_msg_info_headers_ops#get_fault_to_anonymous */
+/** Gets bool value indicating if fault to is anonymous. */
 #define AXIS2_MSG_INFO_HEADERS_GET_FAULT_TO_ANONYMOUS(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_fault_to_anonymous(msg_info_headers, env))
+        axis2_msg_info_headers_get_fault_to_anonymous(msg_info_headers, env)
 
-/** Gets WS-Addressing action.
-    @sa axis2_msg_info_headers_ops#get_action */
+/** Gets WS-Addressing action. */
 #define AXIS2_MSG_INFO_HEADERS_GET_ACTION(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_action(msg_info_headers, env))
+        axis2_msg_info_headers_get_action(msg_info_headers, env)
 
-/** Sets WS-Addressing action.
-    @sa axis2_msg_info_headers_ops#set_action */
+/** Sets WS-Addressing action. */
 #define AXIS2_MSG_INFO_HEADERS_SET_ACTION(msg_info_headers, env, action) \
-        ((msg_info_headers)->ops->set_action(msg_info_headers, env, action))
+        axis2_msg_info_headers_set_action(msg_info_headers, env, action)
 
-/** Gets message ID.
-    @sa axis2_msg_info_headers_ops#get_message_id */
+/** Gets message ID. */
 #define AXIS2_MSG_INFO_HEADERS_GET_MESSAGE_ID(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_message_id(msg_info_headers, env))
+        axis2_msg_info_headers_get_message_id(msg_info_headers, env)
 
-/** Sets message ID.
-    @sa axis2_msg_info_headers_ops#set_message_id */
+/** Sets message ID. */
 #define AXIS2_MSG_INFO_HEADERS_SET_MESSAGE_ID(msg_info_headers, env, message_id) \
-        ((msg_info_headers)->ops->set_message_id(msg_info_headers, env, message_id))
+        axis2_msg_info_headers_set_message_id(msg_info_headers, env, message_id)
 
-/** Gets relates to information for the message.
-    @sa axis2_msg_info_headers_ops#get_relates_to */
+/** Gets relates to information for the message. */
 #define AXIS2_MSG_INFO_HEADERS_GET_RELATES_TO(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_relates_to(msg_info_headers, env))
+        axis2_msg_info_headers_get_relates_to(msg_info_headers, env)
 
-/** Sets relates to information for the message.
-    @sa axis2_msg_info_headers_ops#set_relates_to */
+/** Sets relates to information for the message. */
 #define AXIS2_MSG_INFO_HEADERS_SET_RELATES_TO(msg_info_headers, env, relates_to) \
-        ((msg_info_headers)->ops->set_relates_to(msg_info_headers, env, relates_to))
+        axis2_msg_info_headers_set_relates_to(msg_info_headers, env, relates_to)
 
-/** Gets all reference parameters.
-    @sa axis2_msg_info_headers_ops#get_all_ref_params */
+/** Gets all reference parameters. */
 #define AXIS2_MSG_INFO_HEADERS_GET_ALL_REF_PARAMS(msg_info_headers, env) \
-        ((msg_info_headers)->ops->get_all_ref_params(msg_info_headers, env))
+        axis2_msg_info_headers_get_all_ref_params(msg_info_headers, env)
 
-/** Adds reference parameter.
-    @sa axis2_msg_info_headers_ops#add_ref_param */
+/** Adds reference parameter. */
 #define AXIS2_MSG_INFO_HEADERS_ADD_REF_PARAM(msg_info_headers, env, ref_param) \
-        ((msg_info_headers)->ops->add_ref_param(msg_info_headers, env, ref_param))
+        axis2_msg_info_headers_add_ref_param(msg_info_headers, env, ref_param)
 
-/** Frees message information headers struct.
-    @sa axis2_msg_info_headers_ops#free */
+/** Frees message information headers struct. */
 #define AXIS2_MSG_INFO_HEADERS_FREE(msg_info_headers, env) \
-        ((msg_info_headers)->ops->free(msg_info_headers, env))
+        axis2_msg_info_headers_free(msg_info_headers, env)
 
 /** @} */
 



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org