You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by da...@apache.org on 2008/08/29 08:56:38 UTC

svn commit: r690127 [9/11] - in /webservices/sandesha/trunk/c: ./ build/win32/ config/ ides/vc8/sandesha2/sandesha2/ include/ include/sandesha2/ samples/ samples/RMSampleService/ samples/rm_echo_1_0/ samples/rm_echo_1_0_large_sequence/ samples/rm_echo_...

Modified: webservices/sandesha/trunk/c/src/util/property_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/property_mgr.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/property_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/property_mgr.c Thu Aug 28 23:56:29 2008
@@ -75,27 +75,29 @@
     const axutil_env_t *env)
 {
     sandesha2_property_bean_t *property_bean = NULL;
+
     property_bean = sandesha2_property_bean_create(env);
 
-    sandesha2_property_bean_set_exp_backoff(property_bean, env,
-        SANDESHA2_DEF_VAL_EXP_BACKOFF);
-    sandesha2_property_bean_set_retrans_interval(property_bean, env,
-        SANDESHA2_DEF_VAL_RETR_COUNT);
-    sandesha2_property_bean_set_ack_interval(property_bean, env, 
-        SANDESHA2_DEF_VAL_ACK_INTERVAL);
-    sandesha2_property_bean_set_inactive_timeout_interval_with_units(
-        property_bean, env, SANDESHA2_DEF_VAL_INACTIVETIMEOUT,
-        SANDESHA2_DEF_VAL_INACTIVETIMEOUT_MEASURE);
-    sandesha2_property_bean_set_in_order(property_bean, env,
-        SANDESHA2_DEF_VAL_INORDER_INVOCATION);
+    sandesha2_property_bean_set_exp_backoff(property_bean, env, SANDESHA2_DEF_VAL_EXP_BACKOFF);
+    sandesha2_property_bean_set_retrans_interval(property_bean, env, SANDESHA2_DEF_VAL_RETR_COUNT);
+    sandesha2_property_bean_set_ack_interval(property_bean, env, SANDESHA2_DEF_VAL_ACK_INTERVAL);
+    sandesha2_property_bean_set_inactive_timeout_interval_with_units(property_bean, env, 
+            SANDESHA2_DEF_VAL_INACTIVETIMEOUT, SANDESHA2_DEF_VAL_INACTIVETIMEOUT_MEASURE);
+
+    sandesha2_property_bean_set_in_order(property_bean, env, SANDESHA2_DEF_VAL_INORDER_INVOCATION);
     sandesha2_property_bean_set_msg_types_to_drop(property_bean, env, NULL);
+
     /* will be useful when we are loading libraries */
-    sandesha2_property_bean_set_max_retrans_count(property_bean, env,
-        SANDESHA2_DEF_VAL_MAX_RETR_COUNT);
-    sandesha2_property_mgr_load_msg_types_to_drop(env, 
-        SANDESHA2_DEF_VAL_MSG_TYPES_TO_DROP, property_bean);
-    sandesha2_property_bean_set_terminate_delay(property_bean, env,
-        SANDESHA2_TERMINATE_DELAY);
+    sandesha2_property_bean_set_max_retrans_count(property_bean, env, 
+            SANDESHA2_DEF_VAL_MAX_RETR_COUNT);
+
+    sandesha2_property_mgr_load_msg_types_to_drop(env, SANDESHA2_DEF_VAL_MSG_TYPES_TO_DROP, 
+            property_bean);
+
+    sandesha2_property_bean_set_terminate_delay(property_bean, env, SANDESHA2_TERMINATE_DELAY);
+    
+    sandesha2_property_bean_set_polling_delay(property_bean, env, SANDESHA2_POLLING_DELAY);
+
     return property_bean;
 }
 
@@ -117,35 +119,30 @@
     
     property_bean = sandesha2_property_bean_create(env);
 
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_EXP_BACKOFF);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_EXP_BACKOFF);
     if(param)
     {
         exp_backoff_str = axutil_param_get_value(param, env);
-        sandesha2_property_mgr_load_exp_backoff(env, exp_backoff_str, 
-            property_bean);
+        sandesha2_property_mgr_load_exp_backoff(env, exp_backoff_str, property_bean);
     }
 
     param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_RETRANSMISSION_INTERVAL);
+            SANDESHA2_PROPERTIES_RETRANSMISSION_INTERVAL);
+
     if(param)
     {
         retrans_int_str = axutil_param_get_value(param, env);
-        sandesha2_property_mgr_load_retrans_int(env, retrans_int_str, 
-            property_bean);
+        sandesha2_property_mgr_load_retrans_int(env, retrans_int_str, property_bean);
     }
 
-    param = axis2_module_desc_get_param(module_desc, env, 
-       SANDESHA2_PROPERTIES_ACK_INTERVAL);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_ACK_INTERVAL);
     if(param)
     {
         ack_int_str = axutil_param_get_value(param, env);
-        sandesha2_property_mgr_load_ack_int(env, ack_int_str, 
-            property_bean);
+        sandesha2_property_mgr_load_ack_int(env, ack_int_str, property_bean);
     }
 
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_INACTIVETIMEOUT);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_INACTIVETIMEOUT);
     if(param)
     {
         axis2_char_t *inactive_to_measure_str = NULL;
@@ -154,34 +151,34 @@
         param = axis2_module_desc_get_param(module_desc, env, 
             SANDESHA2_PROPERTIES_INACTIVETIMEOUT_MEASURE);
         if(param)
+        {
             inactive_to_measure_str = axutil_param_get_value(param, env);
-        if(NULL == inactive_to_measure_str)
+        }
+
+        if(!inactive_to_measure_str)
+        {
             inactive_to_measure_str = SANDESHA2_DEF_VAL_INACTIVETIMEOUT_MEASURE;
+        }
         
         sandesha2_property_mgr_load_inactive_timeout(env, inactive_timeout_str, 
-            inactive_to_measure_str, property_bean);
+                inactive_to_measure_str, property_bean);
     }
 
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_INORDER_INVOCATION);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_INORDER_INVOCATION);
     if(param)
     {
         in_order_invoker_str = axutil_param_get_value(param, env);
-        sandesha2_property_mgr_load_in_order_invocation(env, 
-            in_order_invoker_str, property_bean);        
+        sandesha2_property_mgr_load_in_order_invocation(env, in_order_invoker_str, property_bean);        
     }
 
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_MSG_TYPES_TO_DROP);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_MSG_TYPES_TO_DROP);
     if(param)
     {
         msg_types_str = axutil_param_get_value(param, env);
-        sandesha2_property_mgr_load_msg_types_to_drop(env, msg_types_str, 
-            property_bean);        
+        sandesha2_property_mgr_load_msg_types_to_drop(env, msg_types_str, property_bean);        
     }
     
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_STORAGE_MGR);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_STORAGE_MGR);
     if(param)
     {
         axis2_char_t *storage_mgr = NULL;
@@ -189,39 +186,82 @@
         sandesha2_property_bean_set_storage_mgr(property_bean, env, storage_mgr);        
     }
     
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_MAX_RETRANS_COUNT);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_MAX_RETRANS_COUNT);
     if(param)
     {
         int max_retrans_count = -1;
         axis2_char_t *max_retrans_count_str = axutil_param_get_value(param, env);
         axis2_char_t *str = sandesha2_utils_trim_string(env, max_retrans_count_str);
         if(str)
+        {
             max_retrans_count = atoi(str);
+        }
+
         if(0 < max_retrans_count)
-            sandesha2_property_bean_set_max_retrans_count(property_bean, env, 
-                max_retrans_count);
+        {
+            sandesha2_property_bean_set_max_retrans_count(property_bean, env, max_retrans_count);
+        }
+
         if(str)
+        {
             AXIS2_FREE(env->allocator, str);
+        }
     }
 
-    param = axis2_module_desc_get_param(module_desc, env, 
-        SANDESHA2_PROPERTIES_TERMINATE_DELAY);
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_TERMINATE_DELAY);
     if(param)
     {
         int terminate_delay = -1;
+
         axis2_char_t *terminate_delay_str = axutil_param_get_value(param, env);
         axis2_char_t *str = sandesha2_utils_trim_string(env, terminate_delay_str);
         if(str)
+        {
             terminate_delay = atoi(str);
+        }
         else
+        {
             terminate_delay = SANDESHA2_TERMINATE_DELAY;
+        }
+
         if(0 < terminate_delay)
-            sandesha2_property_bean_set_terminate_delay(property_bean, env, 
-                terminate_delay);
+        {
+            sandesha2_property_bean_set_terminate_delay(property_bean, env, terminate_delay);
+        }
+
+        if(str)
+        {
+            AXIS2_FREE(env->allocator, str);
+        }
+    }
+
+    param = axis2_module_desc_get_param(module_desc, env, SANDESHA2_PROPERTIES_POLLING_DELAY);
+    if(param)
+    {
+        int polling_delay = -1;
+
+        axis2_char_t *polling_delay_str = axutil_param_get_value(param, env);
+        axis2_char_t *str = sandesha2_utils_trim_string(env, polling_delay_str);
+        if(str)
+        {
+            polling_delay = axutil_atoi(str);
+        }
+        else
+        {
+            polling_delay = SANDESHA2_POLLING_DELAY;
+        }
+
+        if(0 < polling_delay)
+        {
+            sandesha2_property_bean_set_polling_delay(property_bean, env, polling_delay);
+        }
+
         if(str)
+        {
             AXIS2_FREE(env->allocator, str);
+        }
     }
+
     return property_bean;
 }
 
@@ -233,18 +273,24 @@
 {
     axis2_char_t *str = NULL;
     
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, value, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, property_bean, AXIS2_FAILURE);
     
     str = sandesha2_utils_trim_string(env, value);
-    if(0 == axutil_strcmp(str, AXIS2_VALUE_TRUE))
+    if(!axutil_strcmp(str, AXIS2_VALUE_TRUE))
+    {
         sandesha2_property_bean_set_exp_backoff(property_bean, env, AXIS2_TRUE);
+    }
     else
-        sandesha2_property_bean_set_exp_backoff(property_bean, env, 
-            AXIS2_FALSE);
+    {
+        sandesha2_property_bean_set_exp_backoff(property_bean, env, AXIS2_FALSE);
+    }
+
     if(str)
+    {
         AXIS2_FREE(env->allocator, str);
+    }
+
     return AXIS2_SUCCESS;
 }
                         
@@ -257,18 +303,26 @@
     axis2_char_t *str = NULL;
     int retrans_int = -1;
     
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, value, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, property_bean, AXIS2_FAILURE);
     
     str = sandesha2_utils_trim_string(env, value);
+
     if(str)
+    {
         retrans_int = atoi(str);
+    }
+
     if(0 < retrans_int)
-        sandesha2_property_bean_set_retrans_interval(property_bean, env, 
-                    retrans_int);
+    {
+        sandesha2_property_bean_set_retrans_interval(property_bean, env, retrans_int);
+    }
+
     if(str)
