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 2006/11/17 13:12:20 UTC

svn commit: r476117 - in /webservices/sandesha/trunk/c: include/ src/core/ src/msgprocessors/ src/util/ src/workers/ src/wsrm/

Author: damitha
Date: Fri Nov 17 04:12:18 2006
New Revision: 476117

URL: http://svn.apache.org/viewvc?view=rev&rev=476117
Log:
Added code to implement MakeConnection functionality

Added:
    webservices/sandesha/trunk/c/include/sandesha2_make_connection.h
    webservices/sandesha/trunk/c/include/sandesha2_make_connection_msg_processor.h
    webservices/sandesha/trunk/c/include/sandesha2_msg_pending.h
    webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c
    webservices/sandesha/trunk/c/src/wsrm/make_connection.c
    webservices/sandesha/trunk/c/src/wsrm/msg_pending.c
Modified:
    webservices/sandesha/trunk/c/include/sandesha2_constants.h
    webservices/sandesha/trunk/c/include/sandesha2_error.h
    webservices/sandesha/trunk/c/include/sandesha2_sender_worker.h
    webservices/sandesha/trunk/c/src/core/sandesha2_msg_ctx.c
    webservices/sandesha/trunk/c/src/msgprocessors/Makefile.am
    webservices/sandesha/trunk/c/src/util/error.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/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/msg_number.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/include/sandesha2_constants.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_constants.h?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_constants.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_constants.h Fri Nov 17 04:12:18 2006
@@ -31,7 +31,7 @@
 	 * WSRM Spec versions
 	 */
 	#define SANDESHA2_SPEC_VERSION_1_0 "Spec_2005_02"
-	#define SANDESHA2_SPEC_VERSION_1_1 "Spec_2005_10"
+	#define SANDESHA2_SPEC_VERSION_1_1 "Spec_2006_08"
 	
 	/**
 	 * Spec 2005-02
@@ -58,37 +58,37 @@
 	 * Spec 2005-10
 	 */
 			
-	#define SANDESHA2_SPEC_2005_10_NS_URI  "http://docs.oasis-open.org/ws-rx/wsrm/200602"
+	#define SANDESHA2_SPEC_2006_08_NS_URI  "http://docs.oasis-open.org/ws-rx/wsrm/200602"
 		
-	#define SANDESHA2_SPEC_2005_10_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence"
+	#define SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence"
 
-	#define SANDESHA2_SPEC_2005_10_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse"
+	#define SANDESHA2_SPEC_2006_08_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse"
 
-	#define SANDESHA2_SPEC_2005_10_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement"
+	#define SANDESHA2_SPEC_2006_08_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement"
 
-	#define SANDESHA2_SPEC_2005_10_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence"
+	#define SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence"
 			
-	#define SANDESHA2_SPEC_2005_10_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse"
+	#define SANDESHA2_SPEC_2006_08_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse"
 			
-	#define SANDESHA2_SPEC_2005_10_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested"
+	#define SANDESHA2_SPEC_2006_08_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested"
 			
-	#define SANDESHA2_SPEC_2005_10_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence"
+	#define SANDESHA2_SPEC_2006_08_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence"
 			
-	#define SANDESHA2_SPEC_2005_10_ACTION_CLOSE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequenceResponse"
+	#define SANDESHA2_SPEC_2006_08_ACTION_CLOSE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequenceResponse"
 			
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_CREATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequence"
 
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_CREATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CreateSequenceResponse"
 
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_SEQ_ACKNOWLEDGEMENT  "http://docs.oasis-open.org/ws-rx/wsrm/200602/SequenceAcknowledgement"
 
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_TERMINATE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequence"
 			
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_TERMINATE_SEQ_RESPONSE  "http://docs.oasis-open.org/ws-rx/wsrm/200602/TerminateSequenceResponse"
 			
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_ACK_REQUEST  "http://docs.oasis-open.org/ws-rx/wsrm/200602/AckRequested"
 			
-	#define SANDESHA2_SPEC_2005_10_SOAP_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence"
+	#define SANDESHA2_SPEC_2006_08_SOAP_ACTION_CLOSE_SEQ  "http://docs.oasis-open.org/ws-rx/wsrm/200602/CloseSequence"
 
 	/**
 	 * WSRM Common constants
@@ -144,6 +144,10 @@
 		
 	#define SANDESHA2_WSRM_COMMON_FINAL  "Final"
 
+    #define SANDESHA2_WSRM_COMMON_MESSAGE_PENDING "MessagePending"
+    #define SANDESHA2_WSRM_COMMON_PENDING "pending"
+    #define SANDESHA2_WSRM_COMMON_MAKE_CONNECTION "MakeConnection"
+    
 	/**
 	 * WS Addressing constants
 	 */

Modified: webservices/sandesha/trunk/c/include/sandesha2_error.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_error.h?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_error.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_error.h Fri Nov 17 04:12:18 2006
@@ -190,6 +190,14 @@
             SANDESHA_ERROR_LAST is used to track the number of error codes present
             for the purpose of sizing the error message array.
           */
+        /* MessagePending header must have an attribute named 'pending'" */
+        SANDESHA2_ERROR_PENDING_HEADER_MUST_HAVE_ATTRIBUTE_PENDING,
+        /* Attribute 'pending' must have value 'true' or 'false' */
+        SANDESHA2_ERROR_ATTRIBUTE_PENDING_MUST_HAVE_VALUE_TRUE_OR_FALSE,
+        /* MakeConnection element should have at lease one of Address and Identifier subelements */
+        SANDESHA2_ERROR_MAKE_CONNECTION_ELEMENT_SHOULD_HAVE_AT_LEAST_ADDRESS_OR_IDENTIFIER,
+        /* Invalid MakeConnection object. Both Identifier and Address are null */
+        SANDESHA2_ERROR_INVALID_MAKE_CONNECTION_BOTH_IDENTIFER_AND_ADDRESS_NULL,
         SANDESHA2_ERROR_LAST
     };
         

