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 sa...@apache.org on 2006/07/28 14:31:40 UTC

svn commit: r426490 - in /webservices/sandesha/trunk/c: include/ include/sandesha2/ src/core/ src/handlers/ src/msgprocessors/ src/storage/beans/ src/storage/inmemory/ src/util/ src/workers/ src/wsrm/

Author: sahan
Date: Fri Jul 28 05:31:38 2006
New Revision: 426490

URL: http://svn.apache.org/viewvc?rev=426490&view=rev
Log:
Fixing some bugs

Modified:
    webservices/sandesha/trunk/c/include/sandesha2/sandesha2_error.h
    webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h
    webservices/sandesha/trunk/c/src/core/mod_sandesha2.c
    webservices/sandesha/trunk/c/src/core/msg_ctx.c
    webservices/sandesha/trunk/c/src/handlers/sandesha2_global_in_handler.c
    webservices/sandesha/trunk/c/src/handlers/sandesha2_in_handler.c
    webservices/sandesha/trunk/c/src/handlers/sandesha2_out_handler.c
    webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
    webservices/sandesha/trunk/c/src/storage/beans/create_seq_bean.c
    webservices/sandesha/trunk/c/src/storage/beans/invoker_bean.c
    webservices/sandesha/trunk/c/src/storage/beans/next_msg_bean.c
    webservices/sandesha/trunk/c/src/storage/beans/sender_bean.c
    webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c
    webservices/sandesha/trunk/c/src/storage/inmemory/create_seq_mgr.c
    webservices/sandesha/trunk/c/src/storage/inmemory/invoker_mgr.c
    webservices/sandesha/trunk/c/src/storage/inmemory/next_msg_mgr.c
    webservices/sandesha/trunk/c/src/storage/inmemory/sender_mgr.c
    webservices/sandesha/trunk/c/src/storage/inmemory/seq_property_mgr.c
    webservices/sandesha/trunk/c/src/storage/inmemory/storage_mgr.c
    webservices/sandesha/trunk/c/src/util/ack_mgr.c
    webservices/sandesha/trunk/c/src/util/msg_creator.c
    webservices/sandesha/trunk/c/src/util/msg_init.c
    webservices/sandesha/trunk/c/src/util/seq_mgr.c
    webservices/sandesha/trunk/c/src/util/utils.c
    webservices/sandesha/trunk/c/src/workers/in_order_invoker.c
    webservices/sandesha/trunk/c/src/workers/sender.c
    webservices/sandesha/trunk/c/src/wsrm/acks_to.c
    webservices/sandesha/trunk/c/src/wsrm/sequence.c

Modified: webservices/sandesha/trunk/c/include/sandesha2/sandesha2_error.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2/sandesha2_error.h?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2/sandesha2_error.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2/sandesha2_error.h Fri Jul 28 05:31:38 2006
@@ -39,6 +39,7 @@
     *
     * Set of error codes for Sandesha2
     */
+    typedef enum sandesha2_error_codes sandesha2_error_codes_t;
     enum sandesha2_error_codes
     { 
         /* No error */

Modified: webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h Fri Jul 28 05:31:38 2006
@@ -66,6 +66,13 @@
         axis2_char_t *property_key,
         sandesha2_msg_ctx_t *rm_msg_ctx,
         sandesha2_storage_mgr_t *storage_mgr);
+        
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+sandesha2_seq_mgr_setup_new_client_seq(const axis2_env_t *env,
+                        axis2_msg_ctx_t *first_app_msg,
+                        axis2_char_t *int_seq_id,
+                        axis2_char_t *spec_version,
+                        sandesha2_storage_mgr_t *storage_mgr);
 
 /** @} */
 #ifdef __cplusplus

Modified: webservices/sandesha/trunk/c/src/core/mod_sandesha2.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/core/mod_sandesha2.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/core/mod_sandesha2.c (original)
+++ webservices/sandesha/trunk/c/src/core/mod_sandesha2.c Fri Jul 28 05:31:38 2006
@@ -79,7 +79,7 @@
                         (env);
     property_bean = sandesha2_property_mgr_load_properties_from_module_desc(env,
                         module_desc);
-    if(NULL == property_bean)
+    /*if(NULL == property_bean) */
         property_bean = const_property_bean;
         
     param = axis2_param_create(env, SANDESHA2_SANDESHA_PROPERTY_BEAN, 

Modified: webservices/sandesha/trunk/c/src/core/msg_ctx.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/core/msg_ctx.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/core/msg_ctx.c (original)
+++ webservices/sandesha/trunk/c/src/core/msg_ctx.c Fri Jul 28 05:31:38 2006
@@ -30,12 +30,12 @@
 struct sandesha2_msg_ctx_impl
 {
     sandesha2_msg_ctx_t rm_msg_ctx;
-	axis2_msg_ctx_t *msg_ctx;
     axis2_hash_t *msg_parts;
     int msg_type;
     axis2_char_t *rm_ns_val;
     axis2_char_t *addr_ns_val;
     axis2_char_t *spec_ver;
+	axis2_msg_ctx_t *msg_ctx;
 };
 
 #define SANDESHA2_INTF_TO_IMPL(rm_msg_ctx) \
@@ -202,6 +202,7 @@
     msg_ctx_impl->rm_ns_val = NULL;
     msg_ctx_impl->addr_ns_val = NULL;
     msg_ctx_impl->msg_parts = NULL;
+    msg_ctx_impl->msg_ctx = NULL;
     msg_ctx_impl->spec_ver = NULL;
     msg_ctx_impl->rm_msg_ctx.ops = NULL;
     
@@ -216,6 +217,8 @@
     
     msg_ctx_impl->msg_parts = axis2_hash_make(env);
     msg_ctx_impl->msg_type = SANDESHA2_MSG_TYPE_UNKNOWN;
+    msg_ctx_impl->msg_ctx = msg_ctx;
+
     
     msg_ctx_impl->rm_msg_ctx.ops->set_msg_ctx = sandesha2_msg_ctx_set_msg_ctx;
     msg_ctx_impl->rm_msg_ctx.ops->get_msg_ctx = sandesha2_msg_ctx_get_msg_ctx;

Modified: webservices/sandesha/trunk/c/src/handlers/sandesha2_global_in_handler.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/handlers/sandesha2_global_in_handler.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/handlers/sandesha2_global_in_handler.c (original)
+++ webservices/sandesha/trunk/c/src/handlers/sandesha2_global_in_handler.c Fri Jul 28 05:31:38 2006
@@ -181,7 +181,7 @@
                         req_msg_ctx))
                     {
                         /* TODO we need to notify the listners */
-                        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+                        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
                         return AXIS2_SUCCESS;
                     }
                 }

