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 [1/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_...

Author: damitha
Date: Thu Aug 28 23:56:29 2008
New Revision: 690127

URL: http://svn.apache.org/viewvc?rev=690127&view=rev
Log:
Merged from Sandesha2/C branch https://svn.apache.org/repos/asf/webservices/sandesha/tags/sandesha2/c/worker_thread_removed-23may2008. The intention of that branch has been to reinvent sandesha2/C eleminating most of its problems. In doing so it has significantly changed it's thread model. Also database is also used very carefully. Memory leaks problems were also solved greatly. However this keeps the original api unchanged for most of the part.

Added:
    webservices/sandesha/trunk/c/include/sandesha2_endpoint.h
      - copied unchanged from r690123, webservices/sandesha/tags/sandesha2/c/worker_thread_removed-23may2008/include/sandesha2_endpoint.h
    webservices/sandesha/trunk/c/include/sandesha2_mc_address.h
      - copied unchanged from r690123, webservices/sandesha/tags/sandesha2/c/worker_thread_removed-23may2008/include/sandesha2_mc_address.h
    webservices/sandesha/trunk/c/src/wsrm/endpoint.c
      - copied unchanged from r690123, webservices/sandesha/tags/sandesha2/c/worker_thread_removed-23may2008/src/wsrm/endpoint.c
    webservices/sandesha/trunk/c/src/wsrm/mc_address.c
      - copied unchanged from r690123, webservices/sandesha/tags/sandesha2/c/worker_thread_removed-23may2008/src/wsrm/mc_address.c
Removed:
    webservices/sandesha/trunk/c/clean.sh
    webservices/sandesha/trunk/c/include/sandesha2/
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_create_seq_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_invoker_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_next_msg_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_sender_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_seq_property_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_storage_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_inmemory_transaction.h
    webservices/sandesha/trunk/c/src/storage/inmemory/
    webservices/sandesha/trunk/c/src/storage/mysql/
Modified:
    webservices/sandesha/trunk/c/build.sh
    webservices/sandesha/trunk/c/build/win32/configure.in
    webservices/sandesha/trunk/c/config/axis2.xml
    webservices/sandesha/trunk/c/config/module.xml
    webservices/sandesha/trunk/c/configure.ac
    webservices/sandesha/trunk/c/ides/vc8/sandesha2/sandesha2/sandesha2.vcproj
    webservices/sandesha/trunk/c/include/sandesha2_ack_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_app_msg_processor.h
    webservices/sandesha/trunk/c/include/sandesha2_client.h
    webservices/sandesha/trunk/c/include/sandesha2_constants.h
    webservices/sandesha/trunk/c/include/sandesha2_create_seq_bean.h
    webservices/sandesha/trunk/c/include/sandesha2_fault_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_make_connection.h
    webservices/sandesha/trunk/c/include/sandesha2_msg_creator.h
    webservices/sandesha/trunk/c/include/sandesha2_msg_ctx.h
    webservices/sandesha/trunk/c/include/sandesha2_permanent_storage_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_polling_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_property_bean.h
    webservices/sandesha/trunk/c/include/sandesha2_sender_bean.h
    webservices/sandesha/trunk/c/include/sandesha2_sender_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_seq_ack.h
    webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_seq_offer.h
    webservices/sandesha/trunk/c/include/sandesha2_seq_property_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_storage_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_terminate_mgr.h
    webservices/sandesha/trunk/c/include/sandesha2_utils.h
    webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc.c
    webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc_skel.c
    webservices/sandesha/trunk/c/samples/RMSampleService/services.xml
    webservices/sandesha/trunk/c/samples/build.sh
    webservices/sandesha/trunk/c/samples/configure.ac
    webservices/sandesha/trunk/c/samples/rm_echo_1_0/rm_echo.c
    webservices/sandesha/trunk/c/samples/rm_echo_1_0_large_sequence/rm_echo.c
    webservices/sandesha/trunk/c/samples/rm_echo_1_1/rm_echo_1_1.c
    webservices/sandesha/trunk/c/samples/rm_echo_single_1_0/rm_echo_single.c
    webservices/sandesha/trunk/c/samples/rm_echo_single_1_0_large_sequence/rm_echo_single.c
    webservices/sandesha/trunk/c/samples/rm_echo_single_1_1/rm_echo_single_1_1.c
    webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c
    webservices/sandesha/trunk/c/samples/rm_ping_1_0_large_sequence/rm_ping_1_0.c
    webservices/sandesha/trunk/c/samples/rm_ping_1_1/rm_ping_1_1.c
    webservices/sandesha/trunk/c/src/Makefile.am
    webservices/sandesha/trunk/c/src/client/Makefile.am
    webservices/sandesha/trunk/c/src/client/client.c
    webservices/sandesha/trunk/c/src/core/mod_sandesha2.c
    webservices/sandesha/trunk/c/src/core/sandesha2_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/create_seq_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/create_seq_res_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
    webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_res_msg_processor.c
    webservices/sandesha/trunk/c/src/polling/polling_mgr.c
    webservices/sandesha/trunk/c/src/storage/beans/create_seq_bean.c
    webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c
    webservices/sandesha/trunk/c/src/storage/common/sender_mgr.c
    webservices/sandesha/trunk/c/src/storage/common/seq_property_mgr.c
    webservices/sandesha/trunk/c/src/storage/common/storage_mgr.c
    webservices/sandesha/trunk/c/src/storage/sqlite/msg_store_bean.c
    webservices/sandesha/trunk/c/src/storage/sqlite/permanent_bean_mgr.c
    webservices/sandesha/trunk/c/src/storage/sqlite/permanent_create_seq_mgr.c
    webservices/sandesha/trunk/c/src/storage/sqlite/permanent_next_msg_mgr.c
    webservices/sandesha/trunk/c/src/storage/sqlite/permanent_sender_mgr.c
    webservices/sandesha/trunk/c/src/storage/sqlite/permanent_seq_property_mgr.c
    webservices/sandesha/trunk/c/src/storage/sqlite/permanent_storage_mgr.c
    webservices/sandesha/trunk/c/src/util/ack_mgr.c
    webservices/sandesha/trunk/c/src/util/fault_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/msg_retrans_adjuster.c
    webservices/sandesha/trunk/c/src/util/property_bean.c
    webservices/sandesha/trunk/c/src/util/property_mgr.c
    webservices/sandesha/trunk/c/src/util/sandesha2_utils.c
    webservices/sandesha/trunk/c/src/util/seq_mgr.c
    webservices/sandesha/trunk/c/src/util/spec_specific_consts.c
    webservices/sandesha/trunk/c/src/util/terminate_mgr.c
    webservices/sandesha/trunk/c/src/workers/sender.c
    webservices/sandesha/trunk/c/src/workers/sender_worker.c
    webservices/sandesha/trunk/c/src/wsrm/Makefile.am
    webservices/sandesha/trunk/c/src/wsrm/accept.c
    webservices/sandesha/trunk/c/src/wsrm/ack_final.c
    webservices/sandesha/trunk/c/src/wsrm/ack_none.c
    webservices/sandesha/trunk/c/src/wsrm/ack_range.c
    webservices/sandesha/trunk/c/src/wsrm/ack_requested.c
    webservices/sandesha/trunk/c/src/wsrm/acks_to.c
    webservices/sandesha/trunk/c/src/wsrm/address.c
    webservices/sandesha/trunk/c/src/wsrm/close_seq.c
    webservices/sandesha/trunk/c/src/wsrm/close_seq_res.c
    webservices/sandesha/trunk/c/src/wsrm/create_seq.c
    webservices/sandesha/trunk/c/src/wsrm/create_seq_res.c
    webservices/sandesha/trunk/c/src/wsrm/expires.c
    webservices/sandesha/trunk/c/src/wsrm/fault_code.c
    webservices/sandesha/trunk/c/src/wsrm/identifier.c
    webservices/sandesha/trunk/c/src/wsrm/last_msg.c
    webservices/sandesha/trunk/c/src/wsrm/make_connection.c
    webservices/sandesha/trunk/c/src/wsrm/msg_number.c
    webservices/sandesha/trunk/c/src/wsrm/msg_pending.c
    webservices/sandesha/trunk/c/src/wsrm/nack.c
    webservices/sandesha/trunk/c/src/wsrm/rm_elements.c
    webservices/sandesha/trunk/c/src/wsrm/seq_ack.c
    webservices/sandesha/trunk/c/src/wsrm/seq_fault.c
    webservices/sandesha/trunk/c/src/wsrm/seq_offer.c
    webservices/sandesha/trunk/c/src/wsrm/sequence.c
    webservices/sandesha/trunk/c/src/wsrm/terminate_seq.c
    webservices/sandesha/trunk/c/src/wsrm/terminate_seq_res.c

Modified: webservices/sandesha/trunk/c/build.sh
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/build.sh?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/build.sh (original)
+++ webservices/sandesha/trunk/c/build.sh Thu Aug 28 23:56:29 2008
@@ -1,5 +1,5 @@
 #!/bin/bash
 ./autogen.sh
-./configure --prefix=${AXIS2C_HOME} --enable-static=no --with-axis2=${AXIS2C_HOME}/include/axis2-1.4.0
-make
+./configure --prefix=${AXIS2C_HOME} --enable-static=no --with-axis2=${AXIS2C_HOME}/include/axis2-1.5.0
+make -j30
 make install

Modified: webservices/sandesha/trunk/c/build/win32/configure.in
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/build/win32/configure.in?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/build/win32/configure.in (original)
+++ webservices/sandesha/trunk/c/build/win32/configure.in Thu Aug 28 23:56:29 2008
@@ -1,7 +1,8 @@
-AXIS2_BIN_DIR = E:\axis2c\build\axis2c-bin-1.2.0-win32
+AXIS2_BIN_DIR = C:\damitha\axis2c\build\deploy
 
 #CRUNTIME Library (Use /MD or /MT )
 CRUNTIME=/MD
 # Embed Manifest
 EMBED_MANIFEST=1
+DEBUG=1
 

Modified: webservices/sandesha/trunk/c/config/axis2.xml
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/config/axis2.xml?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/config/axis2.xml (original)
+++ webservices/sandesha/trunk/c/config/axis2.xml Thu Aug 28 23:56:29 2008
@@ -25,7 +25,7 @@
     <!-- Transport Ins -->
     <!-- ================================================= -->
     <transportReceiver name="http" class="axis2_http_receiver">
-        <parameter name="port" locked="false">6060</parameter>
+        <parameter name="port" locked="false">6061</parameter>
     </transportReceiver>
 
     <!-- ================================================= -->

Modified: webservices/sandesha/trunk/c/config/module.xml
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/config/module.xml?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/config/module.xml (original)
+++ webservices/sandesha/trunk/c/config/module.xml Thu Aug 28 23:56:29 2008
@@ -7,7 +7,7 @@
     <inflow>
         <handler name="SandeshaGlobalInHandler" class="sandesha2">
             <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
+            <order phase="PreDispatch" />
         </handler> 
         <handler name="SandeshaInHandler" class="sandesha2">
             <order phase="RMPhase"/>
@@ -23,7 +23,7 @@
     <INfaultflow>        
         <handler name="SandeshaGlobalInHandler" class="sandesha2">
             <!-- Global In handler should come before instance dispatching -->
-            <order phase="Dispatch" before="InstanceDispatcher" />
+            <order phase="PreDispatch" />
         </handler> 
         <handler name="SandeshaInHandler" class="sandesha2">
             <order phase="RMPhase"/>
@@ -45,9 +45,9 @@
         <actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage</actionMapping>
 
         <!-- namespaces for the 2006-08 spec -->
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/SequenceAcknowledgement</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequenceResponse</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/AckRequested</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/SequenceAcknowledgement</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/CreateSequenceResponse</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/AckRequested</actionMapping>
         
      </operation>
  
@@ -56,12 +56,12 @@
         <actionMapping>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</actionMapping>
 
         <!-- namespaces for the 2006-08 spec -->
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequence</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequence</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequence</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequenceResponse</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequenceResponse</actionMapping>
-        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200608/MakeConnection</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/CreateSequence</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/TerminateSequence</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/CloseSequence</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/TerminateSequenceResponse</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsrm/200702/CloseSequenceResponse</actionMapping>
+        <actionMapping>http://docs.oasis-open.org/ws-rx/wsmc/200702/MakeConnection</actionMapping>
         
 
     </operation>
@@ -70,15 +70,15 @@
    <parameter name="sandesha2_db" locked="false">/tmp/sandesha2_db</parameter>
    <!-- General parameters -->
     <parameter name="ExponentialBackoff" locked="false">AXIS2_FALSE</parameter>
-    <parameter name="RetransmissionInterval" locked="false">4</parameter><!--In seconds-->
+    <parameter name="RetransmissionInterval" locked="false">8</parameter><!--In seconds-->
     <parameter name="InactivityTimeout" locked="false">64</parameter><!--In seconds-->
     <parameter name="StorageManager" locked="false">persistent</parameter>
     <parameter name="InvokeInOrder" locked="false">AXIS2_FALSE</parameter>
     <parameter name="MessageTypesToDrop" locked="false">none</parameter>
-    <parameter name="MaxRetransCount" locked="false">100</parameter>
-    <parameter name="SenderSleepTime" locked="false">100000</parameter><!--In micro seconds-->
+    <parameter name="MaxRetransCount" locked="false">10</parameter>
+    <parameter name="SenderSleepTime" locked="false">1</parameter><!--In seconds-->
     <parameter name="InvokerSleepTime" locked="false">1</parameter>
-    <parameter name="PollingWaitTime" locked="false">2</parameter>
+    <parameter name="PollingWaitTime" locked="false">4</parameter>
     <parameter name="TerminateDelay" locked="false">4</parameter>
 
 </module>

Modified: webservices/sandesha/trunk/c/configure.ac
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/configure.ac?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/configure.ac (original)
+++ webservices/sandesha/trunk/c/configure.ac Thu Aug 28 23:56:29 2008
@@ -21,7 +21,7 @@
 
 CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE"
 if test "$GCC" = "yes"; then
-    CFLAGS="$CFLAGS -ansi -Wall -Wno-implicit-function-declaration -g -Werror"
+    CFLAGS="$CFLAGS -ansi -Wall -Werror -Wno-implicit-function-declaration -g"
 fi
 LDFLAGS="-lpthread"
 
@@ -78,10 +78,10 @@
     src/util/Makefile \
     src/wsrm/Makefile \
     src/transport/Makefile \
-    src/workers/Makefile \
     src/handlers/Makefile \
     src/msgprocessors/Makefile \
     src/storage/Makefile \
+    src/workers/Makefile \
     src/storage/beans/Makefile \
     src/storage/common/Makefile \
     src/storage/sqlite/Makefile \

Modified: webservices/sandesha/trunk/c/ides/vc8/sandesha2/sandesha2/sandesha2.vcproj
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/ides/vc8/sandesha2/sandesha2/sandesha2.vcproj?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/ides/vc8/sandesha2/sandesha2/sandesha2.vcproj (original)
+++ webservices/sandesha/trunk/c/ides/vc8/sandesha2/sandesha2/sandesha2.vcproj Thu Aug 28 23:56:29 2008
@@ -44,7 +44,7 @@
 			<Tool
 				Name="VCCLCompilerTool"
 				Optimization="0"
-				AdditionalIncludeDirectories="./../../../../include;$(AXIS2C_SRC)\include;$(AXIS2C_SRC)\util\include;$(AXIS2C_SRC)\axiom\include;"
+				AdditionalIncludeDirectories="&quot;C:\damitha\axis2c-bin-1.3.1\include&quot;;./../../../../include;&quot;$(AXIS2C_SRC)\include&quot;;&quot;$(AXIS2C_SRC)\util\include&quot;;&quot;$(AXIS2C_SRC)\axiom\include&quot;"
 				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SANDESHA2_EXPORTS;AXIS2_DECLARE_EXPORT;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINNT=0x0400;"
 				MinimalRebuild="true"
 				BasicRuntimeChecks="3"
@@ -68,10 +68,10 @@
 			<Tool
 				Name="VCLinkerTool"
 				LinkLibraryDependencies="false"
-				UseLibraryDependencyInputs="true"
-				AdditionalDependencies="axutil.lib axiom.lib axis2_engine.lib axis2_parser.lib libmysql.lib"
+				UseLibraryDependencyInputs="false"
+				AdditionalDependencies="axutil.lib axiom.lib axis2_engine.lib axis2_parser.lib"
 				LinkIncremental="1"
-				AdditionalLibraryDirectories="$(AXIS2C_HOME)\lib;C:\Program Files\MySQL\MySQL Server 5.0\lib\debug;$(SQLITE_HOME);"
+				AdditionalLibraryDirectories="&quot;C:\damitha\axis2c-bin-1.3.1\lib&quot;"
 				ModuleDefinitionFile=""
 				GenerateDebugInformation="true"
 				MapExports="false"
@@ -303,6 +303,10 @@
 				<Filter
 					Name="storage"
 					>
+					<File
+						RelativePath="..\..\..\..\src\storage\sqlite\sandesha2_permanent_bean_mgr.h"
+						>
+					</File>
 					<Filter
 						Name="sqlite"
 						>

Modified: webservices/sandesha/trunk/c/include/sandesha2_ack_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_ack_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_ack_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_ack_mgr.h Thu Aug 28 23:56:29 2008
@@ -74,6 +74,7 @@
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
 sandesha2_ack_mgr_piggyback_acks_if_present(
     const axutil_env_t *env,
+    axis2_char_t *seq_id,
     sandesha2_msg_ctx_t *rm_msg_ctx,
     sandesha2_storage_mgr_t *storage_mgr,
     struct sandesha2_seq_property_mgr *seq_prop_mgr,

Modified: webservices/sandesha/trunk/c/include/sandesha2_app_msg_processor.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_app_msg_processor.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_app_msg_processor.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_app_msg_processor.h Thu Aug 28 23:56:29 2008
@@ -55,9 +55,11 @@
     const axutil_env_t *env,
     sandesha2_msg_ctx_t *msg_ctx,
     axis2_char_t *msg_str,
+    axis2_char_t *rmd_sequence_id,
     struct sandesha2_storage_mgr *storage_mgr,
     struct sandesha2_sender_mgr *sender_mgr,
     struct sandesha2_seq_property_mgr *seq_prop_mgr);
+
 /** @} */
 #ifdef __cplusplus
 }