Added: webservices/sandesha/trunk/c/include/sandesha2_make_connection.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_make_connection.h?view=auto&rev=476117
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_make_connection.h (added)
+++ webservices/sandesha/trunk/c/include/sandesha2_make_connection.h Fri Nov 17 04:12:18 2006
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+#ifndef SANDESHA2_MAKE_CONNECTION_H
+#define SANDESHA2_MAKE_CONNECTION_H
+
+/**
+  * @file sandesha2_make_connection.h
+  * @brief 
+  */
+
+#include <axiom_soap_envelope.h>
+#include <sandesha2_iom_rm_part.h>
+#include <sandesha2_identifier.h>
+#include <sandesha2_address.h>
+#include <sandesha2_error.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/** @defgroup sandesha2_make_connection
+ * @ingroup sandesha2_wsrm
+ * @{
+ */
+    
+typedef struct sandesha2_make_connection sandesha2_make_connection_t;
+ 
+/**
+ * @brief sandesha2_make_connection
+ *    sandesha2_make_connection
+ */
+AXIS2_DECLARE_DATA struct sandesha2_make_connection
+{
+    sandesha2_iom_rm_part_t part;
+};
+
+AXIS2_EXTERN sandesha2_make_connection_t* AXIS2_CALL
+sandesha2_make_connection_create(
+    const axis2_env_t *env, 
+	axis2_char_t *ns_value);
+
+axis2_status_t AXIS2_CALL
+sandesha2_make_connection_free_void_arg(
+    void *make_connection,
+    const axis2_env_t *env);
+                    	
+sandesha2_identifier_t * AXIS2_CALL
+sandesha2_make_connection_get_identifier(
+    sandesha2_make_connection_t *make_connection,
+    const axis2_env_t *env);
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_make_connection_set_identifier(
+    sandesha2_make_connection_t *make_connection,
+    const axis2_env_t *env, 
+    sandesha2_identifier_t *identifier);
+                    	
+sandesha2_address_t * AXIS2_CALL
+sandesha2_make_connection_get_address(
+    sandesha2_make_connection_t *make_connection,
+    const axis2_env_t *env);
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_make_connection_set_address(
+    sandesha2_make_connection_t *make_connection,
+    const axis2_env_t *env, 
+    sandesha2_address_t *address);
+                    	
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+
+#endif                          /* SANDESHA2_MAKE_CONNECTION_H */
+

Added: webservices/sandesha/trunk/c/include/sandesha2_make_connection_msg_processor.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_make_connection_msg_processor.h?view=auto&rev=476117
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_make_connection_msg_processor.h (added)
+++ webservices/sandesha/trunk/c/include/sandesha2_make_connection_msg_processor.h Fri Nov 17 04:12:18 2006
@@ -0,0 +1,53 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+#ifndef SANDESHA2_MAKE_CONNECTION_MSG_PROCESSOR_H
+#define SANDESHA2_MAKE_CONNECTION_MSG_PROCESSOR_H
+
+/**
+  * @file sandesha2_make_connnection_msg_processor.h
+  * @brief 
+  * This struct is responsible for processing MakeConnection request messages 
+  * that come to the system. MakeConnection is only supported by WSRM 1.1
+  * Here a client can ask for reply messages using a polling mechanism, so even 
+  * clients without real endpoints can ask for reliable response messages.
+  */
+
+#include <axis2_utils_defines.h>
+#include <axis2_env.h>
+#include <sandesha2_msg_processor.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/** @defgroup sandesha2_make_connnection_msg_processor
+ * @ingroup sandesha2_msgprocessors
+ * @{
+ */
+    
+AXIS2_EXTERN sandesha2_msg_processor_t* AXIS2_CALL
+sandesha2_make_connnection_msg_processor_create(
+    const axis2_env_t *env);
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+
+#endif                          /* SANDESHA2_MAKE_CONNECTION_MSG_PROCESSOR_H */
+

Added: webservices/sandesha/trunk/c/include/sandesha2_msg_pending.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_msg_pending.h?view=auto&rev=476117
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_msg_pending.h (added)
+++ webservices/sandesha/trunk/c/include/sandesha2_msg_pending.h Fri Nov 17 04:12:18 2006
@@ -0,0 +1,79 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+#ifndef SANDESHA2_MSG_PENDING_H
+#define SANDESHA2_MSG_PENDING_H
+
+/**
+  * @file sandesha2_msg_pending.h
+  * @brief 
+  */
+
+#include <axiom_soap_envelope.h>
+#include <sandesha2_iom_rm_part.h>
+#include <sandesha2_error.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/** @defgroup sandesha2_msg_pending
+ * @ingroup sandesha2_wsrm
+ * @{
+ */
+    
+typedef struct sandesha2_msg_pending sandesha2_msg_pending_t;
+ 
+/**
+ * @brief sandesha2_msg_pending
+ *    sandesha2_msg_pending
+ */
+AXIS2_DECLARE_DATA struct sandesha2_msg_pending
+{
+    sandesha2_iom_rm_part_t part;
+};
+
+AXIS2_EXTERN sandesha2_msg_pending_t* AXIS2_CALL
+sandesha2_msg_pending_create(
+    const axis2_env_t *env, 
+	axis2_char_t *ns_value);
+
+axis2_status_t AXIS2_CALL
+sandesha2_msg_pending_free_void_arg(
+    void *msg_pending,
+    const axis2_env_t *env);
+                    	
+axis2_bool_t AXIS2_CALL
+sandesha2_msg_pending_is_pending(
+    sandesha2_msg_pending_t *msg_pending,
+    const axis2_env_t *env);
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_msg_pending_set_pending(
+    sandesha2_msg_pending_t *msg_pending,
+    const axis2_env_t *env, 
+    axis2_bool_t pending);
+
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+
+#endif                          /* SANDESHA2_MSG_PENDING_H */
+

Modified: webservices/sandesha/trunk/c/include/sandesha2_sender_worker.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_sender_worker.h?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_sender_worker.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_sender_worker.h Fri Nov 17 04:12:18 2006
@@ -87,7 +87,7 @@
     sandesha2_sender_worker_t *sender_worker,
     const axis2_env_t *env);
 
-void sandesha2_sender_worker_set_out_transport(
+void sandesha2_sender_worker_set_transport_out(
     sandesha2_sender_worker_t *sender_worker,
     const axis2_env_t *env,
     axis2_transport_out_desc_t *transport_out);

Modified: webservices/sandesha/trunk/c/src/core/sandesha2_msg_ctx.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/core/sandesha2_msg_ctx.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/core/sandesha2_msg_ctx.c (original)
+++ webservices/sandesha/trunk/c/src/core/sandesha2_msg_ctx.c Fri Nov 17 04:12:18 2006
@@ -458,7 +458,7 @@
     rm_msg_ctx->rm_ns_val = AXIS2_STRDUP(ns_val, env);
     if(0 == AXIS2_STRCMP(ns_val, SANDESHA2_SPEC_2005_02_NS_URI))
         rm_msg_ctx->spec_ver = AXIS2_STRDUP(SANDESHA2_SPEC_VERSION_1_0, env);
-    if(0 == AXIS2_STRCMP(ns_val, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(ns_val, SANDESHA2_SPEC_2006_08_NS_URI))
         rm_msg_ctx->spec_ver = AXIS2_STRDUP(SANDESHA2_SPEC_VERSION_1_1, env);
         
     return AXIS2_SUCCESS;

Modified: webservices/sandesha/trunk/c/src/msgprocessors/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/Makefile.am?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/Makefile.am (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/Makefile.am Fri Nov 17 04:12:18 2006
@@ -9,7 +9,8 @@
                                         create_seq_res_msg_processor.c\
                                         terminate_seq_msg_processor.c\
                                         terminate_seq_res_msg_processor.c \
-										msg_processor_creator.c
+										msg_processor_creator.c \
+										make_connection_msg_processor.c
 
 INCLUDES = -I$(top_builddir)/include \
 			-I$(top_builddir)/include/sandesha2 \

Added: webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c?view=auto&rev=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c (added)
+++ webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c Fri Nov 17 04:12:18 2006
@@ -0,0 +1,344 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#include <sandesha2_make_connection_msg_processor.h>
+#include <sandesha2_seq_property_mgr.h>
+#include <sandesha2_seq_property_bean.h>
+#include <sandesha2_storage_mgr.h>
+#include <sandesha2_fault_mgr.h>
+#include <sandesha2_constants.h>
+#include <sandesha2_utils.h>
+#include <sandesha2_msg_ctx.h>
+#include <sandesha2_spec_specific_consts.h>
+#include <sandesha2_address.h>
+#include <sandesha2_identifier.h>
+#include <sandesha2_sender_worker.h>
+#include <sandesha2_msg_pending.h>
+#include <axis2_msg_ctx.h>
+#include <axis2_string.h>
+#include <axis2_engine.h>
+#include <axiom_soap_const.h>
+#include <axis2_msg_ctx.h>
+#include <axis2_conf_ctx.h>
+#include <axis2_core_utils.h>
+#include <axis2_uuid_gen.h>
+#include <axis2_endpoint_ref.h>
+#include <axis2_op_ctx.h>
+#include <axis2_transport_out_desc.h>
+
+/** 
+ * @brief Make Connection Message Processor struct impl
+ *	Sandesha2 Make Connection Msg Processor
+ */
+typedef struct sandesha2_make_connnection_msg_processor_impl 
+                        sandesha2_make_connnection_msg_processor_impl_t;  
+  
+struct sandesha2_make_connnection_msg_processor_impl
+{
+	sandesha2_msg_processor_t msg_processor;
+};
+
+#define SANDESHA2_INTF_TO_IMPL(msg_proc) \
+    ((sandesha2_make_connnection_msg_processor_impl_t *)(msg_proc))
+
+/***************************** Function headers *******************************/
+static axis2_status_t AXIS2_CALL 
+sandesha2_make_connnection_msg_processor_process_in_msg (
+    sandesha2_msg_processor_t *msg_processor,
+    const axis2_env_t *env,
+    sandesha2_msg_ctx_t *rm_msg_ctx);
+
+static void 
+add_msg_pending_header(
+    const axis2_env_t *env,
+    sandesha2_msg_ctx_t *return_msg_ctx,
+    axis2_bool_t pending);
+    
+static void
+set_transport_properties(
+    const axis2_env_t *env,
+    axis2_msg_ctx_t *return_msg_ctx,
+    sandesha2_msg_ctx_t *make_conn_msg_ctx);
+
+static axis2_status_t AXIS2_CALL 
+sandesha2_make_connnection_msg_processor_free (
+    sandesha2_msg_processor_t *msg_processor, 
+	const axis2_env_t *env);								
+
+/***************************** End of function headers ************************/
+
+AXIS2_EXTERN sandesha2_msg_processor_t* AXIS2_CALL
+sandesha2_make_connnection_msg_processor_create(
+    const axis2_env_t *env)
+{
+    sandesha2_make_connnection_msg_processor_impl_t *msg_proc_impl = NULL;
+    AXIS2_ENV_CHECK(env, NULL);
+              
+    msg_proc_impl =  (sandesha2_make_connnection_msg_processor_impl_t *)AXIS2_MALLOC 
+                        (env->allocator, 
+                        sizeof(sandesha2_make_connnection_msg_processor_impl_t));
+	
+    if(!msg_proc_impl)
+	{
+		AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    
+    msg_proc_impl->msg_processor.ops = AXIS2_MALLOC(env->allocator,
+        sizeof(sandesha2_msg_processor_ops_t));
+    if(!msg_proc_impl->msg_processor.ops)
+	{
+		sandesha2_make_connnection_msg_processor_free((sandesha2_msg_processor_t*)
+                         msg_proc_impl, env);
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    
+    msg_proc_impl->msg_processor.ops->process_in_msg = 
+                        sandesha2_make_connnection_msg_processor_process_in_msg;
+    msg_proc_impl->msg_processor.ops->free = sandesha2_make_connnection_msg_processor_free;
+                        
+	return &(msg_proc_impl->msg_processor);
+}
+
+
+static axis2_status_t AXIS2_CALL 
+sandesha2_make_connnection_msg_processor_free (
+    sandesha2_msg_processor_t *msg_processor, 
+	const axis2_env_t *env)
+{
+    sandesha2_make_connnection_msg_processor_impl_t *msg_proc_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    msg_proc_impl = SANDESHA2_INTF_TO_IMPL(msg_processor);
+    
+    if(msg_processor->ops)
+        AXIS2_FREE(env->allocator, msg_processor->ops);
+    
+	AXIS2_FREE(env->allocator, SANDESHA2_INTF_TO_IMPL(msg_processor));
+	return AXIS2_SUCCESS;
+}
+
+/**
+ * Prosesses incoming MakeConnection request messages.
+ * A message is selected by the set of SenderBeans that are waiting to be sent.
+ * This is processed using a SenderWorker.
+ */
+static axis2_status_t AXIS2_CALL 
+sandesha2_make_connnection_msg_processor_process_in_msg (
+    sandesha2_msg_processor_t *msg_processor,
+    const axis2_env_t *env,
+    sandesha2_msg_ctx_t *rm_msg_ctx)
+{
+    sandesha2_make_connection_t *make_conn = NULL;
+    sandesha2_storage_mgr_t *storage_mgr = NULL;
+    sandesha2_sender_mgr_t *sender_bean_mgr = NULL;
+    sandesha2_sender_bean_t *find_sender_bean = NULL;
+    sandesha2_sender_bean_t *sender_bean = NULL;
+    sandesha2_address_t *address = NULL;
+    sandesha2_identifier_t *identifier = NULL;
+    sandesha2_msg_ctx_t *return_rm_msg_ctx = NULL;
+    axis2_property_t *property = NULL;
+    axis2_msg_ctx_t *msg_ctx = NULL;
+    axis2_msg_ctx_t *return_msg_ctx = NULL;
+    axis2_conf_ctx_t *conf_ctx = NULL;
+    axis2_array_list_t *retrans_list = NULL;
+    axis2_bool_t pending = AXIS2_FALSE;
+    axis2_transport_out_desc_t *transport_out = NULL;
+    axis2_char_t *msg_storage_key = NULL;
+    axis2_char_t *seq_id = NULL;
+    axis2_op_ctx_t *op_ctx = NULL;
+    axis2_char_t *msg_id = NULL;
+    int size = 0, item_to_pick = -1, item = 0;
+
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, rm_msg_ctx, AXIS2_FAILURE);
+    AXIS2_LOG_INFO(env->log, "[sandesha2] sandesha2_make_connnection_msg_" \
+            "processor_process_in_msg .........");
+    printf("sandesha2_make_connnection_msg_processor_process_in_msg\n");
+
+    make_conn = (sandesha2_make_connnection_t*)
+        sandesha2_msg_ctx_get_msg_part(rm_msg_ctx, env, 
+                SANDESHA2_MSG_PART_MAKE_CONNECTION);
+    if(!make_conn)
+    {
+        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2]"
+            " make_connnection part is null");
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_REQD_MSG_PART_MISSING,
+                        AXIS2_FAILURE);
+        return AXIS2_FAILURE;        
+    }
+    address = sandesha2_make_connection_get_address(make_conn, env);
+    identifier = sandesha2_seq_make_connnection_get_identifier(
+            seq_make_connnection, env);
+    if(identifier)
+        seq_id = sandesha2_identifier_get_identifier(identifier, env);
+    msg_ctx = sandesha2_msg_ctx_get_msg_ctx(rm_msg_ctx, env);
+    if(msg_ctx)
+        conf_ctx = AXIS2_MSG_CTX_GET_CONF_CTX(msg_ctx, env);
+    if(conf_ctx)
+        storage_mgr = sandesha2_utils_get_storage_mgr(env, conf_ctx, 
+                        AXIS2_CONF_CTX_GET_CONF(conf_ctx, env));
+    if(storage_mgr)
+        sender_bean_mgr = sandesha2_storage_mgr_get_retrans_mgr(storage_mgr, env);
+    /* Selecting the set of sender beans that suit the given criteria */
+    find_sender_bean = sandesha2_sender_bean_create(env);
+    if(find_sender_bean)
+        sandesha2_sender_bean_set_send(find_sender_bean, env, AXIS2_TRUE);
+    if(address)
+    {
+        axis2_endpoint_ref_t *epr = NULL;
+        const axis2_char_t *epr_address = NULL;
+        epr = sandesha2_address_get_epr(address, env);
+        if(epr)
+            epr_address = sandesha2_endpoint_ref_get_address(epr, env);
+        if(epr_address)
+            sandesha2_sender_bean_set_wsrm_anon_uri(find_sender_bean, env, 
+                epr_address);
+    }
+    if(seq_id)
+        sandesha2_sender_bean_set_seq_id(find_sender_bean, env, seq_id);
+    /* Find the beans that go with the criteria of the passed sender bean */
+    if(find_sender_bean)
+    {
+        int i = 0, size = 0;
+        retrans_list = axis2_array_list_create(env);
+        if(!retrans_list)
+            return AXIS2_FAILURE;
+        axis2_array_list_t *retrans_list1 = NULL, *retrans_list2 = NULL;
+        sandesha2_sender_bean_set_resend(find_sender_bean, env, AXIS2_TRUE);
+        retrans_list1 = sandesha2_sender_mgr_find_by_sender_bean(retrans_mgr, 
+                env, find_sender_bean);
+        sandesha2_sender_bean_set_resend(find_sender_bean, env, AXIS2_FALSE);
+        retrans_list2 = sandesha2_sender_mgr_find_by_sender_bean(retrans_mgr, 
+                env, find_sender_bean);
+        if(retrans_list1)
+            size = AXIS2_ARRAY_LIST_SIZE(retrans_list1, env);
+        for(i = 0; i < size; i++)
+        {
+            sandesha2_sender_bean_t *temp_bean = NULL;
+            temp_bean = AXIS2_ARRAY_LIST_GET(retrans_list1, env, i);
+            AXIS2_ARRAY_LIST_ADD(retrans_list, env, temp_bean);
+        }
+        if(retrans_list2)
+            size = AXIS2_ARRAY_LIST_SIZE(retrans_list2, env);
+        for(i = 0; i < size; i++)
+        {
+            sandesha2_sender_bean_t *temp_bean = NULL;
+            temp_bean = AXIS2_ARRAY_LIST_GET(retrans_list2, env, i);
+            AXIS2_ARRAY_LIST_ADD(retrans_list, env, temp_bean);
+        }
+    }
+    /* Selecting a bean to send randomly. TODO - Should use a better mechanism */
+    if(retrans_list)
+        size = AXIS2_ARRAY_LIST_SIZE(retrans_list, env);
+    if(size > 0)
+    {
+       unsigned int rand_var = axis2_rand_get_seed_value_based_on_time(env);
+       item_to_pick = axis2_rand_with_range(&rand_var, 1, size);
+    }
+    if(size > 1)
+        pending = AXIS2_TRUE; /*There are more than one message to be delivered 
+                               using the makeConnection. So the MessagePending 
+                               header should have value true;*/
+
+    for(itemp = 0; item < size; item++)
+    {
+        sender_bean = (sandesha2_sender_bean_t *) AXIS2_ARRAY_LIST_GET(
+                retrans_list, env, item);
+        if(item == item_to_pick)
+            break;
+    }
+    if(!sender_bean)
+        return AXIS2_SUCCESS;
+    transport_out = AXIS2_MSG_CTX_GET_TRANSPORT_OUT_DESC(msg_ctx, env);
+    if(!transport_out)
+    {
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_CANNOT_INFER_TRANSPORT, 
+                AXIS2_FAILURE);
+        return AXIS2_FAILURE;
+    }
+    msg_storage_key = sandesha2_sender_bean_get_msg_ctx_ref_key(sender_bean, 
+            env);
+    return_msg_ctx = sandesha2_storage_mgr_retrieve_msg_ctx(storage_mgr, env, 
+            msg_storage_key, conf_ctx);
+    return_rm_msg_ctx = sandesha2_msg_init_init_msg(env, return_msg_ctx);
+    add_msg_pending_header(env, return_rm_msg_ctx, pending);
+    set_transport_properties(env, return_msg_ctx, rm_msg_ctx);
+    /* Setting that the response gets written. This will be used by transports.*/
+    if(msg_ctx)
+        op_ctx = AXIS2_MSG_CTX_GET_OP_CTX(msg_ctx, env);
+    if(op_ctx)
+    {
+        ctx = AXIS2_OP_CTX_GET_BASE(op_ctx, env);
+        if (ctx)
+        {
+            axis2_char_t *value = NULL;
+            value = AXIS2_STRDUP("TRUE", env);
+            property = axis2_property_create(env);
+            AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+            AXIS2_PROPERTY_SET_VALUE(property, env, value);
+            AXIS2_CTX_SET_PROPERTY(ctx, env, AXIS2_RESPONSE_WRITTEN,
+                                        property, AXIS2_FALSE);
+        }
+    }
+    /*
+     *running the make_connection through a sender_worker.
+     *This will allow Sandesha2 to consider both of following senarios equally.
+     * 1. A message being sent by the Sender thread.
+     * 2. A message being sent as a reply to an make_connection.
+     */
+    msg_id = sandesha2_sender_bean_get_msg_id(sender_bean, env);
+    if(msg_id)
+    {
+        sandesha2_sender_worker_t *sender_worker = NULL;
+        /* Start a sender worker which will work on this message */
+        sender_worker = sandesha2_sender_worker_create(env, conf_ctx, msg_id);
+        sandesha2_sender_worker_set_transport_out(sender_worker, env, transport_out); 
+        sandesha2_sender_worker_run(sender_worker, env);
+    }
+}
+
+static void 
+add_msg_pending_header(
+    const axis2_env_t *env,
+    sandesha2_msg_ctx_t *return_msg_ctx,
+    axis2_bool_t pending)
+{
+    axiom_soap_envelope_t *soap_env = sandesha2_msg_ctx_get_soap_envelope(
+            return_msg_ctx, env);
+    axis2_char_t *rm_ns = sandesha2_msg_ctx_get_rm_ns_val(return_msg_ctx, env);
+    sandesha2_msg_pending_t *msg_pending = sandesha2_msg_pending_create(env, 
+            rn_ns);
+    sandesha2_msg_pending_set_pending(msg_pending, env, pending);
+    sandesha2_msg_pending_to_soap_envelope(msg_pending, env, soap_env);
+}
+
+static void
+set_transport_properties(
+    const axis2_env_t *env,
+    axis2_msg_ctx_t *return_msg_ctx,
+    sandesha2_msg_ctx_t *make_conn_msg_ctx)
+{
+    axis2_property_t *property = NULL;
+    property = sandesha2_msg_ctx_get_property(make_conn_ctx, env, 
+            AXIS2_TRANSPORT_OUT);
+    AXIS2_MSG_CTX_SET_PROPERTY(return_msg_ctx, env, AXIS2_TRANSPORT_OUT, 
+            property, AXIS2_FALSE);
+    property = sandesha2_msg_ctx_get_property(make_conn_ctx, env, 
+            AXIS2_HTTP_OUT_TRANSPORT_INFO);
+    AXIS2_MSG_CTX_SET_PROPERTY(return_msg_ctx, env, 
+            AXIS2_HTTP_OUT_TRANSPORT_INFO, property, AXIS2_FALSE);
+}
+

Modified: webservices/sandesha/trunk/c/src/util/error.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/error.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/util/error.c (original)
+++ webservices/sandesha/trunk/c/src/util/error.c Fri Nov 17 04:12:18 2006
@@ -172,6 +172,16 @@
         "Error in processing the message";
     sandesha2_error_messages[SANDESHA2_ERROR_INVALID_STRING_ARRAY]=
         "String array is invalid";
+    sandesha2_error_messages[SANDESHA2_ERROR_PENDING_HEADER_MUST_HAVE_ATTRIBUTE_PENDING]=
+        "MessagePending header must have an attribute named 'pending'";
+    sandesha2_error_messages[SANDESHA2_ERROR_ATTRIBUTE_PENDING_MUST_HAVE_VALUE_TRUE_OR_FALSE]=
+        "Attribute 'pending' must have value 'true' or 'false'";
+    sandesha2_error_messages[SANDESHA2_ERROR_MAKE_CONNECTION_ELEMENT_SHOULD_HAVE_AT_LEAST_ADDRESS_OR_IDENTIFIER]=
+        "MakeConnection element should have at lease one of Address and Identifier subelements";
+    /* Invalid MakeConnection object. Both Identifier and Address are null */
+    sandesha2_error_messages[SANDESHA2_ERROR_INVALID_MAKE_CONNECTION_BOTH_IDENTIFER_AND_ADDRESS_NULL]=
+        "Invalid MakeConnection object. Both Identifier and Address are null";
+
     return AXIS2_SUCCESS;
 }
 

Modified: webservices/sandesha/trunk/c/src/util/sandesha2_utils.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/sandesha2_utils.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/util/sandesha2_utils.c (original)
+++ webservices/sandesha/trunk/c/src/util/sandesha2_utils.c Fri Nov 17 04:12:18 2006
@@ -833,7 +833,7 @@
         if(NULL == seq_element)
         {
             qname = axis2_qname_create(env, SANDESHA2_WSRM_COMMON_SEQ,
-                        SANDESHA2_SPEC_2005_10_NS_URI, NULL);
+                        SANDESHA2_SPEC_2006_08_NS_URI, NULL);
             seq_element = AXIOM_ELEMENT_GET_FIRST_CHILD_WITH_QNAME(
                         header_element, env, qname, header_node, &seq_node);
         }

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?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/util/seq_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/seq_mgr.c Fri Nov 17 04:12:18 2006
@@ -171,7 +171,7 @@
     {
         spec_version = AXIS2_STRDUP(SANDESHA2_SPEC_VERSION_1_0, env);
     }