Modified: webservices/sandesha/trunk/c/src/handlers/sandesha2_in_handler.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/handlers/sandesha2_in_handler.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/handlers/sandesha2_in_handler.c (original)
+++ webservices/sandesha/trunk/c/src/handlers/sandesha2_in_handler.c Fri Jul 28 05:31:38 2006
@@ -147,7 +147,7 @@
     if(AXIS2_SUCCESS != AXIS2_ERROR_GET_STATUS_CODE(env->error))
     {
         /* Message should not be sent in an exception situation */
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         if(AXIS2_TRUE != within_transaction)
         {
             axis2_property_t *prop = NULL;
@@ -187,7 +187,7 @@
     if(AXIS2_SUCCESS != AXIS2_ERROR_GET_STATUS_CODE(env->error))
     {
         /* Message should not be sent in an exception situation */
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         if(AXIS2_TRUE != within_transaction)
         {
             axis2_property_t *prop = NULL;

Modified: webservices/sandesha/trunk/c/src/handlers/sandesha2_out_handler.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/handlers/sandesha2_out_handler.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/handlers/sandesha2_out_handler.c (original)
+++ webservices/sandesha/trunk/c/src/handlers/sandesha2_out_handler.c Fri Jul 28 05:31:38 2006
@@ -114,7 +114,8 @@
     ctx = AXIS2_MSG_CTX_GET_BASE(msg_ctx, env);
     temp_prop = AXIS2_CTX_GET_PROPERTY(ctx, env, 
             SANDESHA2_APPLICATION_PROCESSING_DONE, AXIS2_FALSE);
-    str_done = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(temp_prop, env); 
+    if(NULL != temp_prop)
+        str_done = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(temp_prop, env); 
     if(str_done && 0 == AXIS2_STRCMP(SANDESHA2_VALUE_TRUE, str_done))
     {
         AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, 
@@ -130,7 +131,9 @@
     storage_mgr = sandesha2_utils_get_storage_mgr(env, conf_ctx, conf);
     temp_prop = AXIS2_CTX_GET_PROPERTY(ctx, env, 
             SANDESHA2_WITHIN_TRANSACTION, AXIS2_FALSE);
-    within_transaction_str = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(temp_prop, env);
+    if(NULL != temp_prop)
+        within_transaction_str = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(
+                        temp_prop, env);
     if(within_transaction_str && 0 == AXIS2_STRCMP(SANDESHA2_VALUE_TRUE, 
                 within_transaction_str))
     {
@@ -151,7 +154,8 @@
     rm_msg_ctx = sandesha2_msg_init_init_msg(env, msg_ctx);
     temp_prop = AXIS2_CTX_GET_PROPERTY(ctx, env, SANDESHA2_CLIENT_DUMMY_MESSAGE, 
             AXIS2_FALSE);
-    dummy_msg_str = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(temp_prop, env); 
+    if(NULL != temp_prop)
+        dummy_msg_str = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(temp_prop, env); 
     if(dummy_msg_str && 0 == AXIS2_STRCMP(SANDESHA2_VALUE_TRUE, dummy_msg_str))
     {
         dummy_msg = AXIS2_TRUE;
@@ -196,7 +200,7 @@
     if(AXIS2_SUCCESS != AXIS2_ERROR_GET_STATUS_CODE(env->error))
     {
         /* Message should not be sent in an exception situation */
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         /* Rolling back the transaction */
         if(AXIS2_TRUE != within_transaction)
         {

Modified: webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c Fri Jul 28 05:31:38 2006
@@ -214,7 +214,7 @@
         engine = axis2_engine_create(env, conf_ctx);
         AXIS2_ENGINE_SEND_FAULT(engine, env, SANDESHA2_MSG_CTX_GET_MSG_CTX(
                         fault_msg_ctx, env));
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
     }
     fault_msg_ctx = SANDESHA2_FAULT_MGR_CHECK_FOR_INVALID_ACK(fault_mgr, env,
                         rm_msg_ctx, storage_mgr);
@@ -224,7 +224,7 @@
         engine = axis2_engine_create(env, conf_ctx);
         AXIS2_ENGINE_SEND_FAULT(engine, env, SANDESHA2_MSG_CTX_GET_MSG_CTX(
                         fault_msg_ctx, env));
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSE(msg_ctx, env, AXIS2_TRUE);
     }
     int_seq_id = sandesha2_utils_get_seq_property(env, out_seq_id, 
                         SANDESHA2_SEQ_PROP_INTERNAL_SEQ_ID, storage_mgr);

Modified: webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c Fri Jul 28 05:31:38 2006
@@ -379,7 +379,7 @@
             return AXIS2_FAILURE;
         }
         sandesha2_utils_start_sender_for_seq(env, conf_ctx, seq_id);
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
     }
     return AXIS2_SUCCESS;
 }

Modified: webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c Fri Jul 28 05:31:38 2006
@@ -283,7 +283,7 @@
                         AXIS2_FAILURE);
             return AXIS2_FAILURE;
         }
-        AXIS2_MSG_CTX_PAUSE(msg_ctx1, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx1, env, AXIS2_TRUE);
         return AXIS2_SUCCESS;
     }
     seq_prop_mgr = SANDESHA2_STORAGE_MGR_GET_SEQ_PROPERTY_MGR(
@@ -305,7 +305,7 @@
                         AXIS2_FAILURE);
             return AXIS2_FAILURE;
         }
-        AXIS2_MSG_CTX_PAUSE(msg_ctx1, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx1, env, AXIS2_TRUE);
         return AXIS2_SUCCESS;
     }
     SANDESHA2_SEQ_SET_MUST_UNDERSTAND(seq, env, AXIS2_FALSE);
@@ -322,7 +322,7 @@
                         AXIS2_FAILURE);
             return AXIS2_FAILURE;
         }
-        AXIS2_MSG_CTX_PAUSE(msg_ctx1, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx1, env, AXIS2_TRUE);
         return AXIS2_SUCCESS;
     }
     sandesha2_seq_mgr_update_last_activated_time(env, str_seq_id, 
@@ -400,7 +400,7 @@
                         0 == AXIS2_STRCMP(SANDESHA2_QOS_DEFAULT_INVOCATION_TYPE, 
                         SANDESHA2_QOS_EXACTLY_ONCE))
     {
-        SANDESHA2_MSG_CTX_PAUSE(msg_ctx, env);
+        SANDESHA2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
     }
     if(NULL != msgs_str && 0 < AXIS2_STRLEN(msgs_str))
         msgs_str = axis2_strcat(env, msgs_str, ",", msg_num_str);
@@ -477,7 +477,7 @@
         SANDESHA2_MSG_CTX_SET_PROPERTY(msg_ctx, env, 
                         SANDESHA2_APPLICATION_PROCESSING_DONE, 
                         SANDESHA2_VALUE_TRUE);
-        SANDESHA2_MSG_CTX_PAUSE(msg_ctx, env);
+        SANDESHA2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         /* Start the invoker if stopped */
         sandesha2_utils_start_invoker_for_seq(env, conf_ctx, str_seq_id);
     }
@@ -529,7 +529,7 @@
                         AXIS2_CONF_CTX_GET_CONF(conf_ctx, env));
     seq_prop_mgr = SANDESHA2_STORAGE_MGR_GET_SEQ_PROPERTY_MGR(
                         storage_man, env);
-    is_svr_side = AXIS2_MSG_CTX_IS_SERVER_SIDE(msg_ctx1, env);
+    is_svr_side = AXIS2_MSG_CTX_GET_SERVER_SIDE(msg_ctx1, env);
     
     to_epr = AXIS2_MSG_CTX_GET_TO(msg_ctx1, env);
     if(NULL == to_epr || NULL == AXIS2_ENDPOINT_REF_GET_ADDRESS(to_epr, env)
@@ -542,7 +542,7 @@
     }
     
     if(NULL == AXIS2_MSG_CTX_GET_MSG_ID(msg_ctx1, env))
-        AXIS2_MSG_CTX_SET_MSG_ID(axis2_uuid_gen(env));
+        AXIS2_MSG_CTX_SET_MESSAGE_ID(msg_ctx1, env, axis2_uuid_gen(env));
     storage_key = axis2_uuid_gen(env);
     
     if(AXIS2_TRUE == is_svr_side)
@@ -598,8 +598,8 @@
                         SANDESHA2_CLIENT_SEQ_KEY, AXIS2_FALSE);
         if(NULL != property)
             seq_key = AXIS2_PROPERTY_GET_VALUE(property, env);
-        internal_seq_id = sandesha2_utils_get_outgoing_internal_seq_id(env, 
-                        seq_key);
+        internal_seq_id = sandesha2_utils_get_internal_seq_id(env, 
+                        to, seq_key);
         property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx1, env, 
                         SANDESHA2_CLIENT_LAST_MESSAGE, AXIS2_FALSE);
         if(NULL != property)
@@ -611,14 +611,16 @@
     property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx1, env, 
                         SANDESHA2_CLIENT_MESSAGE_NUMBER, AXIS2_FALSE);
     if(NULL != property)