Modified: webservices/sandesha/trunk/c/include/sandesha2_client.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_client.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_client.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_client.h Thu Aug 28 23:56:29 2008
@@ -112,8 +112,7 @@
 sandesha2_client_terminate_seq_with_svc_client(
     const axutil_env_t *env,
     axis2_svc_client_t *svc_client,
-    axis2_callback_t *callback,
-    axis2_listener_manager_t *listener_manager);
+    axis2_callback_t *callback);
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
 sandesha2_client_terminate_seq_with_svc_client_and_seq_key(
@@ -202,15 +201,6 @@
     axiom_node_t *payload,
     axis2_listener_manager_t *listener_manager);
 
-AXIS2_EXTERN void AXIS2_CALL
-sandesha2_client_fire_and_forget(
-    const axutil_env_t *env,
-    axis2_svc_client_t *svc_client,
-    axis2_options_t *options,
-    axutil_qname_t *op_qname,
-    axis2_callback_t *callback,
-    axiom_node_t *payload,
-    axis2_listener_manager_t *listener_manager);
 
 /**
  * In RM 1.0 two way single channel messaging user need

Modified: webservices/sandesha/trunk/c/include/sandesha2_constants.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_constants.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_constants.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_constants.h Thu Aug 28 23:56:29 2008
@@ -31,7 +31,7 @@
 	 * WSRM Spec versions
 	 */
 	#define SANDESHA2_SPEC_VERSION_1_0 "Spec_2005_02"
-	#define SANDESHA2_SPEC_VERSION_1_1 "Spec_2006_08"
+	#define SANDESHA2_SPEC_VERSION_1_1 "Spec_2007_02"
 	
 	/**
 	 * Spec 2005-02
@@ -59,48 +59,52 @@
 	#define SANDESHA2_SPEC_2005_02_SOAP_ACTION_LAST_MESSAGE  "http://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage"
 	
 	/**
-	 * Spec 2005-10
+	 * Spec 2007-02
 	 */
 			
-	#define SANDESHA2_SPEC_2006_08_NS_URI  "http://docs.oasis-open.org/ws-rx/wsrm/200608"
+	#define SANDESHA2_SPEC_2007_02_NS_URI  "http://docs.oasis-open.org/ws-rx/wsrm/200702"
+	
+    #define MAKE_CONNECTION_SPEC_2007_02_NS_URI  "http://docs.oasis-open.org/ws-rx/wsmc/200702"
 		
-	#define SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequence"
+	#define SANDESHA2_SPEC_2007_02_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CreateSequence"
 
-	#define SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequenceResponse"
+	#define SANDESHA2_SPEC_2007_02_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CreateSequenceResponse"
 
-	#define SANDESHA2_SPEC_2006_08_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200608/SequenceAcknowledgement"
+	#define SANDESHA2_SPEC_2007_02_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200702/SequenceAcknowledgement"
 
-	#define SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequence"
+	#define SANDESHA2_SPEC_2007_02_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200702/TerminateSequence"
 			
-	#define SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequenceResponse"
+	#define SANDESHA2_SPEC_2007_02_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200702/TerminateSequenceResponse"
 			