-    else if(0 == AXIS2_STRCMP(SANDESHA2_SPEC_2005_10_NS_URI, msg_rm_ns))
+    else if(0 == AXIS2_STRCMP(SANDESHA2_SPEC_2006_08_NS_URI, msg_rm_ns))
     {
         spec_version = AXIS2_STRDUP(SANDESHA2_SPEC_VERSION_1_1, env);
     }

Modified: webservices/sandesha/trunk/c/src/util/spec_specific_consts.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/spec_specific_consts.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/util/spec_specific_consts.c (original)
+++ webservices/sandesha/trunk/c/src/util/spec_specific_consts.c Fri Nov 17 04:12:18 2006
@@ -32,7 +32,7 @@
     {
         return SANDESHA2_SPEC_VERSION_1_0;
     }
-    else if(0 == AXIS2_STRCMP(ns_val, SANDESHA2_SPEC_2005_10_NS_URI))
+    else if(0 == AXIS2_STRCMP(ns_val, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return SANDESHA2_SPEC_VERSION_1_1;
     }
@@ -57,7 +57,7 @@
     }
     if(0 == AXIS2_STRCMP(SANDESHA2_SPEC_VERSION_1_1, spec_ver))
     {
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     }
     return NULL;
 }

Modified: webservices/sandesha/trunk/c/src/workers/sender_worker.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/sender_worker.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/sender_worker.c (original)
+++ webservices/sandesha/trunk/c/src/workers/sender_worker.c Fri Nov 17 04:12:18 2006
@@ -87,7 +87,7 @@
     const axis2_env_t *env, 
     axis2_msg_ctx_t *msg_ctx);
 