-        msg_num_lng = *(long*)(AXIS2_PROPERTY_GET_VALUE(property, env));
-    if(msg_num_lng <= 0)
     {
-        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Invalid message number");
-        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_INVALID_MSG_NUM, 
+        msg_num_lng = *(long*)(AXIS2_PROPERTY_GET_VALUE(property, env));
+        if(msg_num_lng <= 0)
+        {
+            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Invalid message number");
+            AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_INVALID_MSG_NUM, 
                         AXIS2_FAILURE);
-        return AXIS2_FAILURE;
-    }
+            return AXIS2_FAILURE;
+        }
+    }    
     system_msg_num = sandesha2_app_msg_processor_get_prev_msg_no(msg_processor,
                         env, internal_seq_id, storage_man);
     if(msg_num_lng >= 0 && msg_num_lng <= system_msg_num)
@@ -886,7 +888,7 @@
         sandesha2_app_msg_processor_process_response_msg(msg_processor, env,
                         msg_ctx, internal_seq_id, msg_number, storage_key, 
                         storage_man);
-    AXIS2_MSG_CTX_PAUSE(msg_ctx1, env);    
+    AXIS2_MSG_CTX_SET_PAUSED(msg_ctx1, env, AXIS2_TRUE);    
     return AXIS2_SUCCESS;
 }
     
@@ -983,7 +985,6 @@
     axis2_char_t *anon_uri = NULL;
     axis2_char_t *str_key = NULL;
     sandesha2_sender_bean_t *create_seq_entry = NULL;
-    struct AXIS2_PLATFORM_TIMEB t1;
     long millisecs = 0;
     axis2_transport_out_desc_t *orig_trans_out = NULL;
     axis2_transport_out_desc_t *trans_out = NULL;
@@ -1052,8 +1053,7 @@
     create_seq_entry = sandesha2_sender_bean_create(env);
     SANDESHA2_SENDER_BEAN_SET_MSG_CONTEXT_REF_KEY(create_seq_entry, env, 
                         str_key);
-    AXIS2_PLATFORM_GET_TIME_IN_MILLIS(&t1);
-    millisecs = 1000 * (t1.time) + t1.millitm;
+    millisecs = sandesha2_utils_get_current_time_in_millis(env);
     SANDESHA2_SENDER_BEAN_SET_TIME_TO_SEND(create_seq_entry, env, millisecs);
     SANDESHA2_SENDER_BEAN_SET_MSG_ID(create_seq_entry, env, 
                         SANDESHA2_MSG_CTX_GET_MSG_ID(create_seq_rm_msg, env));
@@ -1128,7 +1128,6 @@
     axis2_msg_ctx_t *req_msg = NULL;
     axis2_char_t *str_identifier = NULL;
     sandesha2_sender_bean_t *app_msg_entry = NULL;
-    struct AXIS2_PLATFORM_TIMEB t1;
     long millisecs = 0;
     axis2_property_t *property = NULL;
     axis2_transport_sender_t *trs_sender = NULL;
@@ -1152,7 +1151,7 @@
                         internal_seq_id, SANDESHA2_SEQ_PROP_REPLY_TO_EPR);
     out_seq_bean = SANDESHA2_SEQ_PROPERTY_MGR_RETRIEVE(seq_prop_mgr, env, 
                         internal_seq_id, SANDESHA2_SEQ_PROP_OUT_SEQ_ID);
-    if(NULL != to_bean)
+    if(NULL == to_bean)
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] To is NULL");
         AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_NULL_TO, AXIS2_FAILURE);
@@ -1165,12 +1164,12 @@
                         SANDESHA2_SEQ_PROPERTY_BEAN_GET_VALUE(reply_to_bean, 
                         env));
 
-    req_msg = AXIS2_OP_CTX_GET_MSG_CTX(AXIS2_MSG_CTX_GET_OP_CTX(msg, env), 
-                        env, AXIS2_WSDL_MESSAGE_LABEL_IN_VALUE);
-    if(AXIS2_TRUE == AXIS2_MSG_CTX_IS_SERVER_SIDE(msg, env))
+    if(AXIS2_TRUE == AXIS2_MSG_CTX_GET_SERVER_SIDE(msg, env))
     {
         axis2_endpoint_ref_t *reply_to = NULL;
         
+        req_msg = AXIS2_OP_CTX_GET_MSG_CTX(AXIS2_MSG_CTX_GET_OP_CTX(msg, env), 
+                        env, AXIS2_WSDL_MESSAGE_LABEL_IN_VALUE);
         reply_to = AXIS2_MSG_CTX_GET_REPLY_TO(req_msg, env);
         new_to_str = AXIS2_ENDPOINT_REF_GET_ADDRESS(reply_to, env);
     }
@@ -1196,7 +1195,7 @@
     SANDESHA2_MSG_NUMBER_SET_MSG_NUM(msg_number, env, msg_num);
     SANDESHA2_SEQ_SET_MSG_NUM(seq, env, msg_number);
     