-	#define SANDESHA2_SPEC_2006_08_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200608/AckRequested"
+	#define SANDESHA2_SPEC_2007_02_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200702/AckRequested"
 			
-	#define SANDESHA2_SPEC_2006_08_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequence"
+	#define SANDESHA2_SPEC_2007_02_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CloseSequence"
 			
-	#define SANDESHA2_SPEC_2006_08_ACTION_CLOSE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequenceResponse"
-	#define SANDESHA2_SPEC_2006_08_ACTION_MAKE_CONNECTION "http://docs.oasis-open.org/ws-rx/wsrm/200608/MakeConnection"
+	#define SANDESHA2_SPEC_2007_02_ACTION_CLOSE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CloseSequenceResponse"
+	#define SANDESHA2_SPEC_2007_02_ACTION_MAKE_CONNECTION "http://docs.oasis-open.org/ws-rx/wsmc/200702/MakeConnection"
 
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequence"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CreateSequence"
 
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CreateSequenceResponse"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CreateSequenceResponse"
 
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200608/SequenceAcknowledgement"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200702/SequenceAcknowledgement"
 
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequence"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200702/TerminateSequence"
 			
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200608/TerminateSequenceResponse"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200702/TerminateSequenceResponse"
 			
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200608/AckRequested"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200702/AckRequested"
 			
-	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200608/CloseSequence"
+	#define SANDESHA2_SPEC_2007_02_SOAP_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200702/CloseSequence"
      
-    #define SANDESHA2_SPEC_2006_08_SOAP_ACTION_MAKE_CONNECTION "http://docs.oasis-open.org/ws-rx/wsrm/200608/MakeConnection"
+    #define SANDESHA2_SPEC_2007_02_SOAP_ACTION_MAKE_CONNECTION "http://docs.oasis-open.org/ws-rx/wsmc/200702/MakeConnection"
 	/**
 	 * WSRM Common constants
 	 */
 
 	#define SANDESHA2_WSRM_COMMON_NS_PREFIX_RM  "wsrm"
+	
+    #define SANDESHA2_WSMC_COMMON_NS_PREFIX_RM  "wsmc"
 
 	#define SANDESHA2_WSRM_COMMON_MSG_NUMBER  "MessageNumber"
 
@@ -153,6 +157,7 @@
     #define SANDESHA2_WSRM_COMMON_MESSAGE_PENDING "MessagePending"
     #define SANDESHA2_WSRM_COMMON_PENDING "pending"
     #define SANDESHA2_WSRM_COMMON_MAKE_CONNECTION "MakeConnection"
+    #define SANDESHA2_WSRM_COMMON_ENDPOINT "Endpoint"
     
     /* Message Context Properties */
     #define SANDESHA2_MSG_CTX_PROP_INTERNAL_SEQUENCE_ID "Sandesha2InternalSequenceId"
@@ -166,6 +171,8 @@
 	#define SANDESHA2_WSA_NS_PREFIX_ADDRESSING  "wsa"
 
 	#define SANDESHA2_WSA_ADDRESS  "Address"
+	
+    #define SANDESHA2_WSMC_ADDRESS  "Address"
 
 	#define SANDESHA2_WSA_SOAP_FAULT_ACTION  "http://schemas.xmlsoap.org/ws/2004/08/addressing/fault"
 
@@ -233,9 +240,9 @@
 
 	#define SANDESHA2_SEQ_PROP_ACKS_TO_EPR  "acksToEPR"
 
-	#define SANDESHA2_SEQ_PROP_OUT_SEQ_ID  "OutSequenceId"
+	#define SANDESHA2_SEQUENCE_PROPERTY_RMS_SEQ_ID  "OutSequenceId"
 
-	#define SANDESHA2_SEQ_PROP_INTERNAL_SEQ_ID  "TempSequenceId"
+	#define SANDESHA2_SEQUENCE_PROPERTY_RMS_INTERNAL_SEQ_ID  "TempSequenceId"
 	
     #define SANDESHA2_SEQ_PROP_SPECIAL_INTERNAL_SEQ_ID  "SpecialIntSequenceId"
 
@@ -283,8 +290,6 @@
 
     #define SANDESHA2_SEQ_PROP_HIGHEST_OUT_RELATES_TO "HighestOutRelatesTo"
 		
-	#define SANDESHA2_SEQ_PROP_HIGHEST_OUT_MSG_KEY  "HighestOutMsgKey"
-		
 	#define SANDESHA2_SEQ_PROP_LAST_OUT_MESSAGE_NO  "LastOutMessage"
 		
 	#define SANDESHA2_SEQ_PROP_LAST_IN_MESSAGE_NO  "LastInMessage"
@@ -292,6 +297,12 @@
     #define SANDESHA2_SEQ_PROP_LAST_IN_MESSAGE_ID  "LastInMessageId"
 
     #define SANDESHA2_SEQ_PROP_HIGHEST_IN_MSG_ID "HighestInMsgId"
+    
+    #define SANDESHA2_SEQ_PROP_1_0_REPLAY "Replay1_0"
+    
+    #define SANDESHA2_SEQ_PROP_RELATED_MSG_ID "related_msg_id"
+    
+    #define SANDESHA2_SEQ_PROP_MAKE_CONNECTION_OUT_PATH "make_connection_out_path"
 	
 	/**
 	 * SOAP Versions
@@ -370,6 +381,8 @@
 	#define SANDESHA2_PROPERTIES_INACTIVETIMEOUT_MEASURE  "InactivityTimeoutMeasure"
 	
     #define SANDESHA2_PROPERTIES_TERMINATE_DELAY  "TerminateDelay"
+    
+    #define SANDESHA2_PROPERTIES_POLLING_DELAY  "PollingWaitTime"
 		
 	#define SANDESHA2_PROPERTIES_STORAGE_MGR  "StorageManager"
 		
@@ -425,13 +438,15 @@
 
 	#define SANDESHA2_INVOKER_SLEEP_TIME  1  /*4 1 */
 
-	#define SANDESHA2_SENDER_SLEEP_TIME  100000  /*micro seconds*/
+	#define SANDESHA2_SENDER_SLEEP_TIME  1  /*seconds*/
 
     #define SANDESHA2_POLLING_MANAGER_WAIT_TIME 3 /* 4 3 */
 
 	#define SANDESHA2_CLIENT_SLEEP_TIME  4 /* 32 16 */
 
 	#define SANDESHA2_TERMINATE_DELAY  4 /* In seconds */
+	
+    #define SANDESHA2_POLLING_DELAY  4 /* In seconds */
 
 	#define SANDESHA2_TEMP_SEQ_ID  "uuid:tempID"
 
@@ -494,7 +509,7 @@
 	
 	#define SANDESHA2_MODULE_CLASS_LOADER  "Sandesha2ModuleClassLoader"
 
-    #define SANDESHA2_WSRM_ANON_URI_PREFIX "http://docs.oasis-open.org/ws-rx/wsrm/200608/anonymous"
+    #define SANDESHA2_WSRM_ANON_URI_PREFIX "http://docs.oasis-open.org/ws-rx/wsrm/200702/anonymous"
 
     #define AXIS2_WS_RM_ANONYMOUS_URL "http://docs.oasis-open.org/ws-rx/wsmc/200702/anonymous?id="
     
@@ -517,9 +532,9 @@
     #define SANDESHA2_DB_PASSWORD "db_password"
 	#define SANDESHA2_SENDER_SLEEP  "SenderSleepTime"
 	#define SANDESHA2_INVOKER_SLEEP  "InvokerSleepTime"
-	#define SANDESHA2_POLLING_WAIT  "PollingWaitTime"
 	#define SANDESHA2_MODULE  "sandesha2"
 	#define SANDESHA2_ISOLATED_LAST_MSG "isolated_last_msg"
+	#define SANDESHA2_PROPERTY_STRING "propstr"
 /** @} */
 #ifdef __cplusplus
 }

Modified: webservices/sandesha/trunk/c/include/sandesha2_create_seq_bean.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_create_seq_bean.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_create_seq_bean.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_create_seq_bean.h Thu Aug 28 23:56:29 2008
@@ -59,23 +59,23 @@
     axis2_char_t* seq_msg_id) ;
 
 axis2_char_t* AXIS2_CALL 
-sandesha2_create_seq_bean_get_seq_id (
+sandesha2_create_seq_bean_get_rms_sequence_id (
     sandesha2_create_seq_bean_t *create_seq_bean,
     const axutil_env_t *env);
 	
 void AXIS2_CALL
-sandesha2_create_seq_bean_set_seq_id (
+sandesha2_create_seq_bean_set_rms_sequence_id (
     sandesha2_create_seq_bean_t *create_seq_bean,
     const axutil_env_t *env, 
     axis2_char_t* seq_id) ;
 
 axis2_char_t* AXIS2_CALL
-sandesha2_create_seq_bean_get_internal_seq_id (
+sandesha2_create_seq_bean_get_internal_sequence_id (
     sandesha2_create_seq_bean_t *create_seq_bean,
     const axutil_env_t *env);
 
 void AXIS2_CALL
-sandesha2_create_seq_bean_set_internal_seq_id (
+sandesha2_create_seq_bean_set_internal_sequence_id (
     sandesha2_create_seq_bean_t *create_seq_bean,
     const axutil_env_t *env, 
     axis2_char_t* int_seq_id);

Modified: webservices/sandesha/trunk/c/include/sandesha2_fault_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_fault_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_fault_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_fault_mgr.h Thu Aug 28 23:56:29 2008
@@ -46,7 +46,7 @@
 sandesha2_msg_ctx_t* AXIS2_CALL 
 sandesha2_fault_mgr_check_for_create_seq_refused(
     const axutil_env_t *env,
-    axis2_msg_ctx_t *create_seq_msg,
+    sandesha2_msg_ctx_t *rm_create_seq_msg_ctx,
     sandesha2_seq_property_mgr_t *seq_prop_mgr);
         
 sandesha2_msg_ctx_t* AXIS2_CALL 

Modified: webservices/sandesha/trunk/c/include/sandesha2_make_connection.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_make_connection.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_make_connection.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_make_connection.h Thu Aug 28 23:56:29 2008
@@ -24,7 +24,7 @@
 
 #include <axiom_soap_envelope.h>
 #include <sandesha2_identifier.h>
-#include <sandesha2_address.h>
+#include <sandesha2_mc_address.h>
 #include <sandesha2_error.h>
 
 
@@ -71,7 +71,7 @@
     const axutil_env_t *env, 
     sandesha2_identifier_t *identifier);
                     	
-sandesha2_address_t * AXIS2_CALL
+sandesha2_mc_address_t * AXIS2_CALL
 sandesha2_make_connection_get_address(
     sandesha2_make_connection_t *make_conn,
     const axutil_env_t *env);
@@ -80,7 +80,7 @@
 sandesha2_make_connection_set_address(
     sandesha2_make_connection_t *make_conn,
     const axutil_env_t *env, 
-    sandesha2_address_t *address);
+    sandesha2_mc_address_t *address);
 
 axis2_status_t AXIS2_CALL
 sandesha2_make_connection_to_soap_envelope(

Modified: webservices/sandesha/trunk/c/include/sandesha2_msg_creator.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_msg_creator.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_msg_creator.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_msg_creator.h Thu Aug 28 23:56:29 2008
@@ -123,6 +123,7 @@
     const axutil_env_t *env,
     sandesha2_msg_ctx_t *ref_rm_msg_ctx, 
     axis2_char_t *make_conn_seq_id,
+    const axis2_char_t *internal_seq_id,
     axis2_char_t *make_conn_anon_uri,
     sandesha2_seq_property_mgr_t *seq_prop_mgr);
 

Modified: webservices/sandesha/trunk/c/include/sandesha2_msg_ctx.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_msg_ctx.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_msg_ctx.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_msg_ctx.h Thu Aug 28 23:56:29 2008
@@ -388,6 +388,17 @@
     sandesha2_msg_ctx_t *rm_msg_ctx,
     const axutil_env_t *env);
 
+axis2_bool_t AXIS2_CALL
+sandesha2_msg_ctx_get_server_side(
+    const sandesha2_msg_ctx_t * rm_msg_ctx,
+    const axutil_env_t * env);
+
+axis2_status_t AXIS2_CALL
+sandesha2_msg_ctx_set_server_side(
+    const sandesha2_msg_ctx_t * rm_msg_ctx,
+    const axutil_env_t * env,
+    const axis2_bool_t server_side);
+
 /** @} */
 #ifdef __cplusplus
 }