-axis2_bool_t AXIS2_CALL
+static axis2_bool_t AXIS2_CALL
 sandesha2_sender_worker_is_fault_envelope(
     sandesha2_sender_worker_t *sender_worker, 
     const axis2_env_t *env, 
@@ -533,7 +533,7 @@
     return AXIS2_SUCCESS;
 }
 
-axis2_bool_t AXIS2_CALL
+static axis2_bool_t AXIS2_CALL
 sandesha2_sender_worker_is_fault_envelope(
     sandesha2_sender_worker_t *sender_worker, 
     const axis2_env_t *env, 
@@ -549,6 +549,14 @@
         return AXIS2_TRUE;
         
     return AXIS2_FALSE;
+}
+
+void sandesha2_sender_worker_set_transport_out(
+    sandesha2_sender_worker_t *sender_worker,
+    const axis2_env_t *env,
+    axis2_transport_out_desc_t *transport_out)
+{
+    sender_worker->transport_out = transport_out;
 }
 
 

Modified: webservices/sandesha/trunk/c/src/wsrm/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/Makefile.am?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/Makefile.am (original)
+++ webservices/sandesha/trunk/c/src/wsrm/Makefile.am Fri Nov 17 04:12:18 2006
@@ -26,7 +26,8 @@
                                terminate_seq_res.c\
                                rm_elements.c \
                                iom_rm_element.c \
-                               iom_rm_part.c
+                               iom_rm_part.c \
+							   msg_pending.c
 
 INCLUDES = -I$(top_builddir)/include \
             @AXIS2INC@