-    if(AXIS2_TRUE == AXIS2_MSG_CTX_IS_SERVER_SIDE(msg, env))
+    if(AXIS2_TRUE == AXIS2_MSG_CTX_GET_SERVER_SIDE(msg, env))
     {
         req_rm_msg = sandesha2_msg_init_init_msg(env, req_msg);
         req_seq = (sandesha2_seq_t*)SANDESHA2_MSG_CTX_GET_MSG_PART(req_rm_msg, 
@@ -1260,20 +1259,19 @@
     app_msg_entry = sandesha2_sender_bean_create(env);
     SANDESHA2_SENDER_BEAN_SET_MSG_CONTEXT_REF_KEY(app_msg_entry, env, 
                         storage_key);
-    AXIS2_PLATFORM_GET_TIME_IN_MILLIS(&t1);
-    millisecs = 1000 * (t1.time) + t1.millitm;
+    millisecs = sandesha2_utils_get_current_time_in_millis(env);
     SANDESHA2_SENDER_BEAN_SET_TIME_TO_SEND(app_msg_entry, env, millisecs);
     SANDESHA2_SENDER_BEAN_SET_MSG_ID(app_msg_entry, env, 
                         SANDESHA2_MSG_CTX_GET_MSG_ID(msg_ctx, env));
-    SANDESHA2_MSG_CTX_SET_MSG_NUMBER(app_msg_entry, env, msg_num);
-    SANDESHA2_MSG_CTX_SET_MSG_TYPE(app_msg_entry, env, 
+    SANDESHA2_SENDER_BEAN_SET_MSG_NO(app_msg_entry, env, msg_num);
+    SANDESHA2_SENDER_BEAN_SET_MSG_TYPE(app_msg_entry, env, 
                         SANDESHA2_MSG_TYPE_APPLICATION);
     if(NULL == out_seq_bean || NULL == SANDESHA2_SEQ_PROPERTY_BEAN_GET_VALUE(
                         out_seq_bean, env))
-        SANDESHA2_MSG_CTX_SET_SEND(app_msg_entry, env, AXIS2_FALSE);
+        SANDESHA2_SENDER_BEAN_SET_SEND(app_msg_entry, env, AXIS2_FALSE);
     else
     {
-        SANDESHA2_MSG_CTX_SET_SEND(app_msg_entry, env, AXIS2_TRUE);
+        SANDESHA2_SENDER_BEAN_SET_SEND(app_msg_entry, env, AXIS2_TRUE);
         property = axis2_property_create(env);
         AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
         AXIS2_PROPERTY_SET_VALUE(property, env, AXIS2_STRDUP(
@@ -1281,7 +1279,7 @@
         AXIS2_MSG_CTX_SET_PROPERTY(req_msg, env, 
                             SANDESHA2_SET_SEND_TO_TRUE, property, AXIS2_FALSE);
     }
-    SANDESHA2_MSG_CTX_SET_INTERNAL_SEQ_ID(app_msg_entry, env, internal_seq_id);
+    SANDESHA2_SENDER_BEAN_SET_INTERNAL_SEQ_ID(app_msg_entry, env, internal_seq_id);
     SANDESHA2_STORAGE_MGR_STORE_MSG_CTX(mgr, env, storage_key, msg);
     SANDESHA2_SENDER_MGR_INSERT(retransmitter_man, env, app_msg_entry);
     
@@ -1289,7 +1287,7 @@
     AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
     AXIS2_PROPERTY_SET_VALUE(property, env, AXIS2_STRDUP(
                             SANDESHA2_VALUE_FALSE, env));
-    AXIS2_MSG_CTX_SET_PROPERTY(req_msg, env, 
+    AXIS2_MSG_CTX_SET_PROPERTY(msg, env, 
                             SANDESHA2_QUALIFIED_FOR_SENDING, property, AXIS2_FALSE);
     trs_sender = AXIS2_TRANSPORT_OUT_DESC_GET_SENDER(
                         AXIS2_MSG_CTX_GET_TRANSPORT_OUT_DESC(msg, env), env);
@@ -1298,13 +1296,14 @@
         property = axis2_property_create(env);
         AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
         AXIS2_PROPERTY_SET_VALUE(property, env, AXIS2_STRDUP(storage_key, env));
-        AXIS2_MSG_CTX_SET_PROPERTY(req_msg, env, 
+        AXIS2_MSG_CTX_SET_PROPERTY(msg, env, 
                         SANDESHA2_MESSAGE_STORE_KEY, property, AXIS2_FALSE);
                         
         property = axis2_property_create(env);
         AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
-        AXIS2_PROPERTY_SET_VALUE(property, env, trs_sender);
-        AXIS2_MSG_CTX_SET_PROPERTY(req_msg, env, 
+        AXIS2_PROPERTY_SET_VALUE(property, env, 
+                        AXIS2_MSG_CTX_GET_TRANSPORT_OUT_DESC(msg, env));
+        AXIS2_MSG_CTX_SET_PROPERTY(msg, env, 
                         SANDESHA2_ORIGINAL_TRANSPORT_OUT_DESC, property, 
                         AXIS2_FALSE);
         AXIS2_MSG_CTX_SET_TRANSPORT_OUT_DESC(msg, env, 

Modified: webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c Fri Jul 28 05:31:38 2006
@@ -174,7 +174,7 @@
         engine = axis2_engine_create(env, conf_ctx);
         AXIS2_ENGINE_SEND(engine, env, SANDESHA2_MSG_CTX_GET_MSG_CTX(
                         fault_rm_msg_ctx, env));
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         return AXIS2_SUCCESS;
     }
     seq_prop_mgr = SANDESHA2_STORAGE_MGR_GET_SEQ_PROPERTY_MGR(storage_mgr, env);

Modified: webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c Fri Jul 28 05:31:38 2006
@@ -196,7 +196,7 @@
         engine = axis2_engine_create(env, conf_ctx);
         AXIS2_ENGINE_SEND_FAULT(engine, env, SANDESHA2_MSG_CTX_GET_MSG_CTX(
                         fault_rm_msg_ctx, env));
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         return AXIS2_SUCCESS;
     }
     out_msg_ctx = axis2_core_utils_create_out_msg_ctx(env, msg_ctx);

Modified: webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c Fri Jul 28 05:31:38 2006
@@ -214,7 +214,7 @@
         
         AXIS2_ENGINE_SEND_FAULT(engine, env, SANDESHA2_MSG_CTX_GET_MSG_CTX(
                     fault_ctx, env));
-        AXIS2_MSG_CTX_PAUSE(msg_ctx, env);
+        AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, AXIS2_TRUE);
         return AXIS2_SUCCESS;
     }
     seq_prop_mgr = SANDESHA2_STORAGE_MGR_GET_SEQ_PROPERTY_MGR(storage_man, env);

Modified: webservices/sandesha/trunk/c/src/storage/beans/create_seq_bean.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/beans/create_seq_bean.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/beans/create_seq_bean.c (original)
+++ webservices/sandesha/trunk/c/src/storage/beans/create_seq_bean.c Fri Jul 28 05:31:38 2006
@@ -19,6 +19,7 @@
 #include <axis2_utils.h>
 #include <axis2_utils_defines.h>
 #include <string.h>
+#include <axis2_string.h>
 
 
 /*create_seq_bean struct */

Modified: webservices/sandesha/trunk/c/src/storage/beans/invoker_bean.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/beans/invoker_bean.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/beans/invoker_bean.c (original)
+++ webservices/sandesha/trunk/c/src/storage/beans/invoker_bean.c Fri Jul 28 05:31:38 2006
@@ -16,6 +16,8 @@
 
 #include <sandesha2_invoker_bean.h>
 #include <string.h>
+#include <axis2_string.h>
+
 
 /* create_seq_bean struct */
 typedef struct sandesha2_invoker_bean_impl sandesha2_invoker_bean_impl_t;

Modified: webservices/sandesha/trunk/c/src/storage/beans/next_msg_bean.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/beans/next_msg_bean.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/beans/next_msg_bean.c (original)
+++ webservices/sandesha/trunk/c/src/storage/beans/next_msg_bean.c Fri Jul 28 05:31:38 2006
@@ -16,6 +16,8 @@
 
 #include <sandesha2_next_msg_bean.h>
 #include <string.h>
+#include <axis2_string.h>
+
 
 /* invoker_bean struct */
 typedef struct sandesha2_next_msg_bean_impl sandesha2_next_msg_bean_impl_t;
@@ -110,7 +112,7 @@
 	}
 
 	/* init the properties. */
-	bean->seq_id = (axis2_char_t*)AXIS2_STRDUP(env, seq_id);
+	bean->seq_id = (axis2_char_t*)AXIS2_STRDUP(seq_id, env);
 	bean->msg_no = msg_no;
 
 	bean->o_bean.ops = NULL;
@@ -172,7 +174,7 @@
 		bean_impl->seq_id = NULL;
 	}
 
-	bean_impl->seq_id = (axis2_char_t*) AXIS2_STRDUP(env, seq_id); 
+	bean_impl->seq_id = (axis2_char_t*) AXIS2_STRDUP(seq_id, env); 
 }
 
 

Modified: webservices/sandesha/trunk/c/src/storage/beans/sender_bean.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/beans/sender_bean.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/beans/sender_bean.c (original)
+++ webservices/sandesha/trunk/c/src/storage/beans/sender_bean.c Fri Jul 28 05:31:38 2006
@@ -16,6 +16,8 @@
 
 #include <sandesha2_sender_bean.h>
 #include <string.h>
+#include <axis2_string.h>
+
 
 /*sender_bean struct */
 typedef struct sandesha2_sender_bean_impl sandesha2_sender_bean_impl_t;
@@ -222,10 +224,10 @@
 	}
 
 	/* init properties */
-	bean_impl->msg_context_ref_key = (axis2_char_t *)AXIS2_STRDUP(env, key);
-	bean_impl->msg_id = (axis2_char_t *)AXIS2_STRDUP(env, msg_id);
+	bean_impl->msg_context_ref_key = (axis2_char_t *)AXIS2_STRDUP(key, env);
+	bean_impl->msg_id = (axis2_char_t *)AXIS2_STRDUP(msg_id, env);
 	bean_impl->send = send; 
-	bean_impl->internal_seq_id = (axis2_char_t *)AXIS2_STRDUP(env, int_seq_id);
+	bean_impl->internal_seq_id = (axis2_char_t *)AXIS2_STRDUP(int_seq_id, env);
 	bean_impl->sent_count = -1;
 	bean_impl->msg_no = msg_no;
 	bean_impl->resend = AXIS2_FALSE;
@@ -330,7 +332,7 @@
 		bean_impl->msg_context_ref_key = NULL;
 	}
 
-	bean_impl->msg_context_ref_key = (axis2_char_t *)AXIS2_STRDUP(ref_key);
+	bean_impl->msg_context_ref_key = (axis2_char_t *)AXIS2_STRDUP(ref_key, env);
 
 }
 
@@ -358,7 +360,7 @@
 		bean_impl->msg_id = NULL;
 	}
 
-	bean_impl->msg_id = (axis2_char_t *)AXIS2_STRDUP(env, msg_id);
+	bean_impl->msg_id = (axis2_char_t *)AXIS2_STRDUP(msg_id, env);
 }
 
 
@@ -410,7 +412,7 @@
 		bean_impl->internal_seq_id = NULL;
 	}
 