+    {
         AXIS2_FREE(env->allocator, str);
+    }
+
     return AXIS2_SUCCESS;
 }
                         
@@ -281,17 +335,25 @@
     axis2_char_t *str = NULL;
     int ack_int = -1;
     
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, value, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, property_bean, AXIS2_FAILURE);
     
     str = sandesha2_utils_trim_string(env, value);
     if(str)
+    {
         ack_int = atoi(str);
+    }
+
     if(0 < ack_int)
+    {
         sandesha2_property_bean_set_ack_interval(property_bean, env, ack_int);
+    }
+
     if(str)
+    {
         AXIS2_FREE(env->allocator, str);
+    }
+
     return AXIS2_SUCCESS;
 }
 
@@ -314,20 +376,33 @@
     str2 = sandesha2_utils_trim_string(env, measure);
     
     if(str)
-        timeout = atoi(str);
+    {
+        timeout = axutil_atoi(str);
+    }
+
     if(0 < timeout)
     {
         if(str2)
-            sandesha2_property_bean_set_inactive_timeout_interval_with_units(
-                property_bean, env, timeout, str2);
+        {
+            sandesha2_property_bean_set_inactive_timeout_interval_with_units(property_bean, env, 
+                    timeout, str2);
+        }
         else
-            sandesha2_property_bean_set_inactive_timeout_interval(property_bean,
-                env, timeout);
+        {
+            sandesha2_property_bean_set_inactive_timeout_interval(property_bean, env, timeout);
+        }
     }
+
     if(str)
+    {
         AXIS2_FREE(env->allocator, str);
+    }
+
     if(str2)
+    {
         AXIS2_FREE(env->allocator, str2);
+    }
+
     return AXIS2_SUCCESS;
 }
 
@@ -343,12 +418,20 @@
     AXIS2_PARAM_CHECK(env->error, property_bean, AXIS2_FAILURE);
     
     str = sandesha2_utils_trim_string(env, value);
-    if(0 == axutil_strcmp(str, AXIS2_VALUE_TRUE))
+    if(!axutil_strcmp(str, AXIS2_VALUE_TRUE))
+    {
         sandesha2_property_bean_set_in_order(property_bean, env, AXIS2_TRUE);
+    }
     else
+    {
         sandesha2_property_bean_set_in_order(property_bean, env, AXIS2_FALSE);
+    }
+
     if(str)
+    {
         AXIS2_FREE(env->allocator, str);
+    }
+
     return AXIS2_SUCCESS;
 }
 
@@ -360,12 +443,11 @@
 {
     axis2_char_t *str = NULL;
     
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, value, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, property_bean, AXIS2_FAILURE);
     
     str = sandesha2_utils_trim_string(env, value);
-    if(str && 0 != axutil_strcmp(str, SANDESHA2_VALUE_NONE))
+    if(str && axutil_strcmp(str, SANDESHA2_VALUE_NONE))
     {
         axis2_char_t *str2 = NULL;
         axutil_array_list_t *list = NULL;
@@ -375,17 +457,21 @@
         if(list)
         {
             int i = 0;
+
             for(i = 0; i < axutil_array_list_size(list, env); i++)
             {
                 axis2_char_t *val = NULL;
                 val = axutil_array_list_get(list, env, i);
-                sandesha2_property_bean_add_msg_type_to_drop(property_bean, env,
-                    atoi(val));
+                sandesha2_property_bean_add_msg_type_to_drop(property_bean, env, axutil_atoi(val));
             }
         }
     }
+
     if(str)
+    {
         AXIS2_FREE(env->allocator, str);
+    }
+
     return AXIS2_SUCCESS;
 }
 

Modified: webservices/sandesha/trunk/c/src/util/sandesha2_utils.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/sandesha2_utils.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/sandesha2_utils.c (original)
+++ webservices/sandesha/trunk/c/src/util/sandesha2_utils.c Thu Aug 28 23:56:29 2008
@@ -30,6 +30,7 @@
 #include <sandesha2_permanent_storage_mgr.h>
 #include <axutil_string.h>
 #include <axis2_conf.h>
+#include <axis2_const.h>
 #include <axutil_property.h>
 #include <axutil_uuid_gen.h>
 #include <axiom_soap_body.h>
@@ -67,8 +68,10 @@
     axis2_msg_ctx_t *in_msg_ctx);
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
-sandesha2_utils_remove_soap_body_part(const axutil_env_t *env, 
-                        axiom_soap_envelope_t *envelope, axutil_qname_t *qname)
+sandesha2_utils_remove_soap_body_part(
+    const axutil_env_t *env, 
+    axiom_soap_envelope_t *envelope, 
+    axutil_qname_t *qname)
 {
     axiom_soap_body_t *soap_body = NULL;
     axiom_node_t *body_node = NULL;
@@ -83,29 +86,39 @@
     if(!soap_body)
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, 
-            "[sandesha2]Soap envelope does not have a soap body");
+                "[sandesha2] Soap envelope does not have a soap body");
         return AXIS2_FAILURE;
     }
+
     body_node = axiom_soap_body_get_base_node(soap_body, env);
     if(!body_node)
     {
-        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, 
-            "[sandesha2]Soap body does not have a base node");
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Soap body does not have a base node");
         return AXIS2_FAILURE;
     }
+
     body_element = axiom_node_get_data_element(body_node, env);
     if(!body_element)
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, 
-            "[sandesha2]Soap body node does not have a node element");
+                "[sandesha2] Soap body node does not have a node element");
         return AXIS2_FAILURE;
     }
-    body_rm_element = axiom_element_get_first_child_with_qname(body_element,
-                            env, qname, body_node, &body_rm_node);
+
+    body_rm_element = axiom_element_get_first_child_with_qname(body_element, env, qname, body_node, 
+            &body_rm_node);
+
     if(body_rm_element)
     {
-        axiom_node_detach(body_rm_node, env);
+        axiom_node_t *temp_node = NULL;
+
+        temp_node = axiom_node_detach(body_rm_node, env);
+        if(temp_node)
+        {
+            axiom_node_free_tree(temp_node, env);
+        }
     }
+
     return AXIS2_SUCCESS;
 }
 
@@ -178,8 +191,8 @@
 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
 sandesha2_utils_get_seq_property(
     const axutil_env_t *env,
-    axis2_char_t *incoming_seq_id,
-    axis2_char_t *name,
+    const axis2_char_t *incoming_seq_id,
+    const axis2_char_t *name,
     sandesha2_seq_property_mgr_t *seq_prop_mgr)
 {
     axis2_char_t *value = NULL;
@@ -189,13 +202,13 @@
     AXIS2_PARAM_CHECK(env->error, name, NULL);
     AXIS2_PARAM_CHECK(env->error, seq_prop_mgr, NULL);
     
-    seq_prop_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr,
-        env, incoming_seq_id, name);
+    seq_prop_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env, incoming_seq_id, name);
     if(!seq_prop_bean)
+    {
         return NULL;
+    }
 
-    value = axutil_strdup(env, sandesha2_seq_property_bean_get_value(
-        seq_prop_bean, env));
+    value = axutil_strdup(env, sandesha2_seq_property_bean_get_value(seq_prop_bean, env));
     sandesha2_seq_property_bean_free(seq_prop_bean, env);
     return value;
 }
@@ -356,57 +369,18 @@
     AXIS2_PARAM_CHECK(env->error, conf_ctx, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, seq_id, AXIS2_FAILURE);
     
-    return sandesha2_sender_run_for_seq(env, conf_ctx, seq_id, 
-        persistent);
+    /*return sandesha2_sender_run_for_seq(env, conf_ctx, seq_id, persistent);*/
+    return AXIS2_SUCCESS;
 }
  
-AXIS2_EXTERN axis2_status_t AXIS2_CALL                        
-sandesha2_utils_start_polling_mgr(
-    const axutil_env_t *env,
-    axis2_conf_ctx_t *conf_ctx,
-    const axis2_char_t *internal_seq_id)
-{
-    sandesha2_polling_mgr_t *polling_mgr = NULL;
-    axutil_property_t *property = NULL;
-    axis2_status_t status = AXIS2_FAILURE;
-    
-    AXIS2_PARAM_CHECK(env->error, conf_ctx, AXIS2_FAILURE);
-    
-    axutil_allocator_switch_to_global_pool(env->allocator);
-    property = axis2_ctx_get_property(axis2_conf_ctx_get_base(conf_ctx, env),
-        env, SANDESHA2_POLLING_MGR);
-    if(property)
-        polling_mgr = axutil_property_get_value(property, env);
-       
-    /* Assumes that if someone has set the polling_mgr, he must have already 
-     * started it 
-     */
-    if(!polling_mgr)
-    {
-        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, 
-            "[sandesha2]Starting the polling manager");
-        polling_mgr = sandesha2_polling_mgr_create(env);
-        property = axutil_property_create_with_args(env, 0, AXIS2_FALSE,
-            (void *)sandesha2_polling_mgr_free_void_arg, polling_mgr);
-        axis2_ctx_set_property(axis2_conf_ctx_get_base(conf_ctx, env),
-            env, SANDESHA2_POLLING_MGR, property);
-    }
-    status = sandesha2_polling_mgr_start(polling_mgr, env, conf_ctx, 
-        internal_seq_id);
-    axutil_allocator_switch_to_local_pool(env->allocator);
-    return status;
-}
-                   
-                        
 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
-sandesha2_utils_get_outgoing_internal_seq_id(
+sandesha2_utils_get_internal_sequence_id(
     const axutil_env_t *env,
-    axis2_char_t *seq_id)
+    axis2_char_t *rmd_sequence_id)
 {
-    AXIS2_PARAM_CHECK(env->error, seq_id, NULL);
+    AXIS2_PARAM_CHECK(env->error, rmd_sequence_id, NULL);
     
-    return axutil_strcat(env, SANDESHA2_INTERNAL_SEQ_PREFIX, ":",
-        seq_id, NULL);
+    return axutil_strcat(env, SANDESHA2_INTERNAL_SEQ_PREFIX, ":", rmd_sequence_id, NULL);
 }
 
 AXIS2_EXTERN axis2_transport_out_desc_t* AXIS2_CALL
@@ -433,20 +407,21 @@
 }
 
 AXIS2_EXTERN axis2_char_t* AXIS2_CALL                       