Modified: webservices/sandesha/trunk/c/src/wsrm/accept.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/accept.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/accept.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/accept.c Fri Nov 17 04:12:18 2006
@@ -252,7 +252,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/ack_final.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/ack_final.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/ack_final.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/ack_final.c Fri Nov 17 04:12:18 2006
@@ -215,7 +215,7 @@
     {
         return AXIS2_FALSE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     } 

Modified: webservices/sandesha/trunk/c/src/wsrm/ack_none.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/ack_none.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/ack_none.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/ack_none.c Fri Nov 17 04:12:18 2006
@@ -218,7 +218,7 @@
     {
         return AXIS2_FALSE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/ack_range.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/ack_range.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/ack_range.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/ack_range.c Fri Nov 17 04:12:18 2006
@@ -299,7 +299,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/ack_requested.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/ack_requested.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/ack_requested.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/ack_requested.c Fri Nov 17 04:12:18 2006
@@ -295,7 +295,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

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?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/acks_to.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/acks_to.c Fri Nov 17 04:12:18 2006
@@ -252,7 +252,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/address.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/address.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/address.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/address.c Fri Nov 17 04:12:18 2006
@@ -266,7 +266,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/close_seq.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/close_seq.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/close_seq.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/close_seq.c Fri Nov 17 04:12:18 2006
@@ -280,7 +280,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/close_seq_res.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/close_seq_res.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/close_seq_res.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/close_seq_res.c Fri Nov 17 04:12:18 2006
@@ -275,7 +275,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/create_seq.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/create_seq.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/create_seq.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/create_seq.c Fri Nov 17 04:12:18 2006
@@ -361,7 +361,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/create_seq_res.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/create_seq_res.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/create_seq_res.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/create_seq_res.c Fri Nov 17 04:12:18 2006
@@ -354,7 +354,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/expires.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/expires.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/expires.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/expires.c Fri Nov 17 04:12:18 2006
@@ -264,7 +264,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/fault_code.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/fault_code.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/fault_code.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/fault_code.c Fri Nov 17 04:12:18 2006
@@ -253,7 +253,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/identifier.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/identifier.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/identifier.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/identifier.c Fri Nov 17 04:12:18 2006
@@ -264,7 +264,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/last_msg.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/last_msg.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/last_msg.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/last_msg.c Fri Nov 17 04:12:18 2006
@@ -227,7 +227,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Added: webservices/sandesha/trunk/c/src/wsrm/make_connection.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/make_connection.c?view=auto&rev=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/make_connection.c (added)
+++ webservices/sandesha/trunk/c/src/wsrm/make_connection.c Fri Nov 17 04:12:18 2006
@@ -0,0 +1,426 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+#include <sandesha2_make_connection.h>
+#include <sandesha2_constants.h>
+#include <axiom_soap_header.h>
+#include <axiom_soap_header_block.h>
+
+/** 
+ * @brief Make Connection struct impl
+ *	Sandesha2 IOM Make Connection
+ */
+typedef struct sandesha2_make_connection_impl sandesha2_make_connection_impl_t;  
+  
+struct sandesha2_make_connection_impl
+{
+	sandesha2_make_connection_t make_conn;
+	sandesha2_identifier_t *identifier;
+	sandesha2_address_t *address;
+	axis2_char_t *ns_val;
+};
+
+#define SANDESHA2_INTF_TO_IMPL(make_conn) \
+    ((sandesha2_make_connection_impl_t *)(make_conn))
+
+/***************************** Function headers *******************************/
+static axis2_char_t* AXIS2_CALL 
+sandesha2_make_connection_get_namespace_value (
+    sandesha2_iom_rm_element_t *make_conn,
+	const axis2_env_t *env);
+    
+static void* AXIS2_CALL 
+sandesha2_make_connection_from_om_node(
+    sandesha2_iom_rm_element_t *make_conn,
+    const axis2_env_t *env, 
+    axiom_node_t *om_node);
+    
+static axiom_node_t* AXIS2_CALL 
+sandesha2_make_connection_to_om_node(
+    sandesha2_iom_rm_element_t *make_conn,
+    const axis2_env_t *env, 
+    void *om_node);
+                    	
+static axis2_bool_t AXIS2_CALL 
+sandesha2_make_connection_is_namespace_supported(
+    sandesha2_iom_rm_element_t *make_conn,
+    const axis2_env_t *env, 
+    axis2_char_t *namespace);
+
+static axis2_status_t AXIS2_CALL
+sandesha2_make_connection_to_soap_envelope(
+    sandesha2_iom_rm_part_t *make_conn,
+    const axis2_env_t *env, 
+    axiom_soap_envelope_t *envelope);
+                    	                    	
+static axis2_status_t AXIS2_CALL 
+sandesha2_make_connection_free (
+    sandesha2_iom_rm_element_t *make_conn, 
+	const axis2_env_t *env);								
+
+/***************************** End of function headers ************************/
+
+AXIS2_EXTERN sandesha2_make_connection_t* AXIS2_CALL
+sandesha2_make_connection_create(const axis2_env_t *env,  axis2_char_t *ns_val)
+{
+    sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+    AXIS2_ENV_CHECK(env, NULL);
+    AXIS2_PARAM_CHECK(env->error, ns_val, NULL);
+    
+    if(!sandesha2_make_connection_is_namespace_supported(
+        (sandesha2_iom_rm_element_t*)make_conn_impl, env, 
+        ns_val))
+    {
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNSUPPORTED_NS, 
+            AXIS2_FAILURE);
+        return NULL;
+    }    
+    make_conn_impl =  (sandesha2_make_connection_impl_t *)AXIS2_MALLOC 
+        (env->allocator, sizeof(sandesha2_make_connection_impl_t));
+	
+    if(!make_conn_impl)
+	{
+		AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    make_conn_impl->ns_val = NULL;
+    make_conn_impl->identifier = NULL;
+    make_conn_impl->address = NULL;
+    make_conn_impl->make_conn.part.ops = NULL;
+    make_conn_impl->make_conn.part.element.ops = NULL;
+    
+    make_conn_impl->make_conn.part.ops = AXIS2_MALLOC(env->allocator,
+        sizeof(sandesha2_iom_rm_part_ops_t));
+    if(!make_conn_impl->make_conn.part.ops)
+	{
+		sandesha2_make_connection_free((sandesha2_iom_rm_element_t*)
+            make_conn_impl, env);
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    make_conn_impl->make_conn.part.element.ops = AXIS2_MALLOC(env->allocator,
+        sizeof(sandesha2_iom_rm_element_ops_t));
+    if(!make_conn_impl->make_conn.part.element.ops)
+	{
+		sandesha2_make_connection_free((sandesha2_iom_rm_element_t*)
+            make_conn_impl, env);
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    
+    make_conn_impl->ns_val = (axis2_char_t *)AXIS2_STRDUP(ns_val, env);
+    
+    make_conn_impl->make_conn.part.element.ops->get_namespace_value = 
+                        sandesha2_make_connection_get_namespace_value;
+    make_conn_impl->make_conn.part.element.ops->from_om_node = 
+    					sandesha2_make_connection_from_om_node;
+    make_conn_impl->make_conn.part.element.ops->to_om_node = 
+    					sandesha2_make_connection_to_om_node;
+    make_conn_impl->make_conn.part.element.ops->is_namespace_supported = 
+    					sandesha2_make_connection_is_namespace_supported;
+    make_conn_impl->make_conn.part.ops->to_soap_env = 
+    					sandesha2_make_connection_to_soap_envelope;
+    make_conn_impl->make_conn.part.element.ops->free = 
+        sandesha2_make_connection_free;
+    
+	return &(make_conn_impl->make_conn);
+}
+
+axis2_status_t AXIS2_CALL
+sandesha2_make_connection_free_void_arg(
+    void *make_conn,
+    const axis2_env_t *env)
+{
+    sandesha2_iom_rm_element_t *make_conn_l = NULL;
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+    make_conn_l = (sandesha2_iom_rm_element_t *) make_conn;
+    return sandesha2_make_connection_free(make_conn_l, env);
+}
+
+static axis2_status_t AXIS2_CALL 
+sandesha2_make_connection_free (
+    sandesha2_iom_rm_element_t *make_conn, 
+	const axis2_env_t *env)
+{
+    sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+    
+    if(make_conn_impl->ns_val)
+    {
+        AXIS2_FREE(env->allocator, make_conn_impl->ns_val);
+        make_conn_impl->ns_val = NULL;
+    }
+    make_conn_impl->identifier = NULL;
+    make_conn_impl->address = NULL;
+    if(make_conn->ops)
+        AXIS2_FREE(env->allocator, make_conn->ops);
+    
+	AXIS2_FREE(env->allocator, SANDESHA2_INTF_TO_IMPL(make_conn));
+	return AXIS2_SUCCESS;
+}
+
+static axis2_char_t* AXIS2_CALL 
+sandesha2_make_connection_get_namespace_value (
+    sandesha2_iom_rm_element_t *make_conn,
+	const axis2_env_t *env)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	AXIS2_ENV_CHECK(env, NULL);
+	
+	make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+	return make_conn_impl->ns_val;
+}
+
+static void* AXIS2_CALL 
+sandesha2_make_connection_from_om_node(
+    sandesha2_iom_rm_element_t *make_conn,
+    const axis2_env_t *env, 
+    axiom_node_t *om_node)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+    axiom_element_t *om_element = NULL;
+    axiom_element_t *identifier_element = NULL;
+    axiom_node_t *identifier_node = NULL;
+    axiom_element_t *address_element = NULL;
+    axiom_node_t *address_node = NULL;
+    axis2_qname_t *identifier_qname = NULL; 
+    axis2_qname_t *address_qname = NULL; 
+    
+    AXIS2_ENV_CHECK(env, NULL);
+    AXIS2_PARAM_CHECK(env->error, om_node, NULL);
+    
+    make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+    om_element = AXIOM_NODE_GET_DATA_ELEMENT(om_node, env);
+    if(!om_element)
+    {
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_NULL_OM_ELEMENT,
+                        AXIS2_FAILURE);
+        return NULL;
+    }
+    identifier_qname = axis2_qname_create(env, SANDESHA2_WSRM_COMMON_IDENTIFIER,
+                        make_conn_impl->ns_val, NULL);
+    if(!identifier_qname)
+    {
+        return NULL;
+    }
+    address_qname = axis2_qname_create(env, SANDESHA2_WSRM_COMMON_ADDRESS,
+                        make_conn_impl->ns_val, NULL);
+    if(!address_qname)
+    {
+        return NULL;
+    }
+    identifier_element = AXIOM_ELEMENT_GET_FIRST_CHILD_WITH_QNAME(om_element, env,
+                        identifier_qname, om_node, &identifier_node);
+    address_element = AXIOM_ELEMENT_GET_FIRST_CHILD_WITH_QNAME(om_element, env,
+                        address_qname, om_node, &address_node);
+    if(!identifier_element && !address_element)
+    {
+        AXIS2_ERROR_SET(env->error, 
+            ANDESHA2_ERROR_MAKE_CONNECTION_ELEMENT_SHOULD_HAVE_AT_LEAST_ADDRESS_OR_IDENTIFIER, 
+            AXIS2_FAILURE);
+        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "MakeConnection element " \
+            "should have at lease one of Address and Identifier subelements");
+        return NULL;
+    }
+    if(identifier_element)
+    {
+        make_conn_impl->identifier = sandesha2_identifier_create(env, 
+            make_conn_impl->ns_val);
+        if(!make_conn_impl->identifier)
+        {
+            return NULL;
+        }
+        sandesha2_iom_rm_element_from_om_node((sandesha2_iom_rm_element_t *)
+                make_conn_impl->identifier, env, identifier_node);
+    }
+    if(address_element)
+    {
+        make_conn_impl->address = sandesha2_address_create(env, 
+                        make_conn_impl->ns_val);
+        if(!make_conn_impl->address)
+        {
+            return NULL;
+        }
+        sandesha2_iom_rm_element_from_om_node((sandesha2_iom_rm_element_t *)
+                make_conn_impl->address, env, address_node);
+    }
+    return make_conn;
+}
+
+
+static axiom_node_t* AXIS2_CALL 
+sandesha2_make_connection_to_om_node(
+    sandesha2_iom_rm_element_t *make_conn,
+    const axis2_env_t *env, 
+    void *om_node)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+    axiom_namespace_t *rm_ns = NULL;
+    axiom_soap_body_t *soap_body = NULL;
+    axiom_node_t *make_conn_node = NULL;
+    axiom_element_t *make_conn_element = NULL;
+    
+    AXIS2_ENV_CHECK(env, NULL);
+    AXIS2_PARAM_CHECK(env->error, om_node, NULL);
+    
+    make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+    soap_body = (axiom_soap_body_t*)om_node;
+    if(!make_conn_impl->identifier && !make_conn_impl->address)
+    {
+        AXIS2_ERROR_SET(env->error, 
+            SANDESHA2_ERROR_INVALID_MAKE_CONNECTION_BOTH_IDENTIFER_AND_ADDRESS_NULL, 
+            AXIS2_FAILURE);
+        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "Invalid MakeConnection " \
+            "object. Both Identifier and Address are null");
+        return NULL;
+    }
+    rm_ns = axiom_namespace_create(env, make_conn_impl->ns_val,
+        SANDESHA2_WSRM_COMMON_NS_PREFIX_RM);
+    if(!rm_ns)
+    {
+        return NULL;
+    }
+    make_conn_element = axiom_element_create(env, NULL, 
+        SANDESHA2_WSRM_COMMON_MAKE_CONNECTION, rm_ns, &make_conn_node);
+    if(!make_conn_element)
+    {
+        return NULL;
+    }
+    if(make_conn_impl->identifier)
+        sandesha2_iom_rm_element_to_om_node((sandesha2_iom_rm_element_t *)
+            make_conn_impl->identifier, env, make_conn_node);
+    if(make_conn_impl->address)
+        sandesha2_iom_rm_element_to_om_node((sandesha2_iom_rm_element_t *)
+            make_conn_impl->address, env, make_conn_node);
+    AXIOM_SOAP_BODY_ADD_CHILD(soap_body, env, make_conn_node);
+    return body;
+}
+
+static axis2_bool_t AXIS2_CALL 
+sandesha2_make_connection_is_namespace_supported(
+    sandesha2_iom_rm_element_t *make_conn,
+    const axis2_env_t *env, 
+    axis2_char_t *namespace)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    
+    make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_02_NS_URI))
+    {
+        return AXIS2_FALSE;
+    }
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
+    {
+        return AXIS2_TRUE;
+    }
+    return AXIS2_FALSE;
+}
+
+sandesha2_identifier_t * AXIS2_CALL
+sandesha2_make_connection_get_identifier(
+    sandesha2_make_connection_t *element,
+    const axis2_env_t *env)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	AXIS2_ENV_CHECK(env, NULL);
+	make_conn_impl = SANDESHA2_INTF_TO_IMPL(element);
+	
+	return make_conn_impl->identifier;
+}                    	
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_make_connection_set_identifier(
+    sandesha2_make_connection_t *make_conn,
+    const axis2_env_t *env, 
+    sandesha2_identifier_t *identifier)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+	make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+	make_conn_impl->identifier = identifier;
+ 	return AXIS2_SUCCESS;
+}
+
+sandesha2_address_t * AXIS2_CALL
+sandesha2_make_connection_get_address(
+    sandesha2_make_connection_t *make_conn,
+    const axis2_env_t *env)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	AXIS2_ENV_CHECK(env, NULL);
+	make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+	
+	return make_conn_impl->address;
+}                    	
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_make_connection_set_address(
+    sandesha2_make_connection_t *make_conn,
+    const axis2_env_t *env, 
+    sandesha2_address_t *address)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+	make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+	make_conn_impl->address = address;
+ 	return AXIS2_SUCCESS;
+}
+
+static axis2_status_t AXIS2_CALL
+sandesha2_make_connection_to_soap_envelope(
+    sandesha2_iom_rm_part_t *make_conn,
+    const axis2_env_t *env, 
+    axiom_soap_envelope_t *envelope)
+{
+	sandesha2_make_connection_impl_t *make_conn_impl = NULL;
+	axiom_soap_body_t *soap_body = NULL;
+    axiom_node_t *body_node = NULL;
+    axiom_element_t *body_element = NULL;
+    axiom_node_t *node = NULL;
+    axiom_element_t *element = NULL;
+    axis2_qname_t *make_conn_qname = NULL;
+    
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, envelope, AXIS2_FAILURE);
+	
+	make_conn_impl = SANDESHA2_INTF_TO_IMPL(make_conn);
+    soap_body = AXIOM_SOAP_ENVELOPE_GET_BODY(envelope, env);
+    if(soap_body)
+        body_node = AXIOM_SOAP_BODY_GET_BASE_NODE(soap_body, env);
+    if(body_node)
+        body_element = AXIOM_NODE_GET_DATA_ELEMENT(body_node, env);
+    make_conn_qname = axis2_qname_create(env, 
+        SANDESHA2_WSRM_COMMON_MAKE_CONNECTION, make_conn_impl->ns_val, NULL);
+    if(!make_conn_qname)
+    {
+        return AXIS2_FAILURE;
+    }
+    if(body_element)
+        element = AXIOM_ELEMENT_GET_FIRST_CHILD_WITH_QNAME(body_element, env,
+            make_conn_qname, om_node, &node);
+    /**
+     * Detach if already exists
+     */
+    if(node)
+        AXIOM_NODE_DETACH(node, env);
+    sandesha2_make_connection_to_om_node((sandesha2_iom_rm_element_t*)make_conn, 
+            env, soap_body);
+	return AXIS2_SUCCESS;
+}
+