Modified: webservices/sandesha/trunk/c/include/sandesha2_permanent_storage_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_permanent_storage_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_permanent_storage_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_permanent_storage_mgr.h Thu Aug 28 23:56:29 2008
@@ -54,34 +54,6 @@
     const axutil_env_t *env);
 
 axis2_status_t AXIS2_CALL
-sandesha2_permanent_storage_mgr_init(
-    sandesha2_storage_mgr_t *storage_mgr,
-    const axutil_env_t *env,
-    axis2_conf_ctx_t *conf_ctx);
-
-axis2_status_t AXIS2_CALL
-sandesha2_permanent_storage_mgr_store_msg_ctx(
-    sandesha2_storage_mgr_t *storage_mgr,
-    const axutil_env_t *env,
-    axis2_char_t *key,
-    axis2_msg_ctx_t *msg_ctx);
-			
-axis2_status_t AXIS2_CALL
-sandesha2_permanent_storage_mgr_update_msg_ctx(
-    sandesha2_storage_mgr_t *storage_mgr,
-    const axutil_env_t *env,
-    axis2_char_t *key,
-    axis2_msg_ctx_t *msg_ctx);
-
-axis2_msg_ctx_t * AXIS2_CALL
-sandesha2_permanent_storage_mgr_retrieve_msg_ctx(
-    sandesha2_storage_mgr_t *storage_mgr, 
-    const axutil_env_t *env, 
-    axis2_char_t *key,
-    axis2_conf_ctx_t *conf_ctx,
-    const axis2_bool_t persistent);
-
-axis2_status_t AXIS2_CALL
 sandesha2_permanent_storage_mgr_create_db(
     const axutil_env_t *env,
     axis2_conf_ctx_t *conf_ctx);

Modified: webservices/sandesha/trunk/c/include/sandesha2_polling_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_polling_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_polling_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_polling_mgr.h Thu Aug 28 23:56:29 2008
@@ -31,64 +31,27 @@
 #include <axutil_string.h>
 #include <axutil_utils.h>
 #include <axis2_conf_ctx.h>
+#include <sandesha2_msg_ctx.h>
+#include <sandesha2_storage_mgr.h>
+#include <sandesha2_sender_mgr.h>
 
 #ifdef __cplusplus
 extern "C"
 {
 #endif
 
-typedef struct sandesha2_polling_mgr_t sandesha2_polling_mgr_t;
-
-AXIS2_EXTERN sandesha2_polling_mgr_t * AXIS2_CALL
-sandesha2_polling_mgr_create(
-    const axutil_env_t *env);
- 
-/**
- * Frees the polling_mgr given as a void pointer. This method would cast the 
- * void parameter to an polling_mgr pointer and then call free method.
- * @param polling_mgr pointer to polling_mgr as a void pointer
- * @param env pointer to environment struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
-AXIS2_EXTERN axis2_status_t AXIS2_CALL
-sandesha2_polling_mgr_free_void_arg(
-    void *polling_mgr,
-    const axutil_env_t *env);
-
-axis2_status_t AXIS2_CALL 
-sandesha2_polling_mgr_free(
-    sandesha2_polling_mgr_t *polling_mgr, 
-    const axutil_env_t *env);
-
-axis2_status_t AXIS2_CALL 
-sandesha2_polling_mgr_stop_polling (
-    sandesha2_polling_mgr_t *polling_mgr,
-    const axutil_env_t *env);
             
 axis2_status_t AXIS2_CALL 
 sandesha2_polling_mgr_start (
-    sandesha2_polling_mgr_t *polling_mgr, 
     const axutil_env_t *env, 
     axis2_conf_ctx_t *conf_ctx,
-    const axis2_char_t *internal_seq_id);
+    sandesha2_storage_mgr_t *storage_mgr,
+    sandesha2_sender_mgr_t *sender_mgr,
+    sandesha2_msg_ctx_t *rm_msg_ctx,
+    const axis2_char_t *internal_sequence_id,
+    axis2_char_t *sequence_id,
+    const axis2_char_t *reply_to);
             
-void AXIS2_CALL
-sandesha2_polling_mgr_set_poll(
-    sandesha2_polling_mgr_t *polling_mgr,
-    const axutil_env_t *env,
-    axis2_bool_t poll);
-
-axis2_bool_t AXIS2_CALL
-sandesha2_polling_mgr_is_poll(
-    sandesha2_polling_mgr_t *polling_mgr,
-    const axutil_env_t *env);
-
-void AXIS2_CALL
-sandesha2_polling_mgr_schedule_polling_request(
-    sandesha2_polling_mgr_t *polling_mgr,
-    const axutil_env_t *env,
-    const axis2_char_t *internal_seq_id);
-                   
 /** @} */
 #ifdef __cplusplus
 }

Modified: webservices/sandesha/trunk/c/include/sandesha2_property_bean.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_property_bean.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_property_bean.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_property_bean.h Thu Aug 28 23:56:29 2008
@@ -204,6 +204,16 @@
     const axutil_env_t *env, 
     int delay);
 
+int AXIS2_CALL
+sandesha2_property_bean_get_polling_delay (
+    sandesha2_property_bean_t *bean,
+    const axutil_env_t *env);
+            
+axis2_status_t AXIS2_CALL
+sandesha2_property_bean_set_polling_delay(
+    sandesha2_property_bean_t *bean,
+    const axutil_env_t *env, 
+    int delay);
                        
 /** @} */
 #ifdef __cplusplus

Modified: webservices/sandesha/trunk/c/include/sandesha2_sender_bean.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_sender_bean.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_sender_bean.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_sender_bean.h Thu Aug 28 23:56:29 2008
@@ -79,7 +79,7 @@
 sandesha2_sender_bean_set_send (
     sandesha2_sender_bean_t *sender,
     const axutil_env_t *env,
-axis2_bool_t send);
+    axis2_bool_t send);
 
 axis2_char_t* AXIS2_CALL
 sandesha2_sender_bean_get_internal_seq_id (

Modified: webservices/sandesha/trunk/c/include/sandesha2_sender_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_sender_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_sender_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_sender_mgr.h Thu Aug 28 23:56:29 2008
@@ -97,6 +97,13 @@
                 sandesha2_sender_bean_t *bean);
 
     sandesha2_sender_bean_t *(AXIS2_CALL *
+            get_application_msg_to_send)(
+                sandesha2_sender_mgr_t *sender,
+                const axutil_env_t *env,
+                const axis2_char_t *seq_id,
+                const axis2_char_t *msg_id);
+
+    sandesha2_sender_bean_t *(AXIS2_CALL *
             get_next_msg_to_send)(
                 sandesha2_sender_mgr_t *sender,
                 const axutil_env_t *env,
@@ -161,6 +168,13 @@
     sandesha2_sender_bean_t *bean);
 
 sandesha2_sender_bean_t *AXIS2_CALL
+sandesha2_sender_mgr_get_application_msg_to_send(
+    sandesha2_sender_mgr_t *sender,
+    const axutil_env_t *env,
+    const axis2_char_t *seq_id,
+    const axis2_char_t *msg_id);
+
+sandesha2_sender_bean_t *AXIS2_CALL
 sandesha2_sender_mgr_get_next_msg_to_send(
     sandesha2_sender_mgr_t *sender,
     const axutil_env_t *env,

Modified: webservices/sandesha/trunk/c/include/sandesha2_seq_ack.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_seq_ack.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_seq_ack.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_seq_ack.h Thu Aug 28 23:56:29 2008
@@ -61,6 +61,11 @@
     sandesha2_seq_ack_t *seq_ack, 
     const axutil_env_t *env);
 
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+sandesha2_seq_ack_increment_ref(
+    sandesha2_seq_ack_t * seq_ack,
+    const axutil_env_t * env);
+
 sandesha2_identifier_t * AXIS2_CALL
 sandesha2_seq_ack_get_identifier(
     sandesha2_seq_ack_t *seq_ack,

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=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_seq_mgr.h Thu Aug 28 23:56:29 2008
@@ -45,7 +45,7 @@
   */
 
 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, 
     struct sandesha2_seq_property_mgr *seq_prop_mgr,
@@ -66,18 +66,16 @@
 sandesha2_seq_mgr_has_seq_timedout(
     const axutil_env_t *env,
     axis2_char_t *property_key,
-    sandesha2_msg_ctx_t *rm_msg_ctx,
     struct sandesha2_seq_property_mgr *seq_prop_mgr,
     axis2_conf_ctx_t *conf_ctx);
         
 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 *spec_version,
-    struct sandesha2_seq_property_mgr *seq_prop_mgr,
-    const axis2_bool_t persistent);
+    struct sandesha2_seq_property_mgr *seq_prop_mgr);
 
 /** @} */
 #ifdef __cplusplus

Modified: webservices/sandesha/trunk/c/include/sandesha2_seq_offer.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_seq_offer.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_seq_offer.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_seq_offer.h Thu Aug 28 23:56:29 2008
@@ -24,6 +24,7 @@
 
 #include <sandesha2_error.h>
 #include <sandesha2_identifier.h>