-sandesha2_utils_get_svr_side_incoming_seq_id(const axutil_env_t *env,
-                        axis2_char_t *incoming_seq_id)
+sandesha2_utils_get_rmd_seq_id(
+        const axutil_env_t *env,
+        axis2_char_t *internal_sequence_id)
 {
     axis2_char_t *start_str = NULL;
     axis2_char_t *ret = NULL;
     int start_len = 0;
     
-    AXIS2_PARAM_CHECK(env->error, incoming_seq_id, NULL);
+    AXIS2_PARAM_CHECK(env->error, internal_sequence_id, NULL);
     
     start_str = axutil_strcat(env, SANDESHA2_INTERNAL_SEQ_PREFIX, ":", NULL);
     start_len = axutil_strlen(start_str);
-    if(0 != axutil_strncmp(incoming_seq_id, start_str, start_len))
+    if(0 != axutil_strncmp(internal_sequence_id, start_str, start_len))
         return NULL;
-    ret = axutil_strdup(env, (incoming_seq_id + start_len * sizeof(axis2_char_t)));
+    ret = axutil_strdup(env, (internal_sequence_id + start_len * sizeof(axis2_char_t)));
     
     return ret;    
 }
@@ -475,7 +450,7 @@
 }
 
 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
-sandesha2_utils_get_internal_seq_id(
+sandesha2_utils_get_client_internal_sequence_id(
     const axutil_env_t *env,
     axis2_char_t *to,
     axis2_char_t *seq_key)
@@ -506,10 +481,8 @@
 AXIS2_EXTERN axis2_msg_ctx_t *AXIS2_CALL
 sandesha2_utils_create_new_related_msg_ctx(
     const axutil_env_t *env,
-    sandesha2_msg_ctx_t *ref_rm_msg,
-    axis2_op_t *op)
+    sandesha2_msg_ctx_t *ref_rm_msg)
 {
-    axis2_ctx_t *ctx = NULL;
     axis2_msg_ctx_t *ref_msg = NULL;
     axis2_msg_ctx_t *new_msg = NULL;
     axis2_conf_ctx_t *conf_ctx = NULL;
@@ -526,7 +499,6 @@
     axis2_char_t *transport_to = NULL;
     
     AXIS2_PARAM_CHECK(env->error, ref_rm_msg, NULL);
-    AXIS2_PARAM_CHECK(env->error, op, NULL);
     
     ref_msg = sandesha2_msg_ctx_get_msg_ctx(ref_rm_msg, env);
     conf_ctx = axis2_msg_ctx_get_conf_ctx(ref_msg, env);
@@ -539,108 +511,23 @@
     svc_grp = axis2_msg_ctx_get_svc_grp(ref_msg, env); 
     if(svc_grp)
     {
-        axis2_svc_grp_ctx_t *svc_grp_ctx = NULL;
-        axis2_msg_ctx_set_svc_grp(new_msg, env, svc_grp);
-        svc_grp_ctx = axis2_msg_ctx_get_svc_grp_ctx(ref_msg, env);
-        if(svc_grp_ctx)
-        {
-            axis2_msg_ctx_set_svc_grp_ctx(new_msg, env, svc_grp_ctx); 
-        }
-        else
-        {
-            axis2_svc_grp_ctx_t *svc_grp_ctx = NULL;
-            svc_grp_ctx = axis2_svc_grp_ctx_create(env, 
-                axis2_msg_ctx_get_svc_grp(ref_msg, env), conf_ctx);
-            axis2_msg_ctx_set_svc_grp_ctx(new_msg, env, svc_grp_ctx);
-        }
-    }
-    else
-    {
-        axis2_svc_grp_t *svc_grp = NULL;
-        axis2_svc_grp_ctx_t *svc_grp_ctx = NULL;
-        
-        svc_grp = axis2_svc_grp_create_with_conf(env, conf);
-        svc_grp_ctx = axis2_svc_grp_ctx_create(env, svc_grp, conf_ctx);
         axis2_msg_ctx_set_svc_grp(new_msg, env, svc_grp);
-        axis2_msg_ctx_set_svc_grp_ctx(new_msg, env, svc_grp_ctx);
     }
 
     if(axis2_msg_ctx_get_svc(ref_msg, env))
     {
-        axis2_msg_ctx_set_svc_grp(new_msg, env, (axis2_svc_grp_t *)
-            axis2_msg_ctx_get_svc(ref_msg, env));
-        if(axis2_msg_ctx_get_svc_ctx(ref_msg, env))
-        {
-            axis2_msg_ctx_set_svc_ctx(new_msg, env, 
-                axis2_msg_ctx_get_svc_ctx(ref_msg, env));
-            axis2_msg_ctx_set_svc_ctx_id(new_msg, env, 
-                axis2_msg_ctx_get_svc_ctx_id(ref_msg, env));
-        }
-        else
-        {
-            axis2_svc_ctx_t *svc_ctx =  NULL;
-            svc_ctx = axis2_svc_ctx_create(env, 
-                axis2_msg_ctx_get_svc(ref_msg, env),
-                axis2_msg_ctx_get_svc_grp_ctx(new_msg, env));
-            axis2_msg_ctx_set_svc_ctx(new_msg, env, svc_ctx);
-        }
+        axis2_msg_ctx_set_svc(new_msg, env, axis2_msg_ctx_get_svc(ref_msg, env));
     }
-    else
-    {
-        axis2_svc_t *axis_svc = NULL;
-        axutil_qname_t *svc_qname = NULL;
-        axis2_svc_grp_t *svc_grp = NULL;
-        axis2_svc_ctx_t *svc_ctx = NULL;
-        axis2_svc_grp_ctx_t *svc_grp_ctx = NULL;
-        
-        svc_qname = axutil_qname_create(env, "AnonymousRMService", NULL, NULL);
-        axis_svc = axis2_svc_create_with_qname(env, svc_qname);
-        if(svc_qname)
-            axutil_qname_free(svc_qname, env);
-        
-        svc_grp = axis2_msg_ctx_get_svc_grp(new_msg, env);
-        axis2_svc_set_parent(axis_svc, env, axis2_msg_ctx_get_svc_grp(new_msg,
-            env));
-        axis2_svc_grp_add_svc(svc_grp, env, axis_svc);
-        svc_grp_ctx = axis2_msg_ctx_get_svc_grp_ctx(new_msg, env);
-        svc_ctx = axis2_svc_ctx_create(env, axis_svc, svc_grp_ctx);
-    }
-    /*op_ctx = axis2_op_ctx_create(env, op, axis2_msg_ctx_get_svc_ctx(new_msg, env));*/
+
     op_ctx = axis2_msg_ctx_get_op_ctx(ref_msg, env);
-    axis2_op_ctx_increment_ref(op_ctx, env);
+    /*axis2_op_ctx_increment_ref(op_ctx, env);*/
     axis2_msg_ctx_set_op_ctx(new_msg, env, op_ctx);
-    
-    ctx = axis2_msg_ctx_get_base(ref_msg, env);
-    if (ctx)
-    {
-        axis2_ctx_t *new_ctx = axis2_msg_ctx_get_base(new_msg, env);
-        if (new_ctx)
-        {
-            axutil_hash_index_t *hi = NULL;
-            axutil_hash_t *ht = NULL;
-            axutil_hash_t *ht2 = NULL;
-            void *val = NULL;
-            const void *val2 = NULL;
-            axutil_property_t *prop = NULL;
-            axutil_property_t *prop_clone = NULL;
-            axis2_char_t *prop_name = NULL;
-
-            ht = axis2_ctx_get_property_map(ctx, env);
-            ht2 = axis2_ctx_get_property_map(new_ctx, env);
-            for (hi = axutil_hash_first(ht, env); hi; hi = axutil_hash_next(env, hi)) {
-                axutil_hash_this(hi, &val2, NULL, &val);
-                prop = (axutil_property_t*)val;
-                prop_name = (axis2_char_t*)val2;
-                prop_clone = axutil_property_clone(prop, env);
-                axis2_ctx_set_property(new_ctx, env, prop_name, prop_clone);
-                axutil_property_set_free_func(prop, env, sandesha2_util_dummy_prop_free);
-            }
-        }
-    }
+    axis2_msg_ctx_set_svc_ctx(new_msg, env, axis2_msg_ctx_get_svc_ctx(ref_msg, env));
+    axis2_msg_ctx_set_svc_grp_ctx(new_msg, env, axis2_msg_ctx_get_svc_grp_ctx(ref_msg, env));
 
     soap_env = axiom_soap_envelope_create_default_soap_envelope(env, 
-        sandesha2_utils_get_soap_version(env, 
-        axis2_msg_ctx_get_soap_envelope(ref_msg, env)));
+            sandesha2_utils_get_soap_version(env, axis2_msg_ctx_get_soap_envelope(ref_msg, env)));
+
     axis2_msg_ctx_set_soap_envelope(new_msg, env, soap_env);
     
     transport_to = axis2_msg_ctx_get_transport_url(ref_msg, env);
@@ -648,47 +535,60 @@
     {
         axis2_msg_ctx_set_transport_url(new_msg, env, transport_to);
     }
+
     property = axis2_msg_ctx_get_property(ref_msg, env, AXIS2_WSA_VERSION);
     if(!property)
     {
         axis2_msg_ctx_t *req_msg = NULL;
-        axis2_op_ctx_t *op_ctx = axis2_msg_ctx_get_op_ctx(ref_msg, env);
+        axis2_op_ctx_t *temp_op_ctx = NULL;
         
-        req_msg =  axis2_op_ctx_get_msg_ctx(op_ctx, env, AXIS2_WSDL_MESSAGE_LABEL_IN);
+        temp_op_ctx = axis2_msg_ctx_get_op_ctx(ref_msg, env);
+        if(temp_op_ctx)
+        {
+            req_msg =  axis2_op_ctx_get_msg_ctx(temp_op_ctx, env, AXIS2_WSDL_MESSAGE_LABEL_IN);
+        }
+
         if(req_msg)
         {
-            property = axis2_msg_ctx_get_property(req_msg, env, 
-                AXIS2_WSA_VERSION);
+            property = axis2_msg_ctx_get_property(req_msg, env, AXIS2_WSA_VERSION);
             if(property)
-                addr_ver = axutil_property_get_value(property, env);
+            {
+                addr_ver = axutil_strdup(env, axutil_property_get_value(property, env));
+            }
         }
     }
     else
     {
-        addr_ver = axutil_property_get_value(property, env);
+        addr_ver = axutil_strdup(env, axutil_property_get_value(property, env));
     }
-    property = axutil_property_create_with_args(env, 0, 0, 0, addr_ver);
+
+    property = axutil_property_create_with_args(env, 0, AXIS2_TRUE, 0, addr_ver);
     axis2_msg_ctx_set_property(new_msg, env, AXIS2_WSA_VERSION, property);
     
-    out_stream = axis2_msg_ctx_get_transport_out_stream(ref_msg, 
-        env);
+    out_stream = axis2_msg_ctx_get_transport_out_stream(ref_msg, env);
     axis2_msg_ctx_set_transport_out_stream(new_msg, env, out_stream);
-    property = axis2_msg_ctx_get_property(ref_msg, env, 
-        AXIS2_TRANSPORT_IN);
+    property = axis2_msg_ctx_get_property(ref_msg, env, AXIS2_TRANSPORT_IN);
     if(property)