Modified: webservices/sandesha/trunk/c/src/wsrm/msg_number.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/msg_number.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/msg_number.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/msg_number.c Fri Nov 17 04:12:18 2006
@@ -274,7 +274,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Added: webservices/sandesha/trunk/c/src/wsrm/msg_pending.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/msg_pending.c?view=auto&rev=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/msg_pending.c (added)
+++ webservices/sandesha/trunk/c/src/wsrm/msg_pending.c Fri Nov 17 04:12:18 2006
@@ -0,0 +1,358 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+#include <sandesha2_msg_pending.h>
+#include <sandesha2_constants.h>
+#include <axiom_soap_header.h>
+#include <axiom_soap_header_block.h>
+
+/** 
+ * @brief Message Pending struct impl
+ *	Sandesha2 IOM Message Pending
+ */
+typedef struct sandesha2_msg_pending_impl sandesha2_msg_pending_impl_t;  
+  
+struct sandesha2_msg_pending_impl
+{
+	sandesha2_msg_pending_t msg_pending;
+	axis2_bool_t pending;
+	axis2_char_t *ns_val;
+};
+
+#define SANDESHA2_INTF_TO_IMPL(msg_pending) \
+						((sandesha2_msg_pending_impl_t *)(msg_pending))
+
+/***************************** Function headers *******************************/
+static axis2_char_t* AXIS2_CALL 
+sandesha2_msg_pending_get_namespace_value (
+    sandesha2_iom_rm_element_t *msg_pending,
+	const axis2_env_t *env);
+    
+static void* AXIS2_CALL 
+sandesha2_msg_pending_from_om_node(
+    sandesha2_iom_rm_element_t *msg_pending,
+    const axis2_env_t *env, 
+    axiom_node_t *om_node);
+    
+static axiom_node_t* AXIS2_CALL 
+sandesha2_msg_pending_to_om_node(
+    sandesha2_iom_rm_element_t *msg_pending,
+    const axis2_env_t *env, 
+    void *om_node);
+                    	
+static axis2_bool_t AXIS2_CALL 
+sandesha2_msg_pending_is_namespace_supported(
+    sandesha2_iom_rm_element_t *msg_pending,
+    const axis2_env_t *env, 
+    axis2_char_t *namespace);
+
+static axis2_status_t AXIS2_CALL
+sandesha2_msg_pending_to_soap_envelope(
+    sandesha2_iom_rm_part_t *msg_pending,
+    const axis2_env_t *env, 
+    axiom_soap_envelope_t *envelope);
+                    	                    	
+static axis2_status_t AXIS2_CALL 
+sandesha2_msg_pending_free (
+    sandesha2_iom_rm_element_t *msg_pending, 
+	const axis2_env_t *env);								
+
+/***************************** End of function headers ************************/
+
+AXIS2_EXTERN sandesha2_msg_pending_t* AXIS2_CALL
+sandesha2_msg_pending_create(
+    const axis2_env_t *env,  
+    axis2_char_t *ns_val)
+{
+    sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+    AXIS2_ENV_CHECK(env, NULL);
+    AXIS2_PARAM_CHECK(env->error, ns_val, NULL);
+    
+    if(AXIS2_FALSE == sandesha2_msg_pending_is_namespace_supported(
+            (sandesha2_iom_rm_element_t*)msg_pending_impl, env, 
+            ns_val))
+    {
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_UNSUPPORTED_NS, 
+                AXIS2_FAILURE);
+        return NULL;
+    }    
+    msg_pending_impl =  (sandesha2_msg_pending_impl_t *)AXIS2_MALLOC 
+        (env->allocator, sizeof(sandesha2_msg_pending_impl_t));
+	
+    if(!msg_pending_impl)
+	{
+		AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    msg_pending_impl->ns_val = (axis2_char_t *)AXIS2_STRDUP(ns_val, env);
+    msg_pending_impl->pending = AXIS2_TRUE;
+    msg_pending_impl->msg_pending.part.ops = NULL;
+    msg_pending_impl->msg_pending.part.element.ops = NULL;
+    
+    msg_pending_impl->msg_pending.part.ops = AXIS2_MALLOC(env->allocator,
+        sizeof(sandesha2_iom_rm_part_ops_t));
+    if(!msg_pending_impl->msg_pending.part.ops)
+	{
+		sandesha2_msg_pending_free((sandesha2_iom_rm_element_t*)
+                         msg_pending_impl, env);
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    msg_pending_impl->msg_pending.part.element.ops = AXIS2_MALLOC(env->allocator,
+        sizeof(sandesha2_iom_rm_element_ops_t));
+    if(!msg_pending_impl->msg_pending.part.element.ops)
+	{
+		sandesha2_msg_pending_free((sandesha2_iom_rm_element_t*)
+                         msg_pending_impl, env);
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+	}
+    
+    msg_pending_impl->msg_pending.part.element.ops->get_namespace_value = 
+                        sandesha2_msg_pending_get_namespace_value;
+    msg_pending_impl->msg_pending.part.element.ops->from_om_node = 
+    					sandesha2_msg_pending_from_om_node;
+    msg_pending_impl->msg_pending.part.element.ops->to_om_node = 
+    					sandesha2_msg_pending_to_om_node;
+    msg_pending_impl->msg_pending.part.element.ops->is_namespace_supported = 
+    					sandesha2_msg_pending_is_namespace_supported;
+    msg_pending_impl->msg_pending.part.ops->to_soap_env = 
+    					sandesha2_msg_pending_to_soap_envelope;
+    msg_pending_impl->msg_pending.part.element.ops->free = 
+        sandesha2_msg_pending_free;
+                        
+	return &(msg_pending_impl->msg_pending);
+}
+
+axis2_status_t AXIS2_CALL
+sandesha2_msg_pending_free_void_arg(
+    void *msg_pending,
+    const axis2_env_t *env)
+{
+    sandesha2_iom_rm_element_t *msg_pending_l = NULL;
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+    msg_pending_l = (sandesha2_iom_rm_element_t *) msg_pending;
+    return sandesha2_msg_pending_free(msg_pending_l, env);
+}
+
+static axis2_status_t AXIS2_CALL 
+sandesha2_msg_pending_free (
+    sandesha2_iom_rm_element_t *msg_pending, 
+	const axis2_env_t *env)
+{
+    sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+    
+    if(msg_pending_impl->ns_val)
+    {
+        AXIS2_FREE(env->allocator, msg_pending_impl->ns_val);
+        msg_pending_impl->ns_val = NULL;
+    }
+    if(msg_pending->ops)
+        AXIS2_FREE(env->allocator, msg_pending->ops);
+    
+	AXIS2_FREE(env->allocator, SANDESHA2_INTF_TO_IMPL(msg_pending));
+	return AXIS2_SUCCESS;
+}
+
+static axis2_char_t* AXIS2_CALL 
+sandesha2_msg_pending_get_namespace_value (
+    sandesha2_iom_rm_element_t *msg_pending,
+	const axis2_env_t *env)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+	AXIS2_ENV_CHECK(env, NULL);
+	
+	msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+	return msg_pending_impl->ns_val;
+}
+
+
+static void* AXIS2_CALL 
+sandesha2_msg_pending_from_om_node(
+    sandesha2_iom_rm_element_t *msg_pending,
+    const axis2_env_t *env, 
+    axiom_node_t *om_node)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+    axiom_element_t *om_element = NULL;
+    axis2_qname_t *pending_qname = NULL; 
+    axis2_char_t *value = NULL;
+    axiom_attribute_t *pending_attr = NULL;
+    axis2_bool_t pending = AXIS2_FALSE;
+    
+    AXIS2_ENV_CHECK(env, NULL);
+    AXIS2_PARAM_CHECK(env->error, om_node, NULL);
+    
+    msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+    om_element = AXIOM_NODE_GET_DATA_ELEMENT(om_node, env);
+    if(!om_element)
+    {
+        AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_NULL_OM_ELEMENT,
+                        AXIS2_FAILURE);
+        return NULL;
+    }
+    pending_qname = axis2_qname_create(env, SANDESHA2_WSRM_COMMON_PENDING,
+                        msg_pending_impl->ns_val, NULL);
+    if(!pending_qname)
+    {
+        return NULL;
+    }
+    pending_attr = AXIOM_ELEMENT_GET_ATTRIBUTE(om_element, env, pending_qname);
+    if(!pending_attr)
+    {
+        AXIS2_ERROR_LOG(env->log, AXIS2_LOG_SI, "MessagePending header must" \
+                "have an attribute named 'pending'");
+        SANDESHA2_ERROR_SET(env->error, 
+            SANDESHA2_ERROR_PENDING_HEADER_MUST_HAVE_ATTRIBUTE_PENDING, 
+            AXIS2_FAILURE);
+    }
+    value = AXIOM_ATTRIBUTE_GET_VALUE(pending_attr, env);
+    if(0 == AXIS2_STRCMP(value, SANDESHA2_VALUE_TRUE))
+        pending = AXIS2_TRUE;
+    if(0 == AXIS2_STRCMP(value, SANDESHA2_VALUE_FALSE))
+        pending = AXIS2_FALSE;
+    else
+    {
+        AXIS2_ERROR_LOG(env->log, AXIS2_LOG_SI, 
+            "Attribute 'pending' must have value 'true' or 'false'");
+        SANDESHA2_ERROR_SET(env->error, 
+            SANDESHA2_ERROR_ATTRIBUTE_PENDING_MUST_HAVE_VALUE_TRUE_OR_FALSE, 
+            AXIS2_FAILURE);
+        
+    }
+    return msg_pending;
+}
+
+static axiom_node_t* AXIS2_CALL 
+sandesha2_msg_pending_to_om_node(
+    sandesha2_iom_rm_element_t *msg_pending,
+    const axis2_env_t *env, 
+    void *om_node)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+    axiom_namespace_t *rm_ns = NULL;
+    axiom_soap_header_t *soap_header = NULL;
+    axiom_soap_header_block_t *msg_pending_block = NULL;
+    axiom_node_t *msg_pending_node = NULL;
+    axis2_char_t *attr_value = NULL;
+    axis2_bool_t pending = AXIS2_FALSE;
+    
+    AXIS2_ENV_CHECK(env, NULL);
+    AXIS2_PARAM_CHECK(env->error, om_node, NULL);
+    
+    msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+    soap_header = (axiom_soap_header_t*)om_node;
+    rm_ns = axiom_namespace_create(env, msg_pending_impl->ns_val,
+                        SANDESHA2_WSRM_COMMON_NS_PREFIX_RM);
+    if(!rm_ns)
+    {
+        return NULL;
+    }
+    msg_pending_block = AXIOM_SOAP_HEADER_ADD_HEADER_BLOCK(soap_header, env, 
+                        SANDESHA2_WSRM_COMMON_MESSAGE_PENDING, rm_ns);
+    if(!msg_pending_block)
+    {
+        return NULL;
+    }
+    msg_pending_node = AXIOM_SOAP_HEADER_BLOCK_GET_BASE_NODE(msg_pending_block, env);
+    if(pending)
+        attr_value = SANDESHA2_VALUE_TRUE;
+    else if(!pending)
+        attr_value = SANDESHA2_VALUE_FALSE;
+    AXIOM_SOAP_HEADER_BLOCK_SET_ATTRIBUTE(msg_pending_block, env, 
+            SANDESHA2_WSRM_COMMON_MESSAGE_PENDING, attr_value, NULL); 
+    return msg_pending_node;
+}
+
+static axis2_bool_t AXIS2_CALL 
+sandesha2_msg_pending_is_namespace_supported(
+    sandesha2_iom_rm_element_t *msg_pending,
+    const axis2_env_t *env, 
+    axis2_char_t *namespace)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    
+    msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_02_NS_URI))
+    {
+        return AXIS2_FALSE;
+    }
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
+    {
+        return AXIS2_TRUE;
+    }
+    return AXIS2_FALSE;
+}
+
+axis2_bool_t AXIS2_CALL
+sandesha2_msg_pending_is_pending(
+    sandesha2_msg_pending_t *msg_pending,
+    const axis2_env_t *env)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FALSE);
+	msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+	return msg_pending_impl->pending;
+}                    	
+
+axis2_status_t AXIS2_CALL                 
+sandesha2_msg_pending_set_pending(
+    sandesha2_msg_pending_t *msg_pending,
+    const axis2_env_t *env, 
+    axis2_bool_t pending)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+	AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+	msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+	msg_pending_impl->pending = pending;
+ 	return AXIS2_SUCCESS;
+}
+
+static axis2_status_t AXIS2_CALL
+sandesha2_msg_pending_to_soap_envelope(
+    sandesha2_iom_rm_part_t *msg_pending,
+    const axis2_env_t *env, 
+    axiom_soap_envelope_t *envelope)
+{
+	sandesha2_msg_pending_impl_t *msg_pending_impl = NULL;
+	axiom_soap_header_t *soap_header = NULL;
+    axis2_qname_t *msg_pending_qname = NULL;
+    
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env->error, envelope, AXIS2_FAILURE);
+	
+	msg_pending_impl = SANDESHA2_INTF_TO_IMPL(msg_pending);
+    soap_header = AXIOM_SOAP_ENVELOPE_GET_HEADER(envelope, env);
+    /**
+     * Remove if already exists
+     */
+    msg_pending_qname = axis2_qname_create(env, 
+            SANDESHA2_WSRM_COMMON_MESSAGE_PENDING, msg_pending_impl->ns_val, 
+            NULL);
+    if(!msg_pending_qname)
+    {
+        return AXIS2_FAILURE;
+    }
+    AXIOM_SOAP_HEADER_REMOVE_HEADER_BLOCK(soap_header, env, msg_pending_qname);
+    sandesha2_msg_pending_to_om_node((sandesha2_iom_rm_element_t*)msg_pending, 
+            env, soap_header);
+	return AXIS2_SUCCESS;
+}
+