+#include <sandesha2_endpoint.h>
 #include <sandesha2_expires.h>
 
 #ifdef __cplusplus
@@ -46,7 +47,8 @@
 AXIS2_EXTERN sandesha2_seq_offer_t* AXIS2_CALL
 sandesha2_seq_offer_create(
     const axutil_env_t *env, 
-    axis2_char_t *ns_value);
+    axis2_char_t *ns_value,
+	axis2_char_t *addr_ns_val);
 
 axis2_status_t AXIS2_CALL 
 sandesha2_seq_offer_free(
@@ -64,6 +66,17 @@
     const axutil_env_t *env, 
     sandesha2_identifier_t *identifier);
 
+sandesha2_endpoint_t * AXIS2_CALL
+sandesha2_seq_offer_get_endpoint(
+    sandesha2_seq_offer_t *seq_offer,
+    const axutil_env_t *env);
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_seq_offer_set_endpoint(
+    sandesha2_seq_offer_t *seq_offer,
+    const axutil_env_t *env, 
+    sandesha2_endpoint_t *endpoint);
+
 sandesha2_expires_t * AXIS2_CALL                    	
 sandesha2_seq_offer_get_expires(
     sandesha2_seq_offer_t *seq_offer,

Modified: webservices/sandesha/trunk/c/include/sandesha2_seq_property_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_seq_property_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_seq_property_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_seq_property_mgr.h Thu Aug 28 23:56:29 2008
@@ -71,8 +71,8 @@
             retrieve)(
                 sandesha2_seq_property_mgr_t *seq_property,
                 const axutil_env_t *env,
-                axis2_char_t *seq_id,
-                axis2_char_t *name);
+                const axis2_char_t *seq_id,
+                const axis2_char_t *name);
 
     axis2_bool_t (AXIS2_CALL *
             update)(
@@ -96,7 +96,6 @@
             retrieve_all)(
                 sandesha2_seq_property_mgr_t *seq_property,
                 const axutil_env_t *env);
-
 };
 
 AXIS2_DECLARE_DATA struct sandesha2_seq_property_mgr
@@ -131,8 +130,8 @@
 sandesha2_seq_property_mgr_retrieve(
     sandesha2_seq_property_mgr_t *seq_property,
     const axutil_env_t *env,
-    axis2_char_t *seq_id,
-    axis2_char_t *name);
+    const axis2_char_t *seq_id,
+    const axis2_char_t *name);
 
 axis2_bool_t AXIS2_CALL
 sandesha2_seq_property_mgr_update(

Modified: webservices/sandesha/trunk/c/include/sandesha2_storage_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_storage_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_storage_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_storage_mgr.h Thu Aug 28 23:56:29 2008
@@ -82,7 +82,8 @@
                 sandesha2_storage_mgr_t *storage_mgr,
                 const axutil_env_t *env,
                 axis2_char_t *key,
-                axis2_msg_ctx_t *msg_ctx);
+                axis2_msg_ctx_t *msg_ctx,
+                axis2_bool_t store_in_memory);
                 
     axis2_status_t (AXIS2_CALL *
             update_msg_ctx)(
@@ -140,7 +141,6 @@
                 const axutil_env_t *env, 
                 axis2_char_t *seq_id,
                 int msg_no);
-
 };
 
 AXIS2_DECLARE_DATA struct sandesha2_storage_mgr
@@ -202,7 +202,8 @@
     sandesha2_storage_mgr_t *storage_mgr,
     const axutil_env_t *env,
     axis2_char_t *key,
-    axis2_msg_ctx_t *msg_ctx);
+    axis2_msg_ctx_t *msg_ctx,
+    axis2_bool_t store_in_memory);
 			
 axis2_status_t AXIS2_CALL
 sandesha2_storage_mgr_update_msg_ctx(

Modified: webservices/sandesha/trunk/c/include/sandesha2_terminate_mgr.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_terminate_mgr.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_terminate_mgr.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_terminate_mgr.h Thu Aug 28 23:56:29 2008
@@ -102,7 +102,7 @@
     struct sandesha2_sender_mgr *sender_mgr);
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
-sandesha2_terminate_mgr_add_terminate_seq_msg(
+sandesha2_terminate_mgr_send_terminate_seq_msg(
     const axutil_env_t *env,
     sandesha2_msg_ctx_t *rm_msg_ctx,
     axis2_char_t *out_seq_id,

Modified: webservices/sandesha/trunk/c/include/sandesha2_utils.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_utils.h?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_utils.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_utils.h Thu Aug 28 23:56:29 2008
@@ -73,8 +73,8 @@
 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
 sandesha2_utils_get_seq_property(
     const axutil_env_t *env,
-    axis2_char_t *id,
-    axis2_char_t *name,
+    const axis2_char_t *id,
+    const axis2_char_t *name,
     sandesha2_seq_property_mgr_t *seq_prop_mgr);
 
 AXIS2_EXTERN sandesha2_property_bean_t* AXIS2_CALL
@@ -117,16 +117,10 @@
     axis2_char_t *seq_id,
     const axis2_bool_t persistent);
 
-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);
-                        
 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_seq_id);
 
 AXIS2_EXTERN axis2_transport_out_desc_t* AXIS2_CALL
 sandesha2_utils_get_transport_out(
@@ -143,19 +137,19 @@
     axis2_char_t *dbname);
 
 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);
 
 /**
  * Caller must free the returned string.
  * @param to
  * @param seq_key
  *
- * @return internal_seq_id
+ * @return rms_internal_seq_id
  */
 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);
@@ -163,8 +157,7 @@
 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_EXTERN  int AXIS2_CALL
 sandesha2_utils_get_soap_version(
@@ -243,23 +236,27 @@
     const axutil_env_t *env,
     axis2_conf_ctx_t *conf_ctx);
 
-AXIS2_EXTERN axis2_status_t AXIS2_CALL                        
-sandesha2_utils_stop_polling_mgr(
-    const axutil_env_t *env,
-    axis2_conf_ctx_t *conf_ctx);
-
 axutil_array_list_t *AXIS2_CALL
 sandesha2_utils_split(
     const axutil_env_t *env,
     axis2_char_t *str,
     axis2_char_t *pattern);
 
+/**
+ * In this function it checks whether acks_to_addr is anonymous and rm_version is 1.0.
+ * Form this it concludes that this is possibly a rm 1.0 replay mode. Note that it
+ * does not check message exchange pattern.
+ *
+ * @param rm_version Reliable messaging spec version
+ * @param acks_to_addr Acknowledgment to address
+ */
 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);
 
+
 AXIS2_EXTERN axis2_msg_ctx_t * AXIS2_CALL
 sandesha2_utils_create_out_msg_ctx(
     const axutil_env_t *env,
@@ -270,6 +267,31 @@
     const axutil_env_t *env,
     axis2_conf_ctx_t *conf_ctx);
 
+axis2_bool_t AXIS2_CALL
+sandesha2_util_is_fault_envelope(
+    const axutil_env_t *env, 
+    axiom_soap_envelope_t *soap_envelope);
+
+axis2_bool_t AXIS2_CALL
+sandesha2_util_is_ack_already_piggybacked(
+    const axutil_env_t *env, 
+    sandesha2_msg_ctx_t *rm_msg_ctx);
+
+axis2_bool_t AXIS2_CALL
+sandesha2_util_is_piggybackable_msg_type(
+    const axutil_env_t *env, 
+    int msg_type);
+
+axutil_property_t *AXIS2_CALL
+sandesha2_util_property_clone(
+    const axutil_env_t * env,
+    axutil_property_t * property);
+
+axis2_endpoint_ref_t *AXIS2_CALL
+sandesha2_util_endpoint_ref_clone(
+    const axutil_env_t * env,
+    axis2_endpoint_ref_t * endpoint_ref);
+
 /** @} */
 #ifdef __cplusplus
 }

Modified: webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc.c (original)
+++ webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc.c Thu Aug 28 23:56:29 2008
@@ -39,15 +39,9 @@
     axiom_node_t *node)
 {
     axiom_node_t *text_parent_node = NULL;
-    axiom_element_t *text_parent_element = NULL;
     axiom_node_t *text_node = NULL;
     axiom_node_t *ret_node = NULL;
-    axiom_element_t *element = NULL;
-    axis2_char_t *ns = "http://tempuri.org/";
-    axutil_qname_t *qname = NULL;
 
-    AXIS2_ENV_CHECK(env, NULL);
-   
     /* Expected request format is :-
      * <ns1:echoString xmlns:ns1="http://ws.apache.org/axis2/c/samples">
      *      <text>echo5</text>
@@ -58,16 +52,13 @@
         AXIS2_ERROR_SET(env->error, AXIS2_ERROR_SVC_SKEL_INPUT_OM_NODE_NULL, AXIS2_FAILURE);
         return NULL;
     }
-    /*element = axiom_node_get_data_element(node, env);
-    qname = axutil_qname_create(env, "Text", ns, NULL);
-    text_parent_element = axiom_element_get_first_child_with_qname(element, env, 
-            qname, node, &text_parent_node);
-    axutil_qname_free(qname, env);*/
+
     text_parent_node = axiom_node_get_first_element(node, env);
     if (!text_parent_node) /* 'text' node */
     {
         AXIS2_ERROR_SET(env->error, 
             AXIS2_ERROR_SVC_SKEL_INVALID_XML_FORMAT_IN_REQUEST, AXIS2_FAILURE);
+
         return NULL;
     }
     
@@ -111,12 +102,6 @@
     
     ns1 = axiom_namespace_create (env, "http://tempuri.org/", "ns1");
 
-    echo_om_ele = axiom_element_create(env, NULL, "echoString", ns1, &echo_om_node);
-    
-    text_om_ele = axiom_element_create(env, echo_om_node, "text", NULL, &text_om_node);
-
-    axiom_element_set_text(text_om_ele, env, text, text_om_node);
-
     echo_om_ele = axiom_element_create(env, NULL, "echoStringResponse", ns1, &echo_om_node);
     text_om_ele = axiom_element_create(env, echo_om_node, "EchoStringReturn", ns1, &text_om_node);
     axiom_element_set_text(text_om_ele, env, text, text_om_node);
@@ -334,7 +319,7 @@
                         axiom_data_handler_write_to(data_handler, env);
                         ret_node = build_response1(env, base64text);
                     }