-        axis2_msg_ctx_set_property(new_msg, env, AXIS2_TRANSPORT_IN, 
-            axutil_property_clone(property, env));
-    axis2_msg_ctx_set_out_transport_info(new_msg, env, 
-        axis2_msg_ctx_get_out_transport_info(ref_msg, env));
-    axis2_msg_ctx_set_charset_encoding(new_msg, env,
-        axis2_msg_ctx_get_charset_encoding(ref_msg, env));
-    property = axis2_msg_ctx_get_property(ref_msg, env, 
-        AXIS2_TRANSPORT_HEADERS);
+    {
+        axis2_msg_ctx_set_property(new_msg, env, AXIS2_TRANSPORT_IN, sandesha2_util_property_clone(
+                    env, property));
+    }
+
+    axis2_msg_ctx_set_out_transport_info(new_msg, env, axis2_msg_ctx_get_out_transport_info(ref_msg, 
+                env));
+
+    axis2_msg_ctx_set_charset_encoding(new_msg, env, axis2_msg_ctx_get_charset_encoding(ref_msg, 
+                env));
+
+    property = axis2_msg_ctx_get_property(ref_msg, env, AXIS2_TRANSPORT_HEADERS);
     if(property)
-        axis2_msg_ctx_set_property(new_msg, env, AXIS2_TRANSPORT_HEADERS, 
-            axutil_property_clone(property, env));
-    paused_phase_name = (axis2_char_t*)axis2_msg_ctx_get_paused_phase_name(
-        ref_msg, env);
+    {
+        axis2_msg_ctx_set_property(new_msg, env, AXIS2_TRANSPORT_HEADERS, sandesha2_util_property_clone(
+                    env, property));
+    }
+
+    paused_phase_name = (axis2_char_t*)axis2_msg_ctx_get_paused_phase_name(ref_msg, env);
+
     axis2_msg_ctx_set_paused_phase_name(new_msg, env, paused_phase_name);
 
     return new_msg;
@@ -749,7 +649,7 @@
         
     if(0 == axutil_strcmp(action, SANDESHA2_SPEC_2005_02_ACTION_CREATE_SEQ))
         ret = AXIS2_TRUE;
-    else if(0 == axutil_strcmp(action, SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ))
+    else if(0 == axutil_strcmp(action, SANDESHA2_SPEC_2007_02_ACTION_CREATE_SEQ))
         ret = AXIS2_TRUE;
         
     return ret;
@@ -797,7 +697,7 @@
         if(!seq_element)
         {
             qname = axutil_qname_create(env, SANDESHA2_WSRM_COMMON_SEQ,
-                        SANDESHA2_SPEC_2006_08_NS_URI, NULL);
+                        SANDESHA2_SPEC_2007_02_NS_URI, NULL);
             seq_element = axiom_element_get_first_child_with_qname(
                         header_element, env, qname, header_node, &seq_node);
             if(qname)
@@ -819,14 +719,14 @@
         is_global_msg = AXIS2_TRUE;    
         
     if(0 == axutil_strcmp(action, 
-                        SANDESHA2_SPEC_2006_08_ACTION_SEQ_ACKNOWLEDGEMENT))
+                        SANDESHA2_SPEC_2007_02_ACTION_SEQ_ACKNOWLEDGEMENT))
         is_global_msg = AXIS2_TRUE;
         
     if(0 == axutil_strcmp(action, 
-                        SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ_RESPONSE))
+                        SANDESHA2_SPEC_2007_02_ACTION_CREATE_SEQ_RESPONSE))
         is_global_msg = AXIS2_TRUE;
         
-    if(0 == axutil_strcmp(action, SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ))
+    if(0 == axutil_strcmp(action, SANDESHA2_SPEC_2007_02_ACTION_TERMINATE_SEQ))
         is_global_msg = AXIS2_TRUE;    
     
     return is_global_msg;
@@ -907,28 +807,6 @@
     return AXIS2_SUCCESS;
 }
  
-AXIS2_EXTERN axis2_status_t AXIS2_CALL                        
-sandesha2_utils_stop_polling_mgr(
-    const axutil_env_t *env,
-    axis2_conf_ctx_t *conf_ctx)
-{
-    sandesha2_polling_mgr_t *polling_mgr = NULL;
-    axutil_property_t *property = NULL;
-    
-    AXIS2_PARAM_CHECK(env->error, conf_ctx, AXIS2_FAILURE);
-    
-    property = axis2_ctx_get_property(axis2_conf_ctx_get_base(conf_ctx, env),
-                        env, SANDESHA2_POLLING_MGR);
-    if(property)
-        polling_mgr = axutil_property_get_value(property, env);
-       
-    if(polling_mgr)
-    {
-        sandesha2_polling_mgr_stop_polling(polling_mgr, env);
-    }
-    return AXIS2_SUCCESS;
-}
-                 
 /**
  * Used to convert a message number list (a comma seperated list of message
  * numbers) into a set of Acknowledgement Ranges. This breaks the list, sort
@@ -980,6 +858,10 @@
              upper = *temp;
              completed = AXIS2_FALSE;
         }
+        if(temp)
+        {
+            AXIS2_FREE(env->allocator, temp);
+        }
     }
     if(!completed)
     {
@@ -1023,6 +905,17 @@
     sorted_msg_no_list = sandesha2_utils_sort(env, msg_numbers);
     if(msg_numbers)
     {
+        int i = 0;
+        int size = 0;
+
+        size = axutil_array_list_size(msg_numbers, env);
+        for(i = 0; i < size; i++)
+        {
+            long *temp_long = NULL;
+
+            temp_long = (long *) axutil_array_list_get(msg_numbers, env, i);
+            AXIS2_FREE(env->allocator, temp_long);
+        }
         axutil_array_list_free(msg_numbers, env);
     }
     AXIS2_FREE(env->allocator, dup_str);
@@ -1041,15 +934,21 @@
     
     sorted_list = axutil_array_list_create(env, 0);
     if(list)
+    {
         size = axutil_array_list_size(list, env);
+    }
+
     for(i = 0; i < size; i++)
     {
         long *temp_long = NULL;
 
         temp_long = (long *) axutil_array_list_get(list, env, i);
         if(*temp_long > max)
+        {
             max = *temp_long;
+        }
     }
+
     for(j = 1; j <= max; j++)
     {
         long *temp = AXIS2_MALLOC(env->allocator, sizeof(long));
@@ -1066,6 +965,7 @@
                 break;
             }
         }
+
         if(contains)
         {
             axutil_array_list_add(sorted_list, env, temp);
@@ -1085,28 +985,40 @@
     axutil_array_list_t *acked_msgs_list = NULL;
     long smallest_msg_no = 1;
     long temp_msg_no = 0;
+    axis2_bool_t ret = AXIS2_TRUE;
+
+    client_completed_msgs = sandesha2_utils_get_seq_property(env, internal_seq_id, 
+            SANDESHA2_SEQ_PROP_CLIENT_COMPLETED_MESSAGES, seq_prop_mgr);
+
+    if(client_completed_msgs)
+    {
+        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2] Client_completed_msgs:%s", 
+            client_completed_msgs);
+
+        acked_msgs_list = sandesha2_utils_get_array_list_from_string(env, client_completed_msgs);
+        AXIS2_FREE(env->allocator, client_completed_msgs);
+    }
 
-    client_completed_msgs = sandesha2_utils_get_seq_property(env, 
-        internal_seq_id, SANDESHA2_SEQ_PROP_CLIENT_COMPLETED_MESSAGES, 
-        seq_prop_mgr);
-    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, 
-        "[sandesha2]client_completed_msgs:%s", client_completed_msgs);
-    acked_msgs_list = sandesha2_utils_get_array_list_from_string(env, 
-        client_completed_msgs);
     if(!acked_msgs_list)
+    {
         return AXIS2_FALSE;
-    for(temp_msg_no = smallest_msg_no; temp_msg_no <= highest_in_msg_no; 
-        temp_msg_no++)
+    }
+
+    for(temp_msg_no = smallest_msg_no; temp_msg_no <= highest_in_msg_no; temp_msg_no++)
     {
         axis2_char_t str_msg_no[32];
+
         sprintf(str_msg_no, "%ld", temp_msg_no);
-        if(!sandesha2_utils_array_list_contains(env, acked_msgs_list, 
-            str_msg_no))
+        if(!sandesha2_utils_array_list_contains(env, acked_msgs_list, str_msg_no))
         {
-            return AXIS2_FALSE;
+            ret = AXIS2_FALSE;
+            break;
         }
     }
-    return AXIS2_TRUE; /* All messages upto the highest have been acked */
+    
+    axutil_array_list_free(acked_msgs_list, env);
+
+    return ret; /* All messages upto the highest have been acked */
 }
 
 axis2_status_t AXIS2_CALL
@@ -1125,24 +1037,22 @@
 
     msg_ctx = sandesha2_msg_ctx_get_msg_ctx(rm_msg_ctx, env);
     if(msg_ctx)
+    {
         conf_ctx = axis2_msg_ctx_get_conf_ctx(msg_ctx, env);
-    sandesha2_msg_ctx_set_msg_type(rm_msg_ctx, env, 
-        SANDESHA2_MSG_TYPE_CREATE_SEQ);
+    }
+
+    sandesha2_msg_ctx_set_msg_type(rm_msg_ctx, env, SANDESHA2_MSG_TYPE_CREATE_SEQ);
     /* Message will be stored in the sandesha2_transport_sender */
-    property = axutil_property_create_with_args(env, AXIS2_SCOPE_REQUEST,
-        AXIS2_TRUE, 0, storage_key);
-    axis2_msg_ctx_set_property(msg_ctx, env, SANDESHA2_MESSAGE_STORE_KEY, 
-        property);
+    property = axutil_property_create_with_args(env, AXIS2_SCOPE_REQUEST, AXIS2_TRUE, 0, storage_key);
+    axis2_msg_ctx_set_property(msg_ctx, env, SANDESHA2_MESSAGE_STORE_KEY, property);
     
     transport_out = axis2_msg_ctx_get_transport_out_desc(msg_ctx, env);
     property = axutil_property_create_with_args(env, 3, 0, 
         axis2_transport_out_desc_free_void_arg, transport_out);
-    axis2_msg_ctx_set_property(msg_ctx, env, 
-        SANDESHA2_ORIGINAL_TRANSPORT_OUT_DESC, property);
+    axis2_msg_ctx_set_property(msg_ctx, env, SANDESHA2_ORIGINAL_TRANSPORT_OUT_DESC, property);
     