Modified: webservices/sandesha/trunk/c/src/wsrm/nack.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/nack.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/nack.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/nack.c Fri Nov 17 04:12:18 2006
@@ -269,7 +269,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/rm_elements.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/rm_elements.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/rm_elements.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/rm_elements.c Fri Nov 17 04:12:18 2006
@@ -778,10 +778,10 @@
         if(NULL != headers && 0 < AXIS2_ARRAY_LIST_SIZE(headers, env))
             return SANDESHA2_SPEC_2005_02_NS_URI;
         headers = AXIOM_SOAP_HEADER_GET_HEADER_BLOCKS_WITH_NAMESPACE_URI(
-                        soap_header, env, SANDESHA2_SPEC_2005_10_NS_URI);
+                        soap_header, env, SANDESHA2_SPEC_2006_08_NS_URI);
                 
         if(NULL != headers && 0 < AXIS2_ARRAY_LIST_SIZE(headers, env))
-            return SANDESHA2_SPEC_2005_10_NS_URI;
+            return SANDESHA2_SPEC_2006_08_NS_URI;
     }
     if(NULL == action)
         return NULL;
@@ -796,19 +796,19 @@
         return SANDESHA2_SPEC_2005_02_NS_URI;
         
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_CREATE_SEQ))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_CREATE_SEQ_RESPONSE))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_SEQ_ACKNOWLEDGEMENT))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_TERMINATE_SEQ))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_CLOSE_SEQ))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_TERMINATE_SEQ_RESPONSE))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     if(0 == AXIS2_STRCMP(action, SANDESHA2_SPEC_2005_10_ACTION_CLOSE_SEQ_RESPONSE))
-        return SANDESHA2_SPEC_2005_10_NS_URI;
+        return SANDESHA2_SPEC_2006_08_NS_URI;
     
     return NULL;
     