-	bean_impl->internal_seq_id = (axis2_char_t *)AXIS2_STRDUP(env, int_seq_id);
+	bean_impl->internal_seq_id = (axis2_char_t *)AXIS2_STRDUP(int_seq_id, env);
 }
 
 int AXIS2_CALL 
@@ -548,6 +550,6 @@
 		bean_impl->seq_id = NULL;
 	}
 
-	bean_impl->seq_id = (axis2_char_t *)AXIS2_STRDUP(env, seq_id);
+	bean_impl->seq_id = (axis2_char_t *)AXIS2_STRDUP(seq_id, env);
 }
 

Modified: webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c (original)
+++ webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c Fri Jul 28 05:31:38 2006
@@ -16,6 +16,8 @@
 
 #include <sandesha2_seq_property_bean.h>
 #include <string.h>
+#include <axis2_string.h>
+
 
 /*seq_property_bean struct */
 typedef struct sandesha2_seq_property_bean_impl sandesha2_seq_property_bean_impl_t;
@@ -127,9 +129,9 @@
 	}
 
 	/* initialize properties */
-	bean_impl->seq_id = (axis2_char_t *)AXIS2_STRDUP(env, seq_id);
-	bean_impl->name = (axis2_char_t *)AXIS2_STRDUP(env, prop_name);
-	bean_impl->value = (axis2_char_t *)AXIS2_STRDUP(env, value);
+	bean_impl->seq_id = (axis2_char_t *)AXIS2_STRDUP(seq_id, env);
+	bean_impl->name = (axis2_char_t *)AXIS2_STRDUP(prop_name, env);
+	bean_impl->value = (axis2_char_t *)AXIS2_STRDUP(value, env);
 
 	bean_impl->o_bean.ops = NULL;
 	bean_impl->o_bean.ops = (sandesha2_seq_property_bean_ops_t*)AXIS2_MALLOC(env->allocator,
@@ -206,7 +208,7 @@
 		bean_impl->name = NULL;
 	}
 
-	bean_impl->name = (axis2_char_t *)AXIS2_STRDUP(env, name);
+	bean_impl->name = (axis2_char_t *)AXIS2_STRDUP(name, env);
 }
 
 axis2_char_t *AXIS2_CALL
@@ -234,7 +236,7 @@
 		bean_impl->seq_id = NULL;
 	}
 
-	bean_impl->seq_id = (axis2_char_t *)AXIS2_STRDUP(env, seq_id);
+	bean_impl->seq_id = (axis2_char_t *)AXIS2_STRDUP(seq_id, env);
 }
 
 axis2_char_t* AXIS2_CALL
@@ -262,7 +264,7 @@
 		bean_impl->value = NULL;
 	}
 
-	bean_impl->value = (axis2_char_t *)AXIS2_STRDUP(env, value);
+	bean_impl->value = (axis2_char_t *)AXIS2_STRDUP(value, env);
 
 }
 

Modified: webservices/sandesha/trunk/c/src/storage/inmemory/create_seq_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/inmemory/create_seq_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/inmemory/create_seq_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/inmemory/create_seq_mgr.c Fri Jul 28 05:31:38 2006
@@ -122,7 +122,7 @@
             return NULL;
         }
         AXIS2_PROPERTY_SET_VALUE(property, env, seq_mgr_impl->table);
-        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, seq_mgr_impl->seq_mgr.ops->free);
+        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_hash_free_void_arg);
         AXIS2_CTX_SET_PROPERTY(ctx, env, SANDESHA2_BEAN_MAP_CREATE_SEQUECE, 
                 property, AXIS2_FALSE);
     }

Modified: webservices/sandesha/trunk/c/src/storage/inmemory/invoker_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/inmemory/invoker_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/inmemory/invoker_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/inmemory/invoker_mgr.c Fri Jul 28 05:31:38 2006
@@ -122,7 +122,7 @@
             return NULL;
         }
         AXIS2_PROPERTY_SET_VALUE(property, env, invoker_impl->table);
-        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, invoker_impl->invoker.ops->free);
+        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_hash_free_void_arg);
         AXIS2_CTX_SET_PROPERTY(ctx, env, SANDESHA2_BEAN_MAP_STORAGE_MAP, 
                 property, AXIS2_FALSE);
     }

Modified: webservices/sandesha/trunk/c/src/storage/inmemory/next_msg_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/inmemory/next_msg_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/inmemory/next_msg_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/inmemory/next_msg_mgr.c Fri Jul 28 05:31:38 2006
@@ -130,7 +130,7 @@
             return NULL;
         }
         AXIS2_PROPERTY_SET_VALUE(property, env, next_msg_impl->table);
-        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, next_msg_impl->next_msg.ops->free);
+        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_hash_free_void_arg);
         AXIS2_CTX_SET_PROPERTY(ctx, env, SANDESHA2_BEAN_MAP_NEXT_MESSAGE, 
                 property, AXIS2_FALSE);
     }

Modified: webservices/sandesha/trunk/c/src/storage/inmemory/sender_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/inmemory/sender_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/inmemory/sender_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/inmemory/sender_mgr.c Fri Jul 28 05:31:38 2006
@@ -155,7 +155,7 @@
             return NULL;
         }
         AXIS2_PROPERTY_SET_VALUE(property, env, sender_impl->table);
-        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, sender_impl->sender.ops->free);
+        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_hash_free_void_arg);
         AXIS2_CTX_SET_PROPERTY(ctx, env, SANDESHA2_BEAN_MAP_RETRANSMITTER, 
                 property, AXIS2_FALSE);
     }

Modified: webservices/sandesha/trunk/c/src/storage/inmemory/seq_property_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/inmemory/seq_property_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/inmemory/seq_property_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/inmemory/seq_property_mgr.c Fri Jul 28 05:31:38 2006
@@ -144,7 +144,7 @@
             return NULL;
         }
         AXIS2_PROPERTY_SET_VALUE(property, env, seq_property_impl->table);
-        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, seq_property_impl->seq_property.ops->free);
+        AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_hash_free_void_arg);
         AXIS2_CTX_SET_PROPERTY(ctx, env, SANDESHA2_BEAN_MAP_SEQ_PROPERTY, 
                 property, AXIS2_FALSE);
     }

Modified: webservices/sandesha/trunk/c/src/storage/inmemory/storage_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/inmemory/storage_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/inmemory/storage_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/inmemory/storage_mgr.c Fri Jul 28 05:31:38 2006
@@ -172,7 +172,7 @@
     storage_impl->seq_property_mgr = NULL;
     storage_impl->sender_mgr = NULL;
     storage_impl->invoker_mgr = NULL;
-    storage_impl->conf_ctx = NULL;
+    storage_impl->conf_ctx = conf_ctx;
 
     storage_impl->storage.ops = AXIS2_MALLOC(env->allocator, 
                     sizeof(sandesha2_storage_mgr_ops_t)); 

Modified: webservices/sandesha/trunk/c/src/util/ack_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/ack_mgr.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/ack_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/ack_mgr.c Fri Jul 28 05:31:38 2006
@@ -235,7 +235,7 @@
         
         ret_rm_msg = sandesha2_msg_init_init_msg(env, ack_msg_ctx);
         sandesha2_utils_start_invoker_for_seq(env, conf_ctx, seq_id);
-        AXIS2_MSG_CTX_PAUSE(ref_msg, env);
+        AXIS2_MSG_CTX_SET_PAUSED(ref_msg, env, AXIS2_TRUE);
         return ret_rm_msg;
     }
     return NULL;

Modified: webservices/sandesha/trunk/c/src/util/msg_creator.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/msg_creator.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/msg_creator.c (original)
+++ webservices/sandesha/trunk/c/src/util/msg_creator.c Fri Jul 28 05:31:38 2006
@@ -129,7 +129,7 @@
             create_seq_msg_ctx);
     create_seq_op_ctx = AXIS2_MSG_CTX_GET_OP_CTX(create_seq_msg_ctx, env);
     create_seq_msg_id = axis2_uuid_gen(env);