-    property = axutil_property_create_with_args(env, 0, 0, 0, AXIS2_VALUE_TRUE);
-    axis2_msg_ctx_set_property(msg_ctx, env, SANDESHA2_SET_SEND_TO_TRUE, 
-        property);
+    /*property = axutil_property_create_with_args(env, 0, 0, 0, AXIS2_VALUE_TRUE);
+    axis2_msg_ctx_set_property(msg_ctx, env, SANDESHA2_SET_SEND_TO_TRUE, property);*/
     sandesha2_transport_out = sandesha2_utils_get_transport_out(env);
     axis2_msg_ctx_set_transport_out_desc(msg_ctx, env, sandesha2_transport_out);
     /*Sending the message once through the sandesha2_transport_sender */
@@ -1157,8 +1067,12 @@
     {
         status = axis2_engine_send(engine, env, msg_ctx);
     }
+
     if(engine)
+    {
         axis2_engine_free(engine, env);
+    }
+
     return status;
 }
 
@@ -1180,19 +1094,33 @@
     const axutil_env_t *env,
     const axis2_char_t *address)
 {
+    axis2_bool_t ret = AXIS2_FALSE;
+
     axis2_char_t *address_l = NULL;
     if(!address)
+    {
         return AXIS2_TRUE;
+    }
+
     address_l = axutil_strtrim(env, address, NULL);
 
-    if(0 == axutil_strcmp(AXIS2_WSA_ANONYMOUS_URL, address_l))
-        return AXIS2_TRUE;
-    if(0 == axutil_strcmp(AXIS2_WSA_ANONYMOUS_URL_SUBMISSION, address_l))
-        return AXIS2_TRUE;
+    if(!axutil_strcmp(AXIS2_WSA_ANONYMOUS_URL, address_l))
+    {
+        ret = AXIS2_TRUE;
+    }
+
+    if(!axutil_strcmp(AXIS2_WSA_ANONYMOUS_URL_SUBMISSION, address_l))
+    {
+        ret = AXIS2_TRUE;
+    }
     else if (sandesha2_utils_is_wsrm_anon_reply_to(env, (axis2_char_t *) address))
-        return AXIS2_TRUE;
+    {
+        ret = AXIS2_TRUE;
+    }
 
-    return AXIS2_FALSE;
+    AXIS2_FREE(env->allocator, address_l);
+
+    return ret;
 }
 
 axutil_array_list_t *AXIS2_CALL
@@ -1205,31 +1133,43 @@
     axis2_char_t *ptr = NULL;
     axis2_char_t *value = NULL;
     ptr = axutil_strstr(str, pattern);
+
     while(ptr)
     {
         ptr[0] = AXIS2_EOLN;
-        value = axutil_strdup(env, str);
-        if(value && 0 != axutil_strcmp(value, ""))
+        /*value = axutil_strdup(env, str);*/
+        value = str;
+        if(value && axutil_strcmp(value, ""))
+        {
             axutil_array_list_add(list, env, value);
+        }
+
         str = ptr + 3;
         ptr = axutil_strstr(str, pattern);
     }
-    value = axutil_strdup(env, str);
-    if(value && 0 != axutil_strcmp(value, ""))
+
+    /*value = axutil_strdup(env, str);*/
+    value = str;
+    if(value && axutil_strcmp(value, ""))
+    {
         axutil_array_list_add(list, env, value);
+    }
 
     return list;
 }
 
 axis2_bool_t AXIS2_CALL
-sandesha2_utils_is_single_channel(
+sandesha2_utils_is_rm_1_0_anonymous_acks_to(
     const axutil_env_t *env,
     const axis2_char_t *rm_version,
     const axis2_char_t *acks_to_addr)
 {
     if(sandesha2_utils_is_anon_uri(env, acks_to_addr) &&
-        (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_0, rm_version)))
+        (!axutil_strcmp(SANDESHA2_SPEC_VERSION_1_0, rm_version)))
+    {
         return AXIS2_TRUE;
+    }
+
     else return AXIS2_FALSE;
 }
 
@@ -1293,11 +1233,13 @@
         AXIS2_FREE(env->allocator, msg_uuid);
         msg_uuid = NULL;
     }
+
     reply_to = axis2_msg_info_headers_get_reply_to(old_msg_info_headers, env);
     axis2_msg_info_headers_set_to(msg_info_headers, env, reply_to);
 
     fault_to = axis2_msg_info_headers_get_fault_to(old_msg_info_headers, env);
-    axis2_msg_info_headers_set_fault_to(msg_info_headers, env, fault_to);
+    axis2_msg_info_headers_set_fault_to(msg_info_headers, env, sandesha2_util_endpoint_ref_clone(
+                env, fault_to));
 
     to = axis2_msg_info_headers_get_to(old_msg_info_headers, env);
     axis2_msg_info_headers_set_from(msg_info_headers, env, to);
@@ -1322,28 +1264,7 @@
         axis2_ctx_t *new_ctx = axis2_msg_ctx_get_base(new_msg_ctx, env);
         if (new_ctx)
         {
-            axutil_hash_index_t *hi = NULL;
-            axutil_hash_t *ht = NULL;
-            axutil_hash_t *ht2 = NULL;
-            void *val = NULL;
-            const void *val2 = NULL;
-            axutil_property_t *prop = NULL;
-            axutil_property_t *prop_clone = NULL;
-            axis2_char_t *prop_name = NULL;
-
-            ht = axis2_ctx_get_property_map(ctx, env);
-            ht2 = axis2_ctx_get_property_map(new_ctx, env);
-            for (hi = axutil_hash_first(ht, env); hi; hi = axutil_hash_next(env, hi)) {
-                axutil_hash_this(hi, &val2, NULL, &val);
-                prop = (axutil_property_t*)val;
-                prop_name = (axis2_char_t*)val2;
-                prop_clone = axutil_property_clone(prop, env);
-                axis2_ctx_set_property(new_ctx, env, prop_name, prop_clone);
-                axutil_property_set_free_func(prop, env, sandesha2_util_dummy_prop_free);
-            }
-            /* axis2_ctx_set_property_map(new_ctx, env,
-             *  axis2_ctx_get_property_map(ctx, env));
-             */
+            axis2_ctx_set_property_map(new_ctx, env, axis2_ctx_get_property_map(ctx, env));
         }
     }
 
@@ -1413,3 +1334,79 @@
     return dbname;
 }
 
+axis2_bool_t AXIS2_CALL
+sandesha2_util_is_fault_envelope(
+    const axutil_env_t *env, 
+    axiom_soap_envelope_t *soap_envelope)
+{
+    axiom_soap_fault_t *fault = NULL;
+
+    AXIS2_PARAM_CHECK(env->error, soap_envelope, AXIS2_FAILURE);
+    
+    fault = axiom_soap_body_get_fault(axiom_soap_envelope_get_body(soap_envelope, env), env);
+    if(fault)
+    {
+        return AXIS2_TRUE;
+    }
+        
+    return AXIS2_FALSE;
+}
+
+axis2_bool_t AXIS2_CALL
+sandesha2_util_is_ack_already_piggybacked(
+    const axutil_env_t *env, 
+    sandesha2_msg_ctx_t *rm_msg_ctx)
+{
+    AXIS2_PARAM_CHECK(env->error, rm_msg_ctx, AXIS2_FAILURE);
+    
+    if(sandesha2_msg_ctx_get_seq_ack(rm_msg_ctx, env))
+    {
+        return AXIS2_TRUE;
+    }
+    
+    return AXIS2_FALSE;
+}
+
+axis2_bool_t AXIS2_CALL
+sandesha2_util_is_piggybackable_msg_type(
+    const axutil_env_t *env, 
+    int msg_type)
+{
+    if(SANDESHA2_MSG_TYPE_ACK == msg_type)
+    {
+        return AXIS2_FALSE;
+    }
+
+    return AXIS2_TRUE;
+}
+
+axutil_property_t *AXIS2_CALL
+sandesha2_util_property_clone(
+    const axutil_env_t * env,
+    axutil_property_t * property)
+{
+    axutil_property_t *new_property = NULL;
+
+    new_property = axutil_property_clone(property, env);
+    axutil_property_set_own_value(new_property, env, 0);
+
+    return new_property;
+}
+
+axis2_endpoint_ref_t *AXIS2_CALL
+sandesha2_util_endpoint_ref_clone(
+    const axutil_env_t * env,
+    axis2_endpoint_ref_t * endpoint_ref)
+{
+    axis2_endpoint_ref_t *new_endpoint_ref = NULL;
+    const axis2_char_t *address = NULL;
+
+    if(endpoint_ref)
+    {
+        address = axis2_endpoint_ref_get_address(endpoint_ref, env);
+        new_endpoint_ref = axis2_endpoint_ref_create(env, address);
+    }
+
+    return new_endpoint_ref;
+}
+

Modified: webservices/sandesha/trunk/c/src/util/seq_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/seq_mgr.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/seq_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/seq_mgr.c Thu Aug 28 23:56:29 2008
@@ -40,28 +40,20 @@
 #include <axis2_listener_manager.h>
 #include <axis2_ctx.h>
 
-/******************************************************************************/
 long AXIS2_CALL
 sandesha2_seq_mgr_get_last_activated_time(
     const axutil_env_t *env,
     axis2_char_t *property_key,
     sandesha2_seq_property_mgr_t *seq_prop_mgr);
 
-AXIS2_EXTERN axis2_status_t AXIS2_CALL
-sandesha2_seq_mgr_update_client_side_listener_if_needed(
-    const axutil_env_t *env,
-    axis2_msg_ctx_t *msg_ctx, 
-    axis2_char_t *addr_anon_uri);
-/******************************************************************************/
-
 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
-sandesha2_seq_mgr_setup_new_seq(
+sandesha2_seq_mgr_setup_new_rmd_sequence(
     const axutil_env_t *env,
     sandesha2_msg_ctx_t *create_seq_msg, 
     sandesha2_seq_property_mgr_t *seq_prop_mgr,
     sandesha2_next_msg_mgr_t *next_msg_mgr)
 {
-    axis2_char_t *seq_id = NULL;
+    axis2_char_t *rmd_sequence_id = NULL;
     axis2_endpoint_ref_t *to = NULL;
     axis2_endpoint_ref_t *reply_to = NULL;
     axis2_endpoint_ref_t *acks_to = NULL;
@@ -84,121 +76,171 @@
     axis2_char_t *spec_version = NULL;
     axis2_char_t *address = NULL;
     axis2_char_t *reply_to_addr = NULL;
-    axis2_char_t *internal_seq_id = NULL;
 
-    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
-        "[sandesha2]Entry:sandesha2_seq_mgr_setup_new_seq");
-    seq_id = axutil_uuid_gen(env);
+    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "[sandesha2]Entry:sandesha2_seq_mgr_setup_new_rmd_sequence");
+
+    rmd_sequence_id = axutil_uuid_gen(env);
     to = sandesha2_msg_ctx_get_to(create_seq_msg, env);
     if(!to)
     {
-        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "To is NULL");
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "To is NULL");
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_TO_IS_NULL, AXIS2_FAILURE);
         return NULL; 
     }
