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