-    AXIS2_MSG_CTX_SET_MSG_ID(create_seq_msg_ctx, env, create_seq_msg_id);
+    AXIS2_MSG_CTX_SET_MESSAGE_ID(create_seq_msg_ctx, env, create_seq_msg_id);
     AXIS2_CONF_CTX_REGISTER_OP_CTX(ctx, env, create_seq_msg_id, 
             create_seq_op_ctx);
     app_msg_op_desc = AXIS2_MSG_CTX_GET_OP(application_msg_ctx, env);
@@ -169,8 +169,8 @@
     rm_ns_value = sandesha2_spec_specific_consts_get_rm_ns_val(env, rm_version);
     addressing_ns_value = sandesha2_utils_get_seq_property(env, internal_seq_id, 
             SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, storage_mgr);
-    create_seq_part = sandesha2_create_seq_create(env, rm_ns_value, 
-            addressing_ns_value);
+    create_seq_part = sandesha2_create_seq_create(env, addressing_ns_value,
+            rm_ns_value);
     /* Adding sequence offer - if present */
     op_ctx = AXIS2_MSG_CTX_GET_OP_CTX(application_msg_ctx, env);
     if(op_ctx)
@@ -182,7 +182,8 @@
         ctx = AXIS2_MSG_CTX_GET_BASE(application_msg_ctx, env);
         property = AXIS2_CTX_GET_PROPERTY(ctx, env, 
                 SANDESHA2_CLIENT_OFFERED_SEQ_ID, AXIS2_FALSE);
-        offered_seq = AXIS2_PROPERTY_GET_VALUE(property, env);
+        if(NULL != property)
+            offered_seq = AXIS2_PROPERTY_GET_VALUE(property, env);
         if(offered_seq && 0 != AXIS2_STRCMP("", offered_seq))
         {
             sandesha2_seq_offer_t *offer_part = NULL;
@@ -213,9 +214,9 @@
         acks_to = AXIS2_STRDUP(anonymous_uri, env);
     }
     acks_to_epr = axis2_endpoint_ref_create(env, acks_to);
-    temp_value = SANDESHA2_SEQ_PROPERTY_BEAN_GET_VALUE(reply_to_bean, env);
     if(reply_to_bean && temp_value)
     {
+        temp_value = SANDESHA2_SEQ_PROPERTY_BEAN_GET_VALUE(reply_to_bean, env);
         reply_to_epr = axis2_endpoint_ref_create(env, temp_value);
     }
     temp_to = SANDESHA2_MSG_CTX_GET_TO(create_seq_rm_msg, env);
@@ -236,11 +237,11 @@
     SANDESHA2_MSG_CTX_ADD_SOAP_ENVELOPE(create_seq_rm_msg, env);
     temp_action = sandesha2_spec_specific_consts_get_create_seq_action(env, 
             rm_version);
-    SANDESHA2_MSG_CTX_SET_ACTION(create_seq_rm_msg, env, temp_action);
+    SANDESHA2_MSG_CTX_SET_WSA_ACTION(create_seq_rm_msg, env, temp_action);
     temp_soap_action = sandesha2_spec_specific_consts_get_create_seq_action(env, 
             rm_version);
     SANDESHA2_MSG_CTX_SET_SOAP_ACTION(create_seq_rm_msg, env, temp_soap_action);
-    sandesha2_create_msg_finalize_creation(env, application_msg_ctx, 
+    sandesha2_msg_creator_finalize_creation(env, application_msg_ctx, 
             create_seq_msg_ctx);
     return create_seq_rm_msg;
 }
@@ -628,7 +629,7 @@
     axis2_ctx_t *related_ctx = NULL;
     axis2_ctx_t *new_ctx = NULL;
 
-    temp_bool = AXIS2_MSG_CTX_IS_SERVER_SIDE(related_msg, env);
+    temp_bool = AXIS2_MSG_CTX_GET_SERVER_SIDE(related_msg, env);
     AXIS2_MSG_CTX_SET_SERVER_SIDE(new_msg, env, temp_bool);
     /* Adding all parameters from old message to the new one */
     old_op = AXIS2_MSG_CTX_GET_OP(related_msg, env);

Modified: webservices/sandesha/trunk/c/src/util/msg_init.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/msg_init.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/msg_init.c (original)
+++ webservices/sandesha/trunk/c/src/util/msg_init.c Fri Jul 28 05:31:38 2006
@@ -123,8 +123,10 @@
      * Assuming the default addressing version.
      */
     prop = AXIS2_CTX_GET_PROPERTY(msg_ctx, env, AXIS2_WSA_VERSION, AXIS2_FALSE);
-    addressing_ns = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(prop, env);
-    if(addressing_ns == NULL && AXIS2_TRUE != AXIS2_MSG_CTX_IS_SERVER_SIDE(msg_ctx, env))
+    if(NULL != prop)
+        addressing_ns = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(prop, env);
+    
+    if(addressing_ns == NULL && AXIS2_TRUE != AXIS2_MSG_CTX_GET_SERVER_SIDE(msg_ctx, env))
     {
         addressing_ns = AXIS2_STRDUP(AXIS2_WSA_NAMESPACE, env);
     }
@@ -212,12 +214,12 @@
         rm_ns = SANDESHA2_IOM_RM_ELEMENT_GET_NAMESPACE_VALUE(
                 (sandesha2_iom_rm_element_t *) close_seq_res, env);
     }