+
     reply_to = sandesha2_msg_ctx_get_reply_to(create_seq_msg, env);
     create_seq = sandesha2_msg_ctx_get_create_seq(create_seq_msg, env);
     if(!create_seq)
     {
-        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "Create Sequence Part is NULL");
-        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_CREATE_SEQ_PART_IS_NULL, 
-                AXIS2_FAILURE);
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Create Sequence Part is NULL");
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_CREATE_SEQ_PART_IS_NULL, AXIS2_FAILURE);
         return NULL; 
     }
+
     temp_acks_to = sandesha2_create_seq_get_acks_to(create_seq, env);
     temp_address = sandesha2_acks_to_get_address(temp_acks_to, env);
     acks_to = sandesha2_address_get_epr(temp_address, env);
     if(!acks_to)
     {
-        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "Acks To is NULL");
-        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_ACKS_TO_IS_NULL, 
-                AXIS2_FAILURE);
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Acks To is NULL");
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_ACKS_TO_IS_NULL, AXIS2_FAILURE);
         return NULL; 
     }
+
     msg_ctx = sandesha2_msg_ctx_get_msg_ctx(create_seq_msg, env);
     conf_ctx = axis2_msg_ctx_get_conf_ctx(msg_ctx, env);
-    received_msg_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id, 
-            SANDESHA2_SEQ_PROP_SERVER_COMPLETED_MESSAGES, "");
+
     /* Setting the addressing version */
     addressing_ns_value = sandesha2_msg_ctx_get_addr_ns_val(create_seq_msg, env);
-    addressing_ns_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id, 
+    addressing_ns_bean = sandesha2_seq_property_bean_create_with_data(env, rmd_sequence_id, 
             SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, addressing_ns_value);
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, addressing_ns_bean);
-    anonymous_uri = sandesha2_spec_specific_consts_get_anon_uri(env, 
-            addressing_ns_value); 
+    if(addressing_ns_bean)
+    {
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, addressing_ns_bean);
+        sandesha2_seq_property_bean_free(addressing_ns_bean, env);
+    }
+    anonymous_uri = sandesha2_spec_specific_consts_get_anon_uri(env, addressing_ns_value); 
+
     /* If no replyTo value. Send responses as sync. */
     if(reply_to)
     {
         reply_to_addr = (axis2_char_t*)axis2_endpoint_ref_get_address(reply_to, env);
-        to_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id, 
+        to_bean = sandesha2_seq_property_bean_create_with_data(env, rmd_sequence_id, 
                 SANDESHA2_SEQ_PROP_TO_EPR, reply_to_addr);
     }
     else
     {
-        to_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id, 
+        to_bean = sandesha2_seq_property_bean_create_with_data(env, rmd_sequence_id, 
                 SANDESHA2_SEQ_PROP_TO_EPR, anonymous_uri);
     }
+
+    if(to_bean)
+    {
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, to_bean);
+        sandesha2_seq_property_bean_free(to_bean, env);
+    }
+
     address = (axis2_char_t*)axis2_endpoint_ref_get_address(to, env);
-    reply_to_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id, 
+    reply_to_bean = sandesha2_seq_property_bean_create_with_data(env, rmd_sequence_id, 
         SANDESHA2_SEQ_PROP_REPLY_TO_EPR, address);
+    if(reply_to_bean)
+    {
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, reply_to_bean);
+        sandesha2_seq_property_bean_free(reply_to_bean, env);
+    }
+
     address = (axis2_char_t*)axis2_endpoint_ref_get_address(acks_to, env);
-    acks_to_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id, 
+    acks_to_bean = sandesha2_seq_property_bean_create_with_data(env, rmd_sequence_id, 
         SANDESHA2_SEQ_PROP_ACKS_TO_EPR, address);
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, received_msg_bean);
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, reply_to_bean);
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, acks_to_bean);
-    if(to_bean)
+
+    if(acks_to_bean)
     {
-        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, to_bean);
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, acks_to_bean);
+        sandesha2_seq_property_bean_free(acks_to_bean, env);
+    }
+
+    received_msg_bean = sandesha2_seq_property_bean_create_with_data(env, rmd_sequence_id, 
+            SANDESHA2_SEQ_PROP_SERVER_COMPLETED_MESSAGES, "");
+    if(received_msg_bean)
+    {
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, received_msg_bean);
+        sandesha2_seq_property_bean_free(received_msg_bean, env);
     }
-    next_msg_bean = sandesha2_next_msg_bean_create_with_data(env, seq_id, 1); 
+
+
+    next_msg_bean = sandesha2_next_msg_bean_create_with_data(env, rmd_sequence_id, 1); 
                                                     /* 1 will be the next */
-    internal_seq_id = sandesha2_utils_get_outgoing_internal_seq_id(env, seq_id);
-    sandesha2_next_msg_bean_set_internal_seq_id(next_msg_bean, env, 
-        internal_seq_id);
-    sandesha2_next_msg_mgr_insert(next_msg_mgr, env, next_msg_bean);
+    if(next_msg_bean)
+    {
+        axis2_char_t *internal_sequence_id = NULL;
+
+        internal_sequence_id = sandesha2_utils_get_internal_sequence_id(env, rmd_sequence_id);
+        if(internal_sequence_id)
+        {
+            sandesha2_next_msg_bean_set_internal_seq_id(next_msg_bean, env, internal_sequence_id);
+            AXIS2_FREE(env->allocator, internal_sequence_id);
+        }
+
+        sandesha2_next_msg_mgr_insert(next_msg_mgr, env, next_msg_bean);
+        sandesha2_next_msg_bean_free(next_msg_bean, env);
+    }
 
     /* Message to invoke. This will apply for only in-order invocations */
-    /*if(!axis2_msg_ctx_get_server_side(msg_ctx, env) || 
-        !sandesha2_utils_is_anon_uri(env, reply_to_addr))
-            sandesha2_utils_start_sender_for_seq(env, conf_ctx, seq_id);*/
+    /*if(!axis2_msg_ctx_get_server_side(msg_ctx, env) || !sandesha2_utils_is_anon_uri(env, 
+     * reply_to_addr))
+     * {
+     *   sandesha2_utils_start_sender_for_seq(env, conf_ctx, rmd_sequence_id);
+     *}*/
+
     /* Setting the RM Spec version for this sequence */
-    create_seq_msg_action = sandesha2_msg_ctx_get_wsa_action(create_seq_msg, 
-        env);
-    if(create_seq_msg_action == NULL)
+    create_seq_msg_action = sandesha2_msg_ctx_get_wsa_action(create_seq_msg, env);
+    if(!create_seq_msg_action)
     {
-        AXIS2_ERROR_SET(env->error, 
-            SANDESHA2_ERROR_CREATE_SEQ_MSG_DOES_NOT_HAVE_WSA_ACTION_VALUE, 
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_CREATE_SEQ_MSG_DOES_NOT_HAVE_WSA_ACTION_VALUE, 
             AXIS2_FAILURE);
+
         return NULL;
     }
+
     msg_rm_ns = sandesha2_create_seq_get_namespace_value(create_seq, env);
-    if(0 == axutil_strcmp(SANDESHA2_SPEC_2005_02_NS_URI, msg_rm_ns))
+
+    if(!axutil_strcmp(SANDESHA2_SPEC_2005_02_NS_URI, msg_rm_ns))
     {
         spec_version = axutil_strdup(env, SANDESHA2_SPEC_VERSION_1_0);
     }
-    else if(0 == axutil_strcmp(SANDESHA2_SPEC_2006_08_NS_URI, msg_rm_ns))
+    else if(!axutil_strcmp(SANDESHA2_SPEC_2007_02_NS_URI, msg_rm_ns))
     {
         spec_version = axutil_strdup(env, SANDESHA2_SPEC_VERSION_1_1);
     }
     else
     {
-        AXIS2_ERROR_SET(env->error, 
-            SANDESHA2_ERROR_CREATE_SEQ_MSG_DOES_NOT_HAVE_VALID_RM_NS_VALUE,
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_CREATE_SEQ_MSG_DOES_NOT_HAVE_VALID_RM_NS_VALUE,
             AXIS2_FAILURE);
+
         return NULL;
     }
+
     spec_version_bean = sandesha2_seq_property_bean_create(env);
-    sandesha2_seq_property_bean_set_seq_id(spec_version_bean, env, seq_id);
-    sandesha2_seq_property_bean_set_name(spec_version_bean, env, 
-            SANDESHA2_SEQ_PROP_RM_SPEC_VERSION);
-    sandesha2_seq_property_bean_set_value(spec_version_bean, env, spec_version);
+    if(spec_version_bean)
+    {
+        sandesha2_seq_property_bean_set_seq_id(spec_version_bean, env, rmd_sequence_id);
+        sandesha2_seq_property_bean_set_name(spec_version_bean, env, SANDESHA2_SEQ_PROP_RM_SPEC_VERSION);
+        sandesha2_seq_property_bean_set_value(spec_version_bean, env, spec_version);
    
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr,env, spec_version_bean);
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr,env, spec_version_bean);
+        sandesha2_seq_property_bean_free(spec_version_bean, env);
+    }
+
+    if(spec_version)
+    {
+        AXIS2_FREE(env->allocator, spec_version);
+    }
+
     /* TODO Get the SOAP version from the creaet sequence message */
-    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
-        "[sandesha2]Entry:sandesha2_seq_mgr_setup_new_seq");
-    return seq_id;
+
+    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "[sandesha2]Entry:sandesha2_seq_mgr_setup_new_rmd_sequence");
+
+    return rmd_sequence_id;
 }
        
 /**
@@ -219,15 +261,16 @@
     
     last_activated_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env, 
             property_key, SANDESHA2_SEQ_PROP_LAST_ACTIVATED_TIME);
+
     if(!last_activated_bean)
     {
         added = AXIS2_TRUE;
         last_activated_bean = sandesha2_seq_property_bean_create(env);
-        sandesha2_seq_property_bean_set_seq_id(last_activated_bean, env, 
-                property_key);
+        sandesha2_seq_property_bean_set_seq_id(last_activated_bean, env, property_key);
         sandesha2_seq_property_bean_set_name(last_activated_bean, env, 
                 SANDESHA2_SEQ_PROP_LAST_ACTIVATED_TIME);
     }
+
     current_time = sandesha2_utils_get_current_time_in_millis(env);
     sprintf(current_time_str, "%ld", current_time);
     sandesha2_seq_property_bean_set_value(last_activated_bean, env, current_time_str); 
@@ -250,7 +293,6 @@
 sandesha2_seq_mgr_has_seq_timedout(
     const axutil_env_t *env,
     axis2_char_t *property_key,
-    sandesha2_msg_ctx_t *rm_msg_ctx,
     sandesha2_seq_property_mgr_t *seq_prop_mgr,
     axis2_conf_ctx_t *conf_ctx)
 {
@@ -260,42 +302,35 @@
     long current_time = -1;
     long timeout_interval = -1;
     
-    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
-        "[sandesha2]Entry:sandesha2_seq_mgr_has_seq_timedout");
+    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "[sandesha2] Entry:sandesha2_seq_mgr_has_seq_timedout");
+
     AXIS2_PARAM_CHECK(env->error, property_key, AXIS2_FALSE);
-    AXIS2_PARAM_CHECK(env->error, rm_msg_ctx, AXIS2_FALSE);
     AXIS2_PARAM_CHECK(env->error, seq_prop_mgr, AXIS2_FALSE);
     
-    /* Avoid retrieving property bean from operation until it is availbale */
-    /*property_bean = sandesha2_utils_get_property_bean_from_op(env, 
-        axis2_msg_ctx_get_op(sandesha2_msg_ctx_get_msg_ctx(
-        rm_msg_ctx, env), env));*/
-    property_bean = sandesha2_utils_get_property_bean(env, 
-        axis2_conf_ctx_get_conf(conf_ctx, env));
-    timeout_interval = sandesha2_property_bean_get_inactive_timeout_interval(
-        property_bean, env);
+    property_bean = sandesha2_utils_get_property_bean(env, axis2_conf_ctx_get_conf(conf_ctx, env));
+    timeout_interval = sandesha2_property_bean_get_inactive_timeout_interval(property_bean, env);
     if(timeout_interval <= 0)