-                    else /* nothing came */
+                    else /* attachement missing */
                     {
                         AXIS2_ERROR_SET(env->error,
                             AXIS2_ERROR_ATTACHMENT_MISSING,

Modified: webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc_skel.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc_skel.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc_skel.c (original)
+++ webservices/sandesha/trunk/c/samples/RMSampleService/rm_sample_svc_skel.c Thu Aug 28 23:56:29 2008
@@ -64,11 +64,9 @@
 {
     axis2_svc_skeleton_t *svc_skeleton = NULL;
     /* Allocate memory for the structs */
-    svc_skeleton = AXIS2_MALLOC(env->allocator, 
-        sizeof(axis2_svc_skeleton_t));
+    svc_skeleton = AXIS2_MALLOC(env->allocator, sizeof(axis2_svc_skeleton_t));
 
-    svc_skeleton->ops = AXIS2_MALLOC(
-        env->allocator, sizeof(axis2_svc_skeleton_ops_t));
+    svc_skeleton->ops = AXIS2_MALLOC(env->allocator, sizeof(axis2_svc_skeleton_ops_t));
     svc_skeleton->ops = &rm_sample_svc_ops_var;
     svc_skeleton->func_array = NULL;
 
@@ -81,13 +79,6 @@
     axis2_svc_skeleton_t *svc_skeleton,
     const axutil_env_t *env)
 {
-    svc_skeleton->func_array = axutil_array_list_create(env, 0);
-    /* Add the implemented operation names of the service to  
-     * the array list of functions 
-     */
-    axutil_array_list_add(svc_skeleton->func_array, env, "echoString");
-    axutil_array_list_add(svc_skeleton->func_array, env, "ping");
-    axutil_array_list_add(svc_skeleton->func_array, env, "mtomSample");
     /* Any initialization stuff of echo service should go here */
     return AXIS2_SUCCESS;
 }
@@ -111,27 +102,37 @@
     {
         op_qname = (axutil_qname_t *)axis2_op_get_qname(op, env);
         if(op_qname)
+        {
             op_name = axutil_qname_get_localpart(op_qname, env);
+        }
+
         if(op_name)
         {
-            if (axutil_strcmp(op_name, "echoString") == 0)
+            if (!axutil_strcmp(op_name, "echoString"))
+            {
                 return rm_sample_svc_echo(env, node);
-            if (axutil_strcmp(op_name, "ping") == 0)
+            }
+            if (!axutil_strcmp(op_name, "ping"))
             {
                 rm_sample_svc_ping(env, node);
                 return NULL;
             }
-            if (axutil_strcmp(op_name, "mtomSample") == 0)
+            if (!axutil_strcmp(op_name, "mtomSample"))
+            {
                 return rm_sample_svc_mtom(env, node, msg_ctx);
+            }
         }
     }
+
     return NULL;
 }
 
 /* On fault, handle the fault */
 axiom_node_t* AXIS2_CALL
-rm_sample_svc_on_fault(axis2_svc_skeleton_t *svc_skeli, 
-              const axutil_env_t *env, axiom_node_t *node)
+rm_sample_svc_on_fault(
+    axis2_svc_skeleton_t *svc_skeli, 
+    const axutil_env_t *env, 
+    axiom_node_t *node)
 {
    /* Here we are just setting a simple error message inside an element 
     * called 'EchoServiceError' 
@@ -139,25 +140,17 @@
     axiom_node_t *error_node = NULL;
     axiom_node_t* text_node = NULL;
     axiom_element_t *error_ele = NULL;
-    error_ele = axiom_element_create(env, node, "EchoServiceError", NULL, 
-        &error_node);
-    axiom_element_set_text(error_ele, env, "Echo service failed ", 
-        text_node);
+    error_ele = axiom_element_create(env, node, "EchoServiceError", NULL, &error_node);
+    axiom_element_set_text(error_ele, env, "Echo service failed ", text_node);
     return error_node;
 }
 
 /* Free the resources used */
 int AXIS2_CALL
-rm_sample_svc_free(axis2_svc_skeleton_t *svc_skeleton,
-            const axutil_env_t *env)
+rm_sample_svc_free(
+    axis2_svc_skeleton_t *svc_skeleton,
+    const axutil_env_t *env)
 {
-    /* Free the function array */
-    if(svc_skeleton->func_array)
-    {
-        axutil_array_list_free(svc_skeleton->func_array, env);
-        svc_skeleton->func_array = NULL;
-    }
-    
     /* Free the service skeleton */
     if(svc_skeleton)
     {

Modified: webservices/sandesha/trunk/c/samples/RMSampleService/services.xml
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/RMSampleService/services.xml?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/RMSampleService/services.xml (original)
+++ webservices/sandesha/trunk/c/samples/RMSampleService/services.xml Thu Aug 28 23:56:29 2008
@@ -1,5 +1,6 @@
 <service name="RMSampleService">
     <module ref="sandesha2"/>
+    <module ref="addressing"/>
     <parameter name="ServiceClass" locked="xsd:false">RMSampleService</parameter>
 
    <description>

Modified: webservices/sandesha/trunk/c/samples/build.sh
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/build.sh?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/build.sh (original)
+++ webservices/sandesha/trunk/c/samples/build.sh Thu Aug 28 23:56:29 2008
@@ -2,6 +2,6 @@
 
 ./autogen.sh
 
-./configure --prefix=${AXIS2C_HOME} --with-axis2=${AXIS2C_HOME}/include/axis2-1.4.0
-make 
+./configure --prefix=${AXIS2C_HOME} --with-axis2=${AXIS2C_HOME}/include/axis2-1.5.0
+make -j30
 make install

Modified: webservices/sandesha/trunk/c/samples/configure.ac
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/configure.ac?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/configure.ac (original)
+++ webservices/sandesha/trunk/c/samples/configure.ac Thu Aug 28 23:56:29 2008
@@ -22,7 +22,7 @@
 dnl Checks for libraries.
 AC_CHECK_LIB(dl, dlopen)
 
-CFLAGS="$CFLAGS -ansi -Wall -D_LARGEFILE64_SOURCE -Werror"
+CFLAGS="$CFLAGS -ansi -Wall -D_LARGEFILE64_SOURCE -g -Werror"
 LDFLAGS="-L$AXIS2C_HOME/lib -lpthread"
 
 dnl Checks for header files.

Modified: webservices/sandesha/trunk/c/samples/rm_echo_1_0/rm_echo.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_echo_1_0/rm_echo.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_echo_1_0/rm_echo.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_echo_1_0/rm_echo.c Thu Aug 28 23:56:29 2008
@@ -29,7 +29,7 @@
 #include <platforms/axutil_platform_auto_sense.h>
 #include <ctype.h>
 
-#define SANDESHA2_MAX_COUNT 8
+#define SANDESHA2_MAX_COUNT 2
 
 /* on_complete callback function */
 axis2_status_t AXIS2_CALL
@@ -67,6 +67,7 @@
     axutil_property_t *property = NULL;
     axutil_string_t *soap_action = NULL;
     axis2_char_t *seq_key = NULL;
+    axis2_char_t *offered_seq_id = NULL;
     int c;
     int i = 0;
    
@@ -146,6 +147,18 @@
         return -1;
     }
     axis2_options_set_soap_version(options, env, AXIOM_SOAP11);
+
+    /* Offer sequence */
+    offered_seq_id = axutil_uuid_gen(env);
+    property = axutil_property_create(env);
+    if(property)
+    {
+        axutil_property_set_value(property, env, axutil_strdup(env, 
+            offered_seq_id));
+        axis2_options_set_property(options, env, 
+            SANDESHA2_CLIENT_OFFERED_SEQ_ID, property);
+    }
+
     /* RM Version 1.0 */
     property = axutil_property_create_with_args(env, 3, 0, 0, 
         SANDESHA2_SPEC_VERSION_1_0);
@@ -167,6 +180,7 @@
         axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY, 
             property);
     }
+
     for(i = 1; i < 3; i++)
     {
         axis2_char_t echo_str[7];
@@ -179,6 +193,7 @@
         wait_on_callback(env, callback1);
         AXIS2_SLEEP(1);
     }
+
     axis2_svc_client_remove_all_headers(svc_client, env);
     property = axutil_property_create_with_args(env, 0, 0, 0, AXIS2_VALUE_TRUE);
     axis2_options_set_property(options, env, "Sandesha2LastMessage", property);

Modified: webservices/sandesha/trunk/c/samples/rm_echo_1_0_large_sequence/rm_echo.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_echo_1_0_large_sequence/rm_echo.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_echo_1_0_large_sequence/rm_echo.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_echo_1_0_large_sequence/rm_echo.c Thu Aug 28 23:56:29 2008
@@ -67,6 +67,7 @@
     axutil_property_t *property = NULL;
     axutil_string_t *soap_action = NULL;
     axis2_char_t *seq_key = NULL;
+    axis2_char_t *offered_seq_id = NULL;
     int c;
     int i = 0;
    
@@ -146,6 +147,18 @@
         return -1;
     }
     axis2_options_set_soap_version(options, env, AXIOM_SOAP11);
+
+    /* Offer sequence */
+    offered_seq_id = axutil_uuid_gen(env);
+    property = axutil_property_create(env);
+    if(property)
+    {
+        axutil_property_set_value(property, env, axutil_strdup(env, 
+            offered_seq_id));
+        axis2_options_set_property(options, env, 
+            SANDESHA2_CLIENT_OFFERED_SEQ_ID, property);
+    }
+
     /* RM Version 1.0 */
     property = axutil_property_create_with_args(env, 3, 0, 0, 
         SANDESHA2_SPEC_VERSION_1_0);

Modified: webservices/sandesha/trunk/c/samples/rm_echo_1_1/rm_echo_1_1.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_echo_1_1/rm_echo_1_1.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_echo_1_1/rm_echo_1_1.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_echo_1_1/rm_echo_1_1.c Thu Aug 28 23:56:29 2008
@@ -21,7 +21,6 @@
 #include <axis2_svc_ctx.h>
 #include <axis2_conf_ctx.h>
 #include <axis2_op_client.h>
-#include <axis2_listener_manager.h>
 #include <axis2_callback_recv.h>
 #include <axis2_svc_client.h>
 #include <sandesha2_client_constants.h>
@@ -68,15 +67,13 @@
     axis2_callback_t *callback2 = NULL;
     axis2_callback_t *callback3 = NULL;
     axutil_property_t *property = NULL;
-    axis2_listener_manager_t *listener_manager = NULL;
     axis2_char_t *offered_seq_id = NULL;
     axis2_bool_t offer = AXIS2_TRUE;
     axis2_char_t *seq_key = NULL;
     int c;
    
     /* Set up the environment */
-    env = axutil_env_create_all("rm_echo_1_1.log", 
-            AXIS2_LOG_LEVEL_TRACE);
+    env = axutil_env_create_all("rm_echo_1_1.log", AXIS2_LOG_LEVEL_TRACE);
 
     /* Set end point reference of echo service */
     address = "http://127.0.0.1:9090/axis2/services/RMSampleService";
@@ -97,17 +94,22 @@
                 return -1;
             case '?':
                 if (isprint(optopt))