Modified: webservices/sandesha/trunk/c/src/wsrm/seq_ack.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/seq_ack.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/seq_ack.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/seq_ack.c Fri Nov 17 04:12:18 2006
@@ -492,7 +492,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/seq_fault.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/seq_fault.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/seq_fault.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/seq_fault.c Fri Nov 17 04:12:18 2006
@@ -247,7 +247,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/seq_offer.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/seq_offer.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/seq_offer.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/seq_offer.c Fri Nov 17 04:12:18 2006
@@ -279,7 +279,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/sequence.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/sequence.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/sequence.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/sequence.c Fri Nov 17 04:12:18 2006
@@ -318,7 +318,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/terminate_seq.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/terminate_seq.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/terminate_seq.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/terminate_seq.c Fri Nov 17 04:12:18 2006
@@ -264,7 +264,7 @@
     {
         return AXIS2_TRUE;
     }
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }

Modified: webservices/sandesha/trunk/c/src/wsrm/terminate_seq_res.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/wsrm/terminate_seq_res.c?view=diff&rev=476117&r1=476116&r2=476117
==============================================================================
--- webservices/sandesha/trunk/c/src/wsrm/terminate_seq_res.c (original)
+++ webservices/sandesha/trunk/c/src/wsrm/terminate_seq_res.c Fri Nov 17 04:12:18 2006
@@ -271,7 +271,7 @@
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     
     terminate_seq_res_impl = SANDESHA2_INTF_TO_IMPL(terminate_seq_res);
-    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2005_10_NS_URI))
+    if(0 == AXIS2_STRCMP(namespace, SANDESHA2_SPEC_2006_08_NS_URI))
     {
         return AXIS2_TRUE;
     }



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