+    {
         return AXIS2_FALSE;
-    last_activated_time = sandesha2_seq_mgr_get_last_activated_time(env, 
-        property_key, seq_prop_mgr);
+    }
+
+    last_activated_time = sandesha2_seq_mgr_get_last_activated_time(env, property_key, seq_prop_mgr);
     current_time = sandesha2_utils_get_current_time_in_millis(env);
-    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]timeout_interval:%ld", 
-        timeout_interval);
-    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]last_activated_time:%ld", 
-        last_activated_time);
-    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]current_time:%ld", 
-        current_time);
-    if(last_activated_time > 0 && ((last_activated_time + timeout_interval) < 
-        current_time))
+
+    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]timeout_interval:%ld", timeout_interval);
+    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]last_activated_time:%ld", last_activated_time);
+    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]current_time:%ld", current_time);
+
+    if(last_activated_time > 0 && ((last_activated_time + timeout_interval) < current_time))
     {
         seq_timedout = AXIS2_TRUE;
     }
-    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
-        "[sandesha2]Exit:sandesha2_seq_mgr_has_seq_timedout");
+
+    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "[sandesha2] Exit:sandesha2_seq_mgr_has_seq_timedout");
+
     return seq_timedout;
 }
 
-
 long AXIS2_CALL
 sandesha2_seq_mgr_get_last_activated_time(
     const axutil_env_t *env,
@@ -323,13 +358,12 @@
 }
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
-sandesha2_seq_mgr_setup_new_client_seq(
+sandesha2_seq_mgr_setup_new_rms_sequence(
     const axutil_env_t *env,
     axis2_msg_ctx_t *first_app_msg,
-    axis2_char_t *int_seq_id,
+    axis2_char_t *internal_sequence_id,
     axis2_char_t *spec_version,
-    sandesha2_seq_property_mgr_t *seq_prop_mgr,
-    const axis2_bool_t persistent)
+    sandesha2_seq_property_mgr_t *seq_prop_mgr)
 {
     axis2_conf_ctx_t *conf_ctx = NULL;
     axis2_char_t *addr_ns_val = NULL;
@@ -341,21 +375,16 @@
     sandesha2_seq_property_bean_t *to_bean = NULL;
     sandesha2_seq_property_bean_t *reply_to_bean = NULL;
     sandesha2_seq_property_bean_t *acks_to_bean = NULL;
-    axis2_ctx_t *ctx = NULL;
-    /*axis2_options_t *options = NULL;*/
-    AXIS2_TRANSPORT_ENUMS transport_in_protocol = -1;
-    axis2_listener_manager_t *listener_manager = NULL;
     sandesha2_seq_property_bean_t *msgs_bean = NULL;
     axis2_char_t *transport_to = NULL;
     sandesha2_seq_property_bean_t *spec_version_bean = NULL;
     axis2_endpoint_ref_t *reply_to_epr = NULL;
-    axis2_char_t *addr = NULL;
-    axis2_endpoint_ref_t *epr = NULL;
+    axis2_bool_t is_svr_side = AXIS2_FALSE;
    
-    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
-        "Entry:sandesha2_seq_mgr_setup_new_client_seq");
+    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "Entry:sandesha2_seq_mgr_setup_new_rms_sequence");
+
     AXIS2_PARAM_CHECK(env->error, first_app_msg, AXIS2_FAILURE);
-    AXIS2_PARAM_CHECK(env->error, int_seq_id, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, internal_sequence_id, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, spec_version, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK(env->error, seq_prop_mgr, AXIS2_FAILURE);
     
@@ -363,194 +392,164 @@
     
     property = axis2_msg_ctx_get_property(first_app_msg, env, AXIS2_WSA_VERSION);
     if(property)
+    {
         addr_ns_val = axutil_property_get_value(property, env);
+    }
+
     if(!addr_ns_val)
     {
         axis2_op_ctx_t *op_ctx = NULL;
         axis2_msg_ctx_t *req_msg_ctx = NULL;
+
         op_ctx = axis2_msg_ctx_get_op_ctx(first_app_msg, env);
-        req_msg_ctx =  axis2_op_ctx_get_msg_ctx(op_ctx, env, 
-            AXIS2_WSDL_MESSAGE_LABEL_IN);
+        req_msg_ctx =  axis2_op_ctx_get_msg_ctx(op_ctx, env, AXIS2_WSDL_MESSAGE_LABEL_IN);
+
         if(req_msg_ctx)
         {
-            property = axis2_msg_ctx_get_property(req_msg_ctx, env, 
-                        AXIS2_WSA_VERSION);
+            property = axis2_msg_ctx_get_property(req_msg_ctx, env, AXIS2_WSA_VERSION);
             if(property)
+            {
                 addr_ns_val = axutil_property_get_value(property, env);
+            }
         }
     }
+
     if(!addr_ns_val)
+    {
         addr_ns_val = AXIS2_WSA_NAMESPACE;
+    }
         
-    addr_ns_bean = sandesha2_seq_property_bean_create_with_data(env, 
-                        int_seq_id, 
-                        SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE,
-                        addr_ns_val);
+    addr_ns_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+            SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, addr_ns_val);
+
     sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, addr_ns_bean);
+    if(addr_ns_bean)
+    {
+        sandesha2_seq_property_bean_free(addr_ns_bean, env);
+    }
+
     anon_uri = sandesha2_spec_specific_consts_get_anon_uri(env, addr_ns_val);
     
     to_epr = axis2_msg_ctx_get_to(first_app_msg, env);
-    property = axis2_msg_ctx_get_property(first_app_msg, env, 
-                        SANDESHA2_CLIENT_ACKS_TO);
+    property = axis2_msg_ctx_get_property(first_app_msg, env, SANDESHA2_CLIENT_ACKS_TO);
     if(property)
-        acks_to_str = axutil_property_get_value(property, env);
-    /*if(!to_epr)
     {
-        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] WSA To is NULL");
-        return AXIS2_FAILURE;
-    }*/
-   
+        acks_to_str = axutil_property_get_value(property, env);
+    }
+
     if (to_epr)
     {
-        to_bean = sandesha2_seq_property_bean_create_with_data(env, int_seq_id,
-                       SANDESHA2_SEQ_PROP_TO_EPR, 
-                       (axis2_char_t*)axis2_endpoint_ref_get_address(to_epr, 
+        to_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+                SANDESHA2_SEQ_PROP_TO_EPR, (axis2_char_t*)axis2_endpoint_ref_get_address(to_epr, 
                        env));
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, to_bean);
+        sandesha2_seq_property_bean_free(to_bean, env);
     }
     
-    if(axis2_msg_ctx_get_server_side(first_app_msg, env))
+    is_svr_side = axis2_msg_ctx_get_server_side(first_app_msg, env);
+
+    if(is_svr_side)
     {
         axis2_op_ctx_t *op_ctx = NULL;
         axis2_msg_ctx_t *req_msg_ctx = NULL;
         
         op_ctx = axis2_msg_ctx_get_op_ctx(first_app_msg, env);
-        req_msg_ctx =  axis2_op_ctx_get_msg_ctx(op_ctx, env, 
-            AXIS2_WSDL_MESSAGE_LABEL_IN);
+
+        req_msg_ctx =  axis2_op_ctx_get_msg_ctx(op_ctx, env, AXIS2_WSDL_MESSAGE_LABEL_IN);
         if(!req_msg_ctx)
         {
-            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Cannot find"
-                        " the request message from the operation context");
+            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, 
+                    "[sandesha2] Cannot find the request message from the operation context");
             return AXIS2_FAILURE;
         }
+
         reply_to_epr = axis2_msg_ctx_get_to(req_msg_ctx, env);
-        /*ctx = axis2_op_ctx_get_base(op_ctx, env);
-        property = axis2_ctx_get_property(ctx, env, 
-                SANDESHA2_SEQ_PROP_REPLY_TO_EPR, AXIS2_FALSE);
-        reply_to_epr = axutil_property_get_value(property, env);*/
+
         if(reply_to_epr)
-            reply_to_bean = sandesha2_seq_property_bean_create_with_data(env,
-                        int_seq_id, SANDESHA2_SEQ_PROP_REPLY_TO_EPR,
-                        (axis2_char_t*)axis2_endpoint_ref_get_address(
-                        reply_to_epr, env));
+        {
+            const axis2_char_t *temp_epr_addr = axis2_endpoint_ref_get_address(reply_to_epr, env);
+            
+            if(temp_epr_addr)
+            {
+                AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "temp_epr_address:%s", temp_epr_addr);
+                acks_to_str = (axis2_char_t *) temp_epr_addr;
+                reply_to_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+                    SANDESHA2_SEQ_PROP_REPLY_TO_EPR, (axis2_char_t*) temp_epr_addr);
+                sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, reply_to_bean);
+                sandesha2_seq_property_bean_free(reply_to_bean, env);
+            }
+        }
         else
         {
-            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Cannot get"\
-                " request message from the operation context");
+            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, 
+                    "[sandesha2] Cannot get request message from the operation context");
+
             return AXIS2_FAILURE;
         }        
     }