+                {
                     fprintf(stderr, "\nUnknown option `-%c'.\n", optopt);
+                }
+
                 usage(argv[0]);
                 return -1;
         }
     }
+
     if (axutil_strcmp(address, "-h") == 0)
     {
         printf("Usage : %s [endpoint_url] [offer]\n", argv[0]);
         printf("use -h for help\n");
         return 0;
     }
+
     printf ("Using endpoint : %s\n", address);
     
     /* Create EPR with given address */
@@ -137,16 +139,17 @@
      */
     client_home = AXIS2_GETENV("AXIS2C_HOME");
     if (!client_home)
+    {
         client_home = "../../deploy";
+    }
 
     /* Create service client */
     svc_client = axis2_svc_client_create(env, client_home);
     if (!svc_client)
     {
         printf("Error creating service client\n");
-        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code:"
-                  " %d :: %s", env->error->error_number,
-                        AXIS2_ERROR_GET_MESSAGE(env->error));
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code: %d :: %s", 
+                env->error->error_number, AXIS2_ERROR_GET_MESSAGE(env->error));
         return -1;
     }
 
@@ -156,11 +159,6 @@
     axis2_svc_client_engage_module(svc_client, env, AXIS2_MODULE_ADDRESSING);  
     axis2_svc_client_engage_module(svc_client, env, "sandesha2");
 
-    listener_manager = axis2_listener_manager_create(env);
-    if (!listener_manager)
-    {
-        return AXIS2_FAILURE;
-    }
     /* Offer sequence */
     if(offer)
     {
@@ -168,51 +166,46 @@
         property = axutil_property_create(env);
         if(property)
         {
-            axutil_property_set_value(property, env, axutil_strdup(env, 
-                offered_seq_id));
-            axis2_options_set_property(options, env, 
-                SANDESHA2_CLIENT_OFFERED_SEQ_ID, property);
+            axutil_property_set_value(property, env, axutil_strdup(env, offered_seq_id));
+            axis2_options_set_property(options, env, SANDESHA2_CLIENT_OFFERED_SEQ_ID, property);
         }
     }
+
     /* RM Version 1.1 */
-    property = axutil_property_create_with_args(env, 3, 0, 0, 
-        SANDESHA2_SPEC_VERSION_1_1);
+    property = axutil_property_create_with_args(env, 3, 0, 0, SANDESHA2_SPEC_VERSION_1_1);
     if(property)
     {
-        axis2_options_set_property(options, env, 
-            SANDESHA2_CLIENT_RM_SPEC_VERSION, property);
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_RM_SPEC_VERSION, property);
     }
     seq_key = axutil_uuid_gen(env);
     property = axutil_property_create_with_args(env, 3, 0, 0, seq_key);
     if(property)
     {
-        axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY, 
-            property);
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY, property);
     }
     
     payload = build_om_payload_for_echo_svc(env, "echo1", seq_key);
     callback = axis2_callback_create(env);
     axis2_callback_set_on_complete(callback, rm_echo_callback_on_complete);
     axis2_callback_set_on_error(callback, rm_echo_callback_on_error);
-    sandesha2_client_send_non_blocking(env, svc_client, options, NULL, 
-        callback, payload, listener_manager);
+    axis2_svc_client_send_receive_non_blocking(svc_client, env, payload, callback);
     wait_on_callback(env, callback);
 
     payload = build_om_payload_for_echo_svc(env, "echo2", seq_key);
     callback2 = axis2_callback_create(env);
     axis2_callback_set_on_complete(callback2, rm_echo_callback_on_complete);
     axis2_callback_set_on_error(callback2, rm_echo_callback_on_error);
-    sandesha2_client_send_non_blocking(env, svc_client, options, NULL, 
-        callback2, payload, listener_manager);
+    axis2_svc_client_send_receive_non_blocking(svc_client, env, payload, callback2);
     wait_on_callback(env, callback2);
 
     AXIS2_SLEEP(SANDESHA2_MAX_COUNT); 
     callback3 = axis2_callback_create(env);
     axis2_callback_set_on_complete(callback3, rm_echo_callback_on_complete);
     axis2_callback_set_on_error(callback3, rm_echo_callback_on_error);
-    sandesha2_client_terminate_seq_with_svc_client(env, svc_client, callback3, 
-        listener_manager);
-    AXIS2_SLEEP(SANDESHA2_MAX_COUNT); 
+    sandesha2_client_terminate_seq_with_svc_client(env, svc_client, callback3);
+
+    AXIS2_SLEEP(SANDESHA2_MAX_COUNT);
+
     AXIS2_FREE(env->allocator, seq_key);
     if (svc_client)
     {

Modified: webservices/sandesha/trunk/c/samples/rm_echo_single_1_0/rm_echo_single.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_echo_single_1_0/rm_echo_single.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_echo_single_1_0/rm_echo_single.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_echo_single_1_0/rm_echo_single.c Thu Aug 28 23:56:29 2008
@@ -29,7 +29,7 @@
 #include <axis2_options.h>
 #include <ctype.h>
 
-#define SANDESHA2_MAX_COUNT 8
+#define SANDESHA2_MAX_COUNT 2
 
 static void 
 usage(
@@ -96,6 +96,11 @@
     
     soap_action = axutil_string_create(env, "urn:wsrm:EchoString");
     axis2_options_set_soap_action(options, env, soap_action);
+    if(soap_action)
+    {
+        axutil_string_free(soap_action, env);
+    }
+
     axis2_options_set_action(options, env, "urn:wsrm:EchoString");
 
     /* Set up deploy folder. It is from the deploy folder, the configuration is 
@@ -159,6 +164,7 @@
         axis2_options_set_property(options, env, AXIS2_TIMEOUT_IN_SECONDS, 
             property);
     }
+
     payload = build_om_payload_for_echo_svc(env, "echo1", seq_key);
     result = axis2_svc_client_send_receive(svc_client, env, payload);
     if(result)
@@ -220,14 +226,24 @@
     }
     AXIS2_SLEEP(SANDESHA2_MAX_COUNT);
     AXIS2_FREE(env->allocator, seq_key);
+
     if(offered_seq_id)
+    {
         AXIS2_FREE(env->allocator, offered_seq_id);
+    }
+
     if (svc_client)
     {
         axis2_svc_client_free(svc_client, env);
         svc_client = NULL;
     }
-    
+  
+    if (env)
+    {
+        axutil_env_free((axutil_env_t *) env);
+        env = NULL;
+    }
+  
     return 0;
 }
 

Modified: webservices/sandesha/trunk/c/samples/rm_echo_single_1_0_large_sequence/rm_echo_single.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_echo_single_1_0_large_sequence/rm_echo_single.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_echo_single_1_0_large_sequence/rm_echo_single.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_echo_single_1_0_large_sequence/rm_echo_single.c Thu Aug 28 23:56:29 2008
@@ -29,7 +29,7 @@
 #include <axis2_options.h>
 #include <ctype.h>
 
-#define SANDESHA2_MAX_COUNT 8
+#define SANDESHA2_MAX_COUNT 4
 
 static void 
 usage(
@@ -203,10 +203,15 @@
     {
         printf("\necho client two way single channel invoke FAILED!\n");
     }
+
     AXIS2_SLEEP(SANDESHA2_MAX_COUNT);
     AXIS2_FREE(env->allocator, seq_key);
+
     if(offered_seq_id)
+    {
         AXIS2_FREE(env->allocator, offered_seq_id);
+    }
+
     if (svc_client)
     {
         axis2_svc_client_free(svc_client, env);

Modified: webservices/sandesha/trunk/c/samples/rm_echo_single_1_1/rm_echo_single_1_1.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_echo_single_1_1/rm_echo_single_1_1.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_echo_single_1_1/rm_echo_single_1_1.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_echo_single_1_1/rm_echo_single_1_1.c Thu Aug 28 23:56:29 2008
@@ -30,7 +30,7 @@
 #include <axis2_addr.h>
 #include <ctype.h>
 
-#define SANDESHA2_SLEEP 12
+#define SANDESHA2_SLEEP 4
 
 static void 
 usage(
@@ -49,13 +49,13 @@
     axutil_property_t *property = NULL;
     axis2_listener_manager_t *listener_manager = NULL;
     axis2_char_t *offered_seq_id = NULL;
-    axis2_status_t status = AXIS2_FAILURE;
     axis2_char_t *seq_key = NULL;
     int c;
+    /*axis2_status_t status = AXIS2_FAILURE;*/
+    axiom_node_t *result = NULL;
    
     /* Set up the environment */
-    env = axutil_env_create_all("rm_echo_single_1_1.log", 
-            AXIS2_LOG_LEVEL_TRACE);
+    env = axutil_env_create_all("rm_echo_single_1_1.log", AXIS2_LOG_LEVEL_TRACE);
  
 
     /* Set end point reference of echo service */
@@ -75,17 +75,21 @@
                 return -1;
             case '?':
                 if (isprint(optopt))
+                {
                     fprintf(stderr, "\nUnknown option `-%c'.\n", optopt);
+                }
                 usage(argv[0]);
                 return -1;
         }
     }
+
     if (axutil_strcmp(address, "-h") == 0)
     {
         printf("Usage : %s [endpoint_url] [offer]\n", argv[0]);
         printf("use -h for help\n");
         return 0;
     }
+
     printf ("Using endpoint : %s\n", address);
     
     /* Create EPR with given address */
@@ -98,6 +102,7 @@
     /* Seperate listner needs addressing, hence addressing stuff in options */
     axis2_options_set_action(options, env,
         "http://127.0.0.1:8080/axis2/services/RMSampleService/anonOutInOp");
+
     reply_to = axis2_endpoint_ref_create(env, AXIS2_WSA_ANONYMOUS_URL);
     axis2_options_set_reply_to(options, env, reply_to);
 
@@ -111,16 +116,18 @@
      */
     client_home = AXIS2_GETENV("AXIS2C_HOME");
     if (!client_home)
+    {
         client_home = "../../deploy";
+    }
 
     /* Create service client */
     svc_client = axis2_svc_client_create(env, client_home);
     if (!svc_client)
     {
         printf("Error creating service client\n");
-        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code:"
-            " %d :: %s", env->error->error_number, AXIS2_ERROR_GET_MESSAGE(
-            env->error));
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code:%d :: %s", 
+                env->error->error_number, AXIS2_ERROR_GET_MESSAGE(env->error));
+
         return -1;
     }
 
@@ -135,42 +142,112 @@
     {
         return AXIS2_FAILURE;
     }
+
     /* Offer sequence */
     offered_seq_id = axutil_uuid_gen(env);
     property = axutil_property_create(env);
     if(property)
     {
-        axutil_property_set_value(property, env, axutil_strdup(env, 
-            offered_seq_id));
-        axis2_options_set_property(options, env, 
-            SANDESHA2_CLIENT_OFFERED_SEQ_ID, property);
+        axutil_property_set_value(property, env, axutil_strdup(env, offered_seq_id));
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_OFFERED_SEQ_ID, property);
     }