-    SANDESHA2_MSG_CTX_SET_RM_NS_VALUE(rm_msg_ctx, env, rm_ns);
+    SANDESHA2_MSG_CTX_SET_RM_NS_VAL(rm_msg_ctx, env, rm_ns);
     addressing_ns_value = SANDESHA2_RM_ELEMENTS_GET_ADDR_NS_VAL(
             elements, env);
     if(addressing_ns_value)
     {
-        SANDESHA2_RM_ELEMENTS_SET_ADDRESSING_NS_VALUE(elements, env, 
+        SANDESHA2_MSG_CTX_SET_ADDR_NS_VAL(rm_msg_ctx, env, 
                 addressing_ns_value);
     }
     return AXIS2_SUCCESS;

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=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/seq_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/seq_mgr.c Fri Jul 28 05:31:38 2006
@@ -34,6 +34,11 @@
 #include <axis2_log.h>
 #include <axis2_uuid_gen.h>
 #include <axis2_msg_ctx.h>
+#include <axis2_addr.h>
+#include "../client/sandesha2_client_constants.h"
+#include <axis2_options.h>
+#include <axis2_listener_manager.h>
+#include <axis2_ctx.h>
 
 /******************************************************************************/
 long AXIS2_CALL
@@ -198,7 +203,7 @@
     sandesha2_seq_property_bean_t *last_activated_bean = NULL;
     axis2_bool_t added = AXIS2_FALSE;
     long current_time = -1;
-    axis2_char_t *current_time_str = NULL;
+    axis2_char_t current_time_str[32];
     
     seq_prop_mgr = SANDESHA2_STORAGE_MGR_GET_SEQ_PROPERTY_MGR(storage_mgr, env);
     last_activated_bean = SANDESHA2_SEQ_PROPERTY_MGR_RETRIEVE(seq_prop_mgr, env, 
@@ -207,14 +212,14 @@
     {
         added = AXIS2_TRUE;
         last_activated_bean = sandesha2_seq_property_bean_create(env);
-        SANDESHA2_LAST_ACTIVATED_BEAN_SET_SEQ_ID(last_activated_bean, env, 
+        SANDESHA2_SEQ_PROPERTY_BEAN_SET_SEQ_ID(last_activated_bean, env, 
                 property_key);
-        SANDESHA2_LAST_ACTIVATED_BEAN_SET_NAME(last_activated_bean, env, 
+        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_LAST_ACTIVATED_BEAN_SET_VALUE(last_activated_bean, env, current_time_str); 
+    SANDESHA2_SEQ_PROPERTY_BEAN_SET_VALUE(last_activated_bean, env, current_time_str); 
     if(AXIS2_TRUE == added)
     {
         SANDESHA2_SEQ_PROPERTY_MGR_INSERT(seq_prop_mgr, env, last_activated_bean);
@@ -285,4 +290,200 @@
             last_activated_time = atol(value);
     }
     return last_activated_time;
+}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+sandesha2_seq_mgr_setup_new_client_seq(const axis2_env_t *env,
+                        axis2_msg_ctx_t *first_app_msg,
+                        axis2_char_t *int_seq_id,
+                        axis2_char_t *spec_version,
+                        sandesha2_storage_mgr_t *storage_mgr)
+{
+    axis2_conf_ctx_t *conf_ctx = NULL;
+    sandesha2_seq_property_mgr_t *seq_prop_mgr = NULL;
+    axis2_char_t *addr_ns_val = NULL;
+    axis2_property_t *property = NULL;
+    sandesha2_seq_property_bean_t *addr_ns_bean = NULL;
+    axis2_char_t *anon_uri = NULL;
+    axis2_endpoint_ref_t *to_epr = NULL;
+    axis2_char_t *acks_to_str = NULL;
+    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_char_t *transport_in_protocol = NULL;
+    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_ENV_CHECK(env, AXIS2_FAILURE);
+    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, spec_version, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, storage_mgr, AXIS2_FAILURE);
+    
+    conf_ctx = AXIS2_MSG_CTX_GET_CONF_CTX(first_app_msg, env);
+    seq_prop_mgr = SANDESHA2_STORAGE_MGR_GET_SEQ_PROPERTY_MGR(storage_mgr, env);
+    
+    property = AXIS2_MSG_CTX_GET_PROPERTY(first_app_msg, env, AXIS2_WSA_VERSION,
+                        AXIS2_FALSE);
+    if(NULL != property)
+        addr_ns_val = AXIS2_PROPERTY_GET_VALUE(property, env);
+    if(NULL == 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_VALUE);
+        if(NULL != req_msg_ctx)
+        {
+            property = AXIS2_MSG_CTX_GET_PROPERTY(req_msg_ctx, env, 
+                        AXIS2_WSA_VERSION, AXIS2_FALSE);
+            if(NULL != property)
+                addr_ns_val = AXIS2_PROPERTY_GET_VALUE(property, env);
+        }
+    }
+    if(NULL == 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);
+    SANDESHA2_SEQ_PROPERTY_MGR_INSERT(seq_prop_mgr, env, addr_ns_bean);
+    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, AXIS2_FALSE);
+    if(NULL != property)
+        acks_to_str = AXIS2_PROPERTY_GET_VALUE(property, env);
+    if(NULL == to_epr)
+    {
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] WSA To is NULL");
+        return AXIS2_FAILURE;
+    }
+    
+    to_bean = sandesha2_seq_property_bean_create_with_data(env, int_seq_id,
+                       SANDESHA2_SEQ_PROP_TO_EPR, 
+                       AXIS2_ENDPOINT_REF_GET_ADDRESS(to_epr, env));
+    
+    if(AXIS2_TRUE == AXIS2_MSG_CTX_GET_SERVER_SIDE(first_app_msg, env))
+    {
+        axis2_op_ctx_t *op_ctx = NULL;
+        axis2_msg_ctx_t *req_msg_ctx = NULL;
+        axis2_endpoint_ref_t *reply_to_epr = 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_VALUE);
+        if(NULL == req_msg_ctx)
+        {
+            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);
+        if(NULL != reply_to_epr)
+            reply_to_bean = sandesha2_seq_property_bean_create_with_data(env,
+                        int_seq_id, SANDESHA2_SEQ_PROP_REPLY_TO_EPR,
+                        AXIS2_ENDPOINT_REF_GET_ADDRESS(reply_to_epr, env));
+        else
+        {
+            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Cannot get"
+                        " request message from the operation context");
+            return AXIS2_FAILURE;
+        }        
+    }
+    if(NULL == 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_FALSE == AXIS2_MSG_CTX_GET_SERVER_SIDE(first_app_msg, env) &&
+                        0 != AXIS2_STRCMP(acks_to_str, anon_uri))
+    {
+        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);*/
+        if (NULL == transport_in_protocol)
+            transport_in_protocol = AXIS2_TRANSPORT_HTTP;
+            
+        AXIS2_LISTNER_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, 
+                        SANDESHA2_SEQ_PROP_CLIENT_COMPLETED_MESSAGES, "");
+    SANDESHA2_SEQ_PROPERTY_MGR_INSERT(seq_prop_mgr, env, msgs_bean);
+    SANDESHA2_SEQ_PROPERTY_MGR_INSERT(seq_prop_mgr, env, to_bean);
+    
+    if(NULL != acks_to_bean)
+        SANDESHA2_SEQ_PROPERTY_MGR_INSERT(seq_prop_mgr, env, acks_to_bean);
+    if(NULL != reply_to_bean)
+        SANDESHA2_SEQ_PROPERTY_MGR_INSERT(seq_prop_mgr, env, reply_to_bean);
+        
+    
+    property = AXIS2_MSG_CTX_GET_PROPERTY(first_app_msg, env, AXIS2_TRANSPORT_URL,
+                        AXIS2_FALSE);
+    if(NULL != property)
+        transport_to = AXIS2_PROPERTY_GET_VALUE(property, env);
+    
+    if(NULL != 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);
+        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, storage_mgr);
+    sandesha2_utils_start_sender_for_seq(env, conf_ctx, int_seq_id);
+    sandesha2_seq_mgr_update_client_side_listener_if_needed(env, first_app_msg,
+                        anon_uri);
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+sandesha2_seq_mgr_update_client_side_listener_if_needed(const axis2_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;
+    axis2_property_t *property = NULL;
+    
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, msg_ctx, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, addr_anon_uri, AXIS2_FAILURE);
+    
+    if(AXIS2_FALSE == 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,
+                        AXIS2_FALSE);
+    if(NULL != property)
+        acks_to = AXIS2_PROPERTY_GET_VALUE(property, env);
+    
+    
+    return AXIS2_SUCCESS;
 }

Modified: webservices/sandesha/trunk/c/src/util/utils.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/utils.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/utils.c (original)
+++ webservices/sandesha/trunk/c/src/util/utils.c Fri Jul 28 05:31:38 2006
@@ -83,11 +83,19 @@
 sandesha2_utils_get_current_time_in_millis(
         const axis2_env_t *env)
 {
+    const long fixed_time = 1153918446;
+    long seconds = -1;
+    long millis = -1;
     struct timeb *tp = AXIS2_MALLOC(env->allocator, sizeof(struct timeb));
     ftime(tp);
-    long seconds = tp->time;
-    seconds = seconds * 1000;
-    long millis = tp->millitm;
+    /* To prevent an overflow we substract a contstant from seconds value
+     * This value is taken as 18.23.xx seconds on 26 Jul 2006
+     *
+     */
+    seconds = tp->time;
+    seconds -= fixed_time;
+    seconds *= 1000;
+    millis = tp->millitm;
     millis = millis + seconds;
 
     return millis;
@@ -321,10 +329,10 @@
     AXIS2_PARAM_CHECK(env->error, seq_id, AXIS2_FAILURE);
     
     property = AXIS2_CTX_GET_PROPERTY(AXIS2_CONF_CTX_GET_BASE(conf_ctx, env),
-                        env, SANDESHA2_INVOKER, AXIS2_FALSE);
-    if(NULL == property)
-        return AXIS2_FAILURE;
-    sender = AXIS2_PROPERTY_GET_VALUE(property, env);
+                        env, SANDESHA2_SENDER, AXIS2_FALSE);
+    if(NULL != property)
+        sender = AXIS2_PROPERTY_GET_VALUE(property, env);
+        
     if(NULL == sender)
     {
         sender = sandesha2_sender_create(env);

Modified: webservices/sandesha/trunk/c/src/workers/in_order_invoker.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/in_order_invoker.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/in_order_invoker.c (original)
+++ webservices/sandesha/trunk/c/src/workers/in_order_invoker.c Fri Jul 28 05:31:38 2006
@@ -185,7 +185,7 @@
     
     invoker_impl = SANDESHA2_INTF_TO_IMPL(invoker);
     axis2_thread_mutex_lock(invoker_impl->mutex);
-    for(i = 0; i < AXIS2_ARRY_LIST_SIZE(invoker_impl->working_seqs, env); i++)
+    for(i = 0; i < AXIS2_ARRAY_LIST_SIZE(invoker_impl->working_seqs, env); i++)
     {
         axis2_char_t *tmp_id = NULL;
         tmp_id = AXIS2_ARRAY_LIST_GET(invoker_impl->working_seqs, env, i);
@@ -195,7 +195,7 @@
             break;
         }
     }