-    else
+    else /* Not server side */
     {
         reply_to_epr = axis2_msg_ctx_get_reply_to(first_app_msg, env);
-        /* Set replyTo bean */
+
         if(reply_to_epr)
         {
-            reply_to_bean = sandesha2_seq_property_bean_create_with_data(env,
-                        int_seq_id, SANDESHA2_SEQ_PROP_REPLY_TO_EPR,
-                        (axis2_char_t*)axis2_endpoint_ref_get_address(
-                        reply_to_epr, env));
-
+            const axis2_char_t *temp_epr_addr = axis2_endpoint_ref_get_address(reply_to_epr, env);
+            if(temp_epr_addr)
+            {
+                AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "temp_epr_address:%s", temp_epr_addr);
+                reply_to_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+                    SANDESHA2_SEQ_PROP_REPLY_TO_EPR, (axis2_char_t*) temp_epr_addr);
+                sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, reply_to_bean);
+                sandesha2_seq_property_bean_free(reply_to_bean, env);
+            }
         } 
     }
+
     if(!acks_to_str)
+    {
         acks_to_str = anon_uri;
-    
-    acks_to_bean = sandesha2_seq_property_bean_create_with_data(env,
-                        int_seq_id, SANDESHA2_SEQ_PROP_ACKS_TO_EPR,
-                        acks_to_str);
-    if(!axis2_msg_ctx_get_server_side(first_app_msg, env) && 
-        !sandesha2_utils_is_anon_uri(env, acks_to_str))
-    {
-        ctx = axis2_msg_ctx_get_base(first_app_msg, env);
-        /* TODO currently axis2 doesn't expose the *options* at msg ctx level.
-         * Once it is finished change to get from there
-         */
-        /*options = AXIS2_CTX_GET_OPTIONS(ctx, env);
-        transport_in_protocol = axis2_options_get_transport_in_protocol(options, env);*/
-        transport_in_protocol = AXIS2_TRANSPORT_ENUM_HTTP;
-            
-        axis2_listener_manager_make_sure_started(listener_manager, env, 
-                        transport_in_protocol, conf_ctx);
     }
     
-    msgs_bean = sandesha2_seq_property_bean_create_with_data(env, int_seq_id, 
+    acks_to_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+            SANDESHA2_SEQ_PROP_ACKS_TO_EPR, acks_to_str);
+
+    msgs_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
                         SANDESHA2_SEQ_PROP_CLIENT_COMPLETED_MESSAGES, "");
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, msgs_bean);
-    if (to_bean)
+    if(msgs_bean)
     {
-        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, to_bean);
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, msgs_bean);
+        sandesha2_seq_property_bean_free(msgs_bean, env);
     }
     
     if(acks_to_bean)
+    {
         sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, acks_to_bean);
-    if(reply_to_bean)
-        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, reply_to_bean);
-        
-    
+        sandesha2_seq_property_bean_free(acks_to_bean, env);
+    }
+
     transport_to = axis2_msg_ctx_get_transport_url(first_app_msg, env);
     
     if(transport_to)
     {
         sandesha2_seq_property_bean_t *transport_to_bean = NULL;
-        transport_to_bean = sandesha2_seq_property_bean_create_with_data(env,
-                        int_seq_id, SANDESHA2_SEQ_PROP_TRANSPORT_TO,
-                        transport_to);
+        transport_to_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+                SANDESHA2_SEQ_PROP_TRANSPORT_TO, transport_to);
+
         sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, transport_to_bean);
     }
-    spec_version_bean = sandesha2_seq_property_bean_create_with_data(env,
-                        int_seq_id, SANDESHA2_SEQ_PROP_RM_SPEC_VERSION,
-                        spec_version);
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, spec_version_bean);
-    sandesha2_seq_mgr_update_last_activated_time(env, int_seq_id, seq_prop_mgr);
-    epr = axis2_msg_ctx_get_to(first_app_msg, env);
-    if(epr)
-        addr = (axis2_char_t*)axis2_endpoint_ref_get_address(
-            epr, env);
-    if(!axis2_msg_ctx_get_server_side(first_app_msg, env) ||
-        !sandesha2_utils_is_anon_uri(env, addr))
-    {
-        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, 
-            "[sandesha2] Calling function sandesha2_utils_start_sender_for_seq()");
-        sandesha2_utils_start_sender_for_seq(env, conf_ctx, int_seq_id, 
-            persistent);
-    }
-    sandesha2_seq_mgr_update_client_side_listener_if_needed(env, first_app_msg,
-        anon_uri);
-    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
-        "Exit:sandesha2_seq_mgr_setup_new_client_seq");
-    return AXIS2_SUCCESS;
-}
 
-AXIS2_EXTERN axis2_status_t AXIS2_CALL
-sandesha2_seq_mgr_update_client_side_listener_if_needed(
-    const axutil_env_t *env,
-    axis2_msg_ctx_t *msg_ctx, 
-    axis2_char_t *addr_anon_uri)
-{
-    axis2_char_t *transport_in_protocol = NULL;
-    axis2_ctx_t *ctx = NULL;
-    /*axis2_options_t *options = NULL;*/
-    axis2_char_t *acks_to = NULL;
-    axutil_property_t *property = NULL;
-    
-    AXIS2_PARAM_CHECK(env->error, msg_ctx, AXIS2_FAILURE);
-    AXIS2_PARAM_CHECK(env->error, addr_anon_uri, AXIS2_FAILURE);
-    
-    if(!axis2_msg_ctx_get_server_side(msg_ctx, env))
-        return AXIS2_SUCCESS;
-    
-    ctx = axis2_msg_ctx_get_base(msg_ctx, env);
-    /* TODO currently axis2 doesn't expose the *options* at msg ctx level.
-     * Once it is finished change to get from there
-     */
-    /* options = AXIS2_CTX_GET_OPTIONS(ctx, env);
-    transport_in_protocol = axis2_options_get_transport_in_protocol(options, env);*/
-    transport_in_protocol = AXIS2_TRANSPORT_HTTP;
-    property = axis2_msg_ctx_get_property(msg_ctx, env, SANDESHA2_CLIENT_ACKS_TO);
-    if(property)
-        acks_to = axutil_property_get_value(property, env);
-    
-    
+    spec_version_bean = sandesha2_seq_property_bean_create_with_data(env, internal_sequence_id, 
+            SANDESHA2_SEQ_PROP_RM_SPEC_VERSION, spec_version);
+    if(spec_version_bean)
+    {
+        sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, spec_version_bean);
+        sandesha2_seq_property_bean_free(spec_version_bean, env);
+    }
+
+    sandesha2_seq_mgr_update_last_activated_time(env, internal_sequence_id, seq_prop_mgr);
+
+    AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "Exit:sandesha2_seq_mgr_setup_new_rms_sequence");
+
     return AXIS2_SUCCESS;
 }
 

Modified: webservices/sandesha/trunk/c/src/util/spec_specific_consts.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/spec_specific_consts.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/spec_specific_consts.c (original)
+++ webservices/sandesha/trunk/c/src/util/spec_specific_consts.c Thu Aug 28 23:56:29 2008
@@ -32,7 +32,7 @@
     {
         return SANDESHA2_SPEC_VERSION_1_0;
     }
-    else if(0 == axutil_strcmp(ns_val, SANDESHA2_SPEC_2006_08_NS_URI))
+    else if(0 == axutil_strcmp(ns_val, SANDESHA2_SPEC_2007_02_NS_URI))
     {
         return SANDESHA2_SPEC_VERSION_1_1;
     }
@@ -58,7 +58,7 @@
     }
     if(0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_ver))
     {
-        return SANDESHA2_SPEC_2006_08_NS_URI;
+        return SANDESHA2_SPEC_2007_02_NS_URI;
     }
     return NULL;
 }
@@ -125,7 +125,7 @@
     if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_0, spec_version)) 
         return SANDESHA2_SPEC_2005_02_ACTION_TERMINATE_SEQ;
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ;
+        return SANDESHA2_SPEC_2007_02_ACTION_TERMINATE_SEQ;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -142,7 +142,7 @@
         return SANDESHA2_SPEC_2005_02_ACTION_CREATE_SEQ;
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ;
+        return SANDESHA2_SPEC_2007_02_ACTION_CREATE_SEQ;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -159,7 +159,7 @@
         return SANDESHA2_SPEC_2005_02_ACTION_CREATE_SEQ_RESPONSE;
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ_RESPONSE;
+        return SANDESHA2_SPEC_2007_02_ACTION_CREATE_SEQ_RESPONSE;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -178,7 +178,7 @@
         return NULL;
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_CLOSE_SEQ;
+        return SANDESHA2_SPEC_2007_02_ACTION_CLOSE_SEQ;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -197,7 +197,7 @@
         return NULL;
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_CLOSE_SEQ_RESPONSE;
+        return SANDESHA2_SPEC_2007_02_ACTION_CLOSE_SEQ_RESPONSE;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -218,7 +218,7 @@
         return NULL;
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_ACK_REQUEST;
+        return SANDESHA2_SPEC_2007_02_ACTION_ACK_REQUEST;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
             AXIS2_FAILURE);
@@ -268,7 +268,7 @@
     if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_0, spec_version)) 
         return SANDESHA2_SPEC_2005_02_SOAP_ACTION_TERMINATE_SEQ;
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_SOAP_ACTION_TERMINATE_SEQ;
+        return SANDESHA2_SPEC_2007_02_SOAP_ACTION_TERMINATE_SEQ;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -289,7 +289,7 @@
     }
     else if(0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version))
     {
-        return SANDESHA2_SPEC_2006_08_SOAP_ACTION_ACK_REQUEST;
+        return SANDESHA2_SPEC_2007_02_SOAP_ACTION_ACK_REQUEST;
     }
     else
     {
@@ -323,11 +323,10 @@
         const axutil_env_t *env,
         axis2_char_t *spec_version)
 {
-    AXIS2_ENV_CHECK(env, NULL);
     AXIS2_PARAM_CHECK(env->error, spec_version, NULL);
     
     if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ_RESPONSE;
+        return SANDESHA2_SPEC_2007_02_ACTION_TERMINATE_SEQ_RESPONSE;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -345,7 +344,7 @@
         return SANDESHA2_SPEC_2005_02_ACTION_SEQ_ACKNOWLEDGEMENT;
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_SEQ_ACKNOWLEDGEMENT;
+        return SANDESHA2_SPEC_2007_02_ACTION_SEQ_ACKNOWLEDGEMENT;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);
@@ -363,7 +362,7 @@
     }
     else if(0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version))
     {
-        return SANDESHA2_SPEC_2006_08_SOAP_ACTION_SEQ_ACKNOWLEDGEMENT;
+        return SANDESHA2_SPEC_2007_02_SOAP_ACTION_SEQ_ACKNOWLEDGEMENT;
     }
     else
     {
@@ -385,7 +384,7 @@
                 AXIS2_FAILURE);
     }
     else if (0 == axutil_strcmp(SANDESHA2_SPEC_VERSION_1_1, spec_version)) 
-        return SANDESHA2_SPEC_2006_08_ACTION_MAKE_CONNECTION;
+        return SANDESHA2_SPEC_2007_02_ACTION_MAKE_CONNECTION;
     else
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNKNOWN_SPEC_ERROR_MESSAGE, 
                 AXIS2_FAILURE);



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