+
     /* RM Version 1.1 */
-    property = axutil_property_create_with_args(env, 3, 0, 0, 
-        SANDESHA2_SPEC_VERSION_1_1);
+    property = axutil_property_create_with_args(env, 3, 0, 0, SANDESHA2_SPEC_VERSION_1_1);
     if(property)
     {
-        axis2_options_set_property(options, env, 
-            SANDESHA2_CLIENT_RM_SPEC_VERSION, property);
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_RM_SPEC_VERSION, property);
     }
+
     seq_key = axutil_uuid_gen(env);
     property = axutil_property_create_with_args(env, 3, 0, 0, seq_key);
     if(property)
     {
-        axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY, 
-            property);
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY, property);
     }
     
     payload = build_om_payload_for_echo_svc(env, "echo1", seq_key);
-    status = axis2_svc_client_send_robust(svc_client, env, payload);
+    /*status = axis2_svc_client_send_robust(svc_client, env, payload);
     if(status)
+    {
         printf("\necho client single channel invoke SUCCESSFUL!\n");
-    payload = NULL;
+    }
+    payload = NULL;*/
+    result = axis2_svc_client_send_receive(svc_client, env, payload);
+    if(result)
+    {
+        axis2_char_t *om_str = NULL;
+        om_str = axiom_node_to_string(result, env);
+        if (om_str)
+        {
+            printf("\nReceived OM : %s\n", om_str);
+            AXIS2_FREE(env->allocator, om_str);
+        }
+        printf("\necho client two way single channel invoke SUCCESSFUL!\n");
+        result = NULL;
+    }
+    else
+    {
+        printf("\necho client two way single channel invoke FAILED!\n");
+    }
+
+    payload = build_om_payload_for_echo_svc(env, "echo2", seq_key);
+    /*status = axis2_svc_client_send_robust(svc_client, env, payload);
+    if(status)
+    {
+        printf("\necho client single channel invoke SUCCESSFUL!\n");
+    }
+    payload = NULL;*/
+    result = axis2_svc_client_send_receive(svc_client, env, payload);
+    if(result)
+    {
+        axis2_char_t *om_str = NULL;
+        om_str = axiom_node_to_string(result, env);
+        if (om_str)
+        {
+            printf("\nReceived OM : %s\n", om_str);
+            AXIS2_FREE(env->allocator, om_str);
+        }
+        printf("\necho client two way single channel invoke SUCCESSFUL!\n");
+        result = NULL;
+    }
+    else
+    {
+        printf("\necho client two way single channel invoke FAILED!\n");
+    }
+
+    payload = build_om_payload_for_echo_svc(env, "echo3", seq_key);
+    /*status = axis2_svc_client_send_robust(svc_client, env, payload);
+    if(status)
+    {
+        printf("\necho client single channel invoke SUCCESSFUL!\n");
+    }
+    payload = NULL;*/
+    
+    result = axis2_svc_client_send_receive(svc_client, env, payload);
+    if(result)
+    {
+        axis2_char_t *om_str = NULL;
+        om_str = axiom_node_to_string(result, env);
+        if (om_str)
+        {
+            printf("\nReceived OM : %s\n", om_str);
+            AXIS2_FREE(env->allocator, om_str);
+        }
+        printf("\necho client two way single channel invoke SUCCESSFUL!\n");
+        result = NULL;
+    }
+    else
+    {
+        printf("\necho client two way single channel invoke FAILED!\n");
+    }
+
     AXIS2_SLEEP(SANDESHA2_SLEEP); 
 
-    sandesha2_client_terminate_seq_with_svc_client_and_seq_key(env, svc_client, 
-        seq_key);
-    AXIS2_SLEEP(SANDESHA2_SLEEP);
+    sandesha2_client_terminate_seq_with_svc_client_and_seq_key(env, svc_client, seq_key);
+
+    AXIS2_SLEEP(6 * SANDESHA2_SLEEP);
+
     if (svc_client)
     {
         axis2_svc_client_free(svc_client, env);

Modified: webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c Thu Aug 28 23:56:29 2008
@@ -23,7 +23,7 @@
 #include <sandesha2_constants.h>
 #include <ctype.h>
 
-#define SANDESHA2_SLEEP 5
+#define SANDESHA2_SLEEP 2
 
 axiom_node_t *
 build_om_programatically(
@@ -83,7 +83,10 @@
     options = axis2_options_create(env);
     axis2_options_set_xml_parser_reset(options, env, AXIS2_FALSE);
     if(endpoint_ref)
+    {
         axis2_options_set_to(options, env, endpoint_ref);
+    }
+
     /*axis2_options_set_action(options, env, "urn:wsrm:Ping");*/
 
     /* Set up deploy folder. It is from the deploy folder, the configuration is 
@@ -96,15 +99,17 @@
      */
     client_home = AXIS2_GETENV("AXIS2C_HOME");
     if (!client_home)
+    {
         client_home = "../../deploy";
+    }
+
     /* Create service client */
     svc_client = axis2_svc_client_create(env, client_home);
     if (!svc_client)
     {
         printf("Error creating service client\n");
-        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code:"
-                  " %d :: %s", env->error->error_number,
-                        AXIS2_ERROR_GET_MESSAGE(env->error));
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code: %d :: %s", 
+                env->error->error_number, AXIS2_ERROR_GET_MESSAGE(env->error));
     }
 
     /* Set service client options */
@@ -113,47 +118,47 @@
     /* Engage addressing module */
     axis2_svc_client_engage_module(svc_client, env, AXIS2_MODULE_ADDRESSING);
     
-    /* Build the SOAP request message payload using OM API.*/
     axis2_svc_client_engage_module(svc_client, env, "sandesha2");
+    
     /* RM Version 1.0 */
-    property = axutil_property_create_with_args(env, 0, 0, 0, 
-        SANDESHA2_SPEC_VERSION_1_0);
+    property = axutil_property_create_with_args(env, 0, 0, 0, SANDESHA2_SPEC_VERSION_1_0);
     if(property)
     {
-        axis2_options_set_property(options, env, 
-            SANDESHA2_CLIENT_RM_SPEC_VERSION, property);
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_RM_SPEC_VERSION, property);
     }
 
     seq_key = axutil_uuid_gen(env);
     property = axutil_property_create_with_args(env, 0, 0, 0, seq_key);
     if(property)
     {
-        axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY,
-            property);
+        axis2_options_set_property(options, env, SANDESHA2_CLIENT_SEQ_KEY, property);
     }
     
     /* Send request */
     payload = build_om_programatically(env, "ping1", seq_key);
     status = axis2_svc_client_send_robust(svc_client, env, payload);
     if(status)
+    {
         printf("\nping client invoke SUCCESSFUL!\n");
+    }
     payload = NULL;
-    AXIS2_SLEEP(SANDESHA2_SLEEP);
     
     payload = build_om_programatically(env, "ping2", seq_key);
     status = axis2_svc_client_send_robust(svc_client, env, payload);
     if(status)
+    {
         printf("\nping client invoke SUCCESSFUL!\n");
+    }
     payload = NULL;
-    AXIS2_SLEEP(SANDESHA2_SLEEP);
 
     property = axutil_property_create_with_args(env, 0, 0, 0, AXIS2_VALUE_TRUE);
-    axis2_options_set_property(options, env, "Sandesha2LastMessage", 
-        property);
+    axis2_options_set_property(options, env, "Sandesha2LastMessage", property);
     payload = build_om_programatically(env, "ping3", seq_key);
     status = axis2_svc_client_send_robust(svc_client, env, payload);
     if(status)
+    {
         printf("\nping client invoke SUCCESSFUL!\n");
+    }
     
      /** Wait till callback is complete. Simply keep the parent thread running
        until our on_complete or on_error is invoked */
@@ -162,12 +167,20 @@
      *messages. */
 
     AXIS2_SLEEP(SANDESHA2_SLEEP);
+    AXIS2_FREE(env->allocator, seq_key);
    
     if (svc_client)
     {
         axis2_svc_client_free(svc_client, env);
         svc_client = NULL;
     }
+    
+    if (env)
+    {
+        axutil_env_free((axutil_env_t *) env);
+        env = NULL;
+    }
+
     return 0;
 }
 

Modified: webservices/sandesha/trunk/c/samples/rm_ping_1_0_large_sequence/rm_ping_1_0.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_ping_1_0_large_sequence/rm_ping_1_0.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_ping_1_0_large_sequence/rm_ping_1_0.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_ping_1_0_large_sequence/rm_ping_1_0.c Thu Aug 28 23:56:29 2008
@@ -23,7 +23,7 @@
 #include <sandesha2_constants.h>
 #include <ctype.h>
 
-#define SANDESHA2_SLEEP 8
+#define SANDESHA2_SLEEP 4
 
 axiom_node_t *
 build_om_programatically(
@@ -150,8 +150,10 @@
     payload = build_om_programatically(env, "ping100", seq_key);
     status = axis2_svc_client_send_robust(svc_client, env, payload);
     if(status)
+    {
         printf("\nping client invoke SUCCESSFUL!\n");
-    sleep(64); 
+    }
+
      /** Wait till callback is complete. Simply keep the parent thread running
        until our on_complete or on_error is invoked */
 

Modified: webservices/sandesha/trunk/c/samples/rm_ping_1_1/rm_ping_1_1.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_ping_1_1/rm_ping_1_1.c?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_ping_1_1/rm_ping_1_1.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_ping_1_1/rm_ping_1_1.c Thu Aug 28 23:56:29 2008
@@ -155,11 +155,11 @@
         printf("\nping client invoke SUCCESSFUL!\n");
     AXIS2_SLEEP(MAX_COUNT);
     
-    sandesha2_client_terminate_seq_with_svc_client(env, svc_client, NULL, NULL);
+    sandesha2_client_terminate_seq_with_svc_client(env, svc_client, NULL);
      /** Wait till callback is complete. Simply keep the parent thread running
        until our on_complete or on_error is invoked */
 
-    AXIS2_SLEEP(8 * MAX_COUNT);
+    AXIS2_SLEEP(MAX_COUNT);
    
     if (svc_client)
     {

Modified: webservices/sandesha/trunk/c/src/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/Makefile.am?rev=690127&r1=690126&r2=690127&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/Makefile.am (original)
+++ webservices/sandesha/trunk/c/src/Makefile.am Thu Aug 28 23:56:29 2008
@@ -1 +1 @@
-SUBDIRS = wsrm storage util transport workers handlers msgprocessors polling client core 
+SUBDIRS = wsrm storage util transport workers handlers msgprocessors polling core client



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