-    if(0 == AXIS2_ARRY_LIST_SIZE(invoker_impl->working_seqs, env))
+    if(0 == AXIS2_ARRAY_LIST_SIZE(invoker_impl->working_seqs, env))
         invoker_impl->run_invoker = AXIS2_FALSE;
     axis2_thread_mutex_unlock(invoker_impl->mutex);
     return AXIS2_SUCCESS;
@@ -247,7 +247,7 @@
     axis2_thread_mutex_lock(invoker_impl->mutex);
     if(AXIS2_FALSE == sandesha2_utils_array_list_contains(env, 
                         invoker_impl->working_seqs, seq_id))
-        AXIS2_ARRY_LIST_ADD(invoker_impl->working_seqs, env, seq_id);
+        AXIS2_ARRAY_LIST_ADD(invoker_impl->working_seqs, env, seq_id);
     if(AXIS2_FALSE == invoker_impl->run_invoker)
     {
         invoker_impl->conf_ctx = conf_ctx;
@@ -264,15 +264,17 @@
 {
     sandesha2_in_order_invoker_impl_t *invoker_impl = NULL;
     axis2_thread_t *worker_thread = NULL;
-    sandesha2_in_order_invoker_args_t args;
+    sandesha2_in_order_invoker_args_t *args = NULL;
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     
     invoker_impl = SANDESHA2_INTF_TO_IMPL(invoker);
-    
-    args.impl = invoker_impl;
-    args.env = (axis2_env_t*)env;
+   
+    args = AXIS2_MALLOC(env->allocator, sizeof(
+                        sandesha2_in_order_invoker_args_t)); 
+    args->impl = invoker_impl;
+    args->env = (axis2_env_t*)env;
     worker_thread = AXIS2_THREAD_POOL_GET_THREAD(env->thread_pool,
-                        sandesha2_in_order_invoker_worker_func, (void*)&args);
+                        sandesha2_in_order_invoker_worker_func, (void*)args);
     if(NULL == worker_thread)
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Thread creation failed"

Modified: webservices/sandesha/trunk/c/src/workers/sender.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/sender.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/sender.c (original)
+++ webservices/sandesha/trunk/c/src/workers/sender.c Fri Jul 28 05:31:38 2006
@@ -205,7 +205,7 @@
     
     sender_impl = SANDESHA2_INTF_TO_IMPL(sender);
     axis2_thread_mutex_lock(sender_impl->mutex);
-    for(i = 0; i < AXIS2_ARRY_LIST_SIZE(sender_impl->working_seqs, env); i++)
+    for(i = 0; i < AXIS2_ARRAY_LIST_SIZE(sender_impl->working_seqs, env); i++)
     {
         axis2_char_t *tmp_id = NULL;
         tmp_id = AXIS2_ARRAY_LIST_GET(sender_impl->working_seqs, env, i);
@@ -215,7 +215,7 @@
             break;
         }
     }
-    if(0 == AXIS2_ARRY_LIST_SIZE(sender_impl->working_seqs, env))
+    if(0 == AXIS2_ARRAY_LIST_SIZE(sender_impl->working_seqs, env))
         sender_impl->run_sender = AXIS2_FALSE;
     axis2_thread_mutex_unlock(sender_impl->mutex);
     return AXIS2_SUCCESS;
@@ -267,7 +267,7 @@
     axis2_thread_mutex_lock(sender_impl->mutex);
     if(AXIS2_FALSE == sandesha2_utils_array_list_contains(env, 
                         sender_impl->working_seqs, seq_id))
-        AXIS2_ARRY_LIST_ADD(sender_impl->working_seqs, env, seq_id);
+        AXIS2_ARRAY_LIST_ADD(sender_impl->working_seqs, env, seq_id);
     if(AXIS2_FALSE == sender_impl->run_sender)
     {
         sender_impl->conf_ctx = conf_ctx;
@@ -284,15 +284,16 @@
 {
     sandesha2_sender_impl_t *sender_impl = NULL;
     axis2_thread_t *worker_thread = NULL;
-    sandesha2_sender_args_t args;
+    sandesha2_sender_args_t *args = NULL;
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     
     sender_impl = SANDESHA2_INTF_TO_IMPL(sender);
-    
-    args.impl = sender_impl;
-    args.env = (axis2_env_t*)env;
+   
+    args = AXIS2_MALLOC(env->allocator, sizeof(sandesha2_sender_args_t)); 
+    args->impl = sender_impl;
+    args->env = (axis2_env_t*)env;
     worker_thread = AXIS2_THREAD_POOL_GET_THREAD(env->thread_pool,
-                        sandesha2_sender_worker_func, (void*)&args);
+                        sandesha2_sender_worker_func, (void*)args);
     if(NULL == worker_thread)
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2]Thread creation "
@@ -502,7 +503,7 @@
         AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, SANDESHA2_WITHIN_TRANSACTION,
                         property, AXIS2_FALSE);
         continue_sending = sandesha2_msg_retrans_adjuster_adjust_retrans(env,
-                        sender, sender_impl->conf_ctx, storage_mgr);
+                        sender_bean, sender_impl->conf_ctx, storage_mgr);
         if(AXIS2_FALSE == continue_sending)
             continue;
         

Modified: webservices/sandesha/trunk/c/src/wsrm/acks_to.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/acks_to.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/acks_to.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/acks_to.c Fri Jul 28 05:31:38 2006
@@ -94,7 +94,17 @@
     acks_to_impl->addr_ns_val = NULL;
     acks_to_impl->address = NULL;
     acks_to_impl->acks_to.ops = NULL;
-     
+    
+    acks_to_impl->acks_to.element.ops = AXIS2_MALLOC(env->allocator,
+        sizeof(sandesha2_iom_rm_element_ops_t));
+    if(NULL == acks_to_impl->acks_to.element.ops)
+    {
+        sandesha2_acks_to_free((sandesha2_iom_rm_element_t*)
+                         acks_to_impl, env);
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+    }
+  
     acks_to_impl->acks_to.ops = AXIS2_MALLOC(env->allocator,
         sizeof(sandesha2_iom_rm_element_ops_t));
     if(NULL == acks_to_impl->acks_to.ops)

Modified: webservices/sandesha/trunk/c/src/wsrm/sequence.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/sequence.c?rev=426490&r1=426489&r2=426490&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/sequence.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/sequence.c Fri Jul 28 05:31:38 2006
@@ -171,6 +171,8 @@
     					sandesha2_seq_to_om_node;
     seq_impl->seq.part.element.ops->is_namespace_supported = 
     					sandesha2_seq_is_namespace_supported;
+    seq_impl->seq.part.ops->to_soap_env = 
+    					sandesha2_seq_to_soap_env;
     seq_impl->seq.ops->set_identifier = 
                         sandesha2_seq_set_identifier;
     seq_impl->seq.ops->get_identifier = 
@@ -183,6 +185,10 @@
                         sandesha2_seq_set_must_understand;
     seq_impl->seq.ops->is_must_understand = 
                         sandesha2_seq_is_must_understand;
+    seq_impl->seq.ops->get_msg_num = 
+                        sandesha2_seq_get_msg_num;
+    seq_impl->seq.ops->set_msg_num = 
+                        sandesha2_seq_set_msg_num;
     seq_impl->seq.part.element.ops->free = sandesha2_seq_free;
     
                         



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