You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by na...@apache.org on 2005/12/23 02:58:32 UTC
svn commit: r358681 - in /webservices/axis2/trunk/c: include/
modules/xml/soap/src/
Author: nandika
Date: Thu Dec 22 17:58:13 2005
New Revision: 358681
URL: http://svn.apache.org/viewcvs?rev=358681&view=rev
Log:
soap_fault added
Added:
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault.c
Modified:
webservices/axis2/trunk/c/include/axis2_om_element.h
webservices/axis2/trunk/c/include/axis2_soap_fault.h
webservices/axis2/trunk/c/include/axis2_soap_fault_code.h
webservices/axis2/trunk/c/include/axis2_soap_fault_detail.h
webservices/axis2/trunk/c/include/axis2_soap_fault_node.h
webservices/axis2/trunk/c/include/axis2_soap_fault_reason.h
webservices/axis2/trunk/c/include/axis2_soap_fault_role.h
webservices/axis2/trunk/c/include/axis2_soap_header_block.h
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_code.c
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_detail.c
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_node.c
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_reason.c
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_role.c
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_sub_code.c
webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_text.c
Modified: webservices/axis2/trunk/c/include/axis2_om_element.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_om_element.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_om_element.h (original)
+++ webservices/axis2/trunk/c/include/axis2_om_element.h Thu Dec 22 17:58:13 2005
@@ -172,7 +172,7 @@
/**
- * returns the localname of this element
+ * returns the localname of this element
* @param om_element om_element struct
* @param env environment struct
* @returns localname of element, returns NULL on error.
@@ -285,7 +285,7 @@
/**
* Sets the text of the given element.
*caution - This method will wipe out all the text elements (and hence any
- * moxed content) before setting the text
+ * mixed content) before setting the text
*/
axis2_status_t (AXIS2_CALL *set_text)(axis2_om_element_t *om_element,
axis2_env_t **env,
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault.h Thu Dec 22 17:58:13 2005
@@ -87,51 +87,72 @@
axis2_soap_fault_code_t *code);
axis2_soap_fault_code_t * (AXIS2_CALL *get_code)
- (axis2_soap_fault_t *fault,
- axis2_env_t **env);
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
- axis2_status_t (AXIS2_CALL *set_reason)(axis2_soap_fault_t *fault,
- axis2_env_t **env,
- axis2_soap_fault_reason_t *reason);
+ axis2_status_t (AXIS2_CALL *set_reason)
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_reason_t *reason);
axis2_soap_fault_reason_t* (AXIS2_CALL *get_reason)
- (axis2_soap_fault_t *fault,
- axis2_env_t **env);
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
axis2_status_t (AXIS2_CALL *set_node)(axis2_soap_fault_t *fault,
axis2_env_t **env,
axis2_soap_fault_node_t *node);
axis2_soap_fault_node_t* (AXIS2_CALL *get_node)
- (axis2_soap_fault_t *fault,
- axis2_env_t **env);
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
axis2_status_t (AXIS2_CALL *set_role)(axis2_soap_fault_t *fault,
axis2_env_t **env,
axis2_soap_fault_role_t *role);
axis2_soap_fault_role_t* (AXIS2_CALL *get_role)
- (axis2_soap_fault_t *fault,
- axis2_env_t **env);
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
- axis2_status_t (AXIS2_CALL *set_detail)(axis2_soap_fault_t *fault,
+ axis2_status_t (AXIS2_CALL *set_detail)
+ (axis2_soap_fault_t *fault,
axis2_env_t **env,
axis2_soap_fault_detail_t *detail);
axis2_soap_fault_detail_t* (AXIS2_CALL *get_detail)
- (axis2_soap_fault_t *fault,
- axis2_env_t **env);
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+ axis2_char_t * (AXIS2_CALL *get_exception)
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+ axis2_status_t (AXIS2_CALL *set_exception)
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_char_t *exception);
/**
* This is only intended to be used by the builder,
* do not use this function in other places
*/
- axis2_status_t (AXIS2_CALL *set_base_node)(axis2_soap_fault_t *fault,
- axis2_env_t **env,
- axis2_om_node_t *node);
+ axis2_status_t (AXIS2_CALL *set_base_node)
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_om_node_t *node);
- axis2_om_node_t* (AXIS2_CALL *get_base_node)(axis2_soap_fault_t *fault,
- axis2_env_t **env);
+ axis2_om_node_t* (AXIS2_CALL *get_base_node)
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+ axis2_status_t (AXIS2_CALL *set_soap_version)
+ (axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ int soap_version);
+
+ int (AXIS2_CALL *get_soap_version)(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
};
@@ -150,19 +171,17 @@
* creates a soap struct
* @param env Environment. MUST NOT be NULL
*/
- AXIS2_DECLARE(axis2_soap_fault_t *)
- axis2_soap_fault_create_with_parent(axis2_env_t **env,
- axis2_soap_body_t *parent);
-
-
- AXIS2_DECLARE(axis2_soap_fault_t *)
- axis2_soap_fault_create(axis2_env_t **env);
-
-
- AXIS2_DECLARE(axis2_soap_fault_t *)
- axis2_soap_fault_create_with_error(axis2_env_t **env,
- axis2_soap_body_t *parent,
- void* exception);
+AXIS2_DECLARE(axis2_soap_fault_t *)
+axis2_soap_fault_create(axis2_env_t **env);
+
+AXIS2_DECLARE(axis2_soap_fault_t *)
+axis2_soap_fault_create_with_parent(axis2_env_t **env,
+ axis2_soap_body_t *parent);
+
+AXIS2_DECLARE(axis2_soap_fault_t *)
+axis2_soap_fault_create_with_exception(axis2_env_t **env,
+ axis2_soap_body_t *parent,
+ axis2_char_t* exception);
/******************** Macros **************************************************/
@@ -204,10 +223,21 @@
((fault)->ops->get_node(fault, env))
#define AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env) \
- ((fault)->ops->get_base_node(fault, env))
-
+ ((fault)->ops->get_base_node(fault, env))
+
+#define AXIS2_SOAP_FAULT_GET_SOAP_VERSION(fault, env) \
+ ((fault)->ops->get_soap_version(fault, env))
+
+#define AXIS2_SOAP_FAULT_SET_SOAP_VERSION(fault, env) \
+ ((fault)->ops->set_soap_version(fault, env))
+
+#define AXIS2_SOAP_FAULT_GET_EXCEPTION(fault, env) \
+ ((fault)->ops->get_exception(fault, env))
+
+#define AXIS2_SOAP_FAULT_SET_EXCEPTION(fault, env, exception) \
+ ((fault)->ops->set_exception(fault, env, exception))
+
/** @} */
-
#ifdef __cplusplus
}
#endif
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault_code.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault_code.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault_code.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault_code.h Thu Dec 22 17:58:13 2005
@@ -108,6 +108,10 @@
* creates a soap struct
* @param env Environment. MUST NOT be NULL
*/
+
+AXIS2_DECLARE(axis2_soap_fault_code_t *)
+axis2_soap_fault_code_create(axis2_env_t **env);
+
AXIS2_DECLARE(axis2_soap_fault_code_t *)
axis2_soap_fault_code_create_with_parent(axis2_env_t **env,
axis2_soap_fault_t *fault,
@@ -115,7 +119,12 @@
AXIS2_DECLARE(axis2_soap_fault_code_t *)
-axis2_soap_fault_code_create(axis2_env_t **env);
+axis2_soap11_fault_code_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
+
+AXIS2_DECLARE(axis2_soap_fault_code_t *)
+axis2_soap12_fault_code_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
/******************** Macros **************************************************/
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault_detail.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault_detail.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault_detail.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault_detail.h Thu Dec 22 17:58:13 2005
@@ -110,7 +110,15 @@
axis2_soap_fault_detail_create_with_parent
(axis2_env_t **env,
axis2_soap_fault_t *fault,
- axis2_bool_t *extract_ns_from_parent);
+ axis2_bool_t extract_ns_from_parent);
+
+AXIS2_DECLARE(axis2_soap_fault_detail_t *)
+axis2_soap11_fault_detail_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
+
+AXIS2_DECLARE(axis2_soap_fault_detail_t *)
+axis2_soap12_fault_detail_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
/******************** Macros **************************************************/
@@ -128,7 +136,7 @@
#define AXIS2_SOAP_FAULT_DETAIL_GET_BASE_NODE(fault_detail, env) \
((fault_detail)->ops->get_base_node(fault_detail, env))
-#define AXIS2_SOAP_FAULT_DETAIL_SET_BASE(fault_detail, env, node) \
+#define AXIS2_SOAP_FAULT_DETAIL_SET_BASE_NODE(fault_detail, env, node) \
((fault_detail)->ops->set_base_node(fault_detail, env, node))
#define AXIS2_SOAP_FAULT_DETAIL_GET_SOAP_VERSION(fault_detail, env) \
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault_node.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault_node.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault_node.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault_node.h Thu Dec 22 17:58:13 2005
@@ -124,7 +124,7 @@
#define AXIS2_SOAP_FAULT_NODE_GET_BASE_NODE(fault_node, env) \
((fault_node)->ops->get_base_node(fault_node, env))
-#define AXIS2_SOAP_FAULT_NODE_SET_BASE(fault_node, env, node) \
+#define AXIS2_SOAP_FAULT_NODE_SET_BASE_NODE(fault_node, env, node) \
((fault_node)->ops->set_base_node(fault_node, env, node))
#define AXIS2_SOAP_FAULT_NODE_SET_SOAP_VERSION(fault_node, env, soap_version) \
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault_reason.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault_reason.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault_reason.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault_reason.h Thu Dec 22 17:58:13 2005
@@ -100,13 +100,20 @@
* @param env Environment. MUST NOT be NULL
*/
AXIS2_DECLARE(axis2_soap_fault_reason_t *)
+axis2_soap_fault_reason_create(axis2_env_t **env);
+
+AXIS2_DECLARE(axis2_soap_fault_reason_t *)
axis2_soap_fault_reason_create_with_parent(axis2_env_t **env,
axis2_soap_fault_t *fault,
axis2_bool_t extact_ns_from_parent);
+AXIS2_DECLARE(axis2_soap_fault_reason_t *)
+axis2_soap11_fault_reason_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
AXIS2_DECLARE(axis2_soap_fault_reason_t *)
-axis2_soap_fault_reason_create(axis2_env_t **env);
+axis2_soap12_fault_reason_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
/******************** Macros **************************************************/
@@ -124,7 +131,7 @@
#define AXIS2_SOAP_FAULT_REASON_GET_BASE_NODE(fault_reason, env) \
((fault_reason)->ops->get_base_node(fault_reason, env))
-#define AXIS2_SOAP_FAULT_REASON_SET_BASE(fault_reason, env, node) \
+#define AXIS2_SOAP_FAULT_REASON_SET_BASE_NODE(fault_reason, env, node) \
((fault_reason)->ops->set_base_node(fault_reason, env, node))
#define AXIS2_SOAP_FAULT_REASON_GET_SOAP_VERSION(fault_reason, env) \
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault_role.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault_role.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault_role.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault_role.h Thu Dec 22 17:58:13 2005
@@ -101,13 +101,21 @@
* @param env Environment. MUST NOT be NULL
*/
AXIS2_DECLARE(axis2_soap_fault_role_t *)
+axis2_soap_fault_role_create(axis2_env_t **env);
+
+AXIS2_DECLARE(axis2_soap_fault_role_t *)
axis2_soap_fault_role_create_with_parent(axis2_env_t **env,
axis2_soap_fault_t *fault,
axis2_bool_t extract_ns_from_parent);
AXIS2_DECLARE(axis2_soap_fault_role_t *)
-axis2_soap_fault_role_create(axis2_env_t **env);
+axis2_soap11_fault_role_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
+
+AXIS2_DECLARE(axis2_soap_fault_role_t *)
+axis2_soap12_fault_role_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault);
/******************** Macros **************************************************/
@@ -125,7 +133,7 @@
#define AXIS2_SOAP_FAULT_ROLE_GET_BASE_NODE(fault_role, env) \
((fault_role)->ops->get_base_node(fault_role, env))
-#define AXIS2_SOAP_FAULT_ROLE_SET_BASE(fault_role, env, node) \
+#define AXIS2_SOAP_FAULT_ROLE_SET_BASE_NODE(fault_role, env, node) \
((fault_role)->ops->set_base_node(fault_role, env, node))
#define AXIS2_SOAP_FAULT_ROLE_GET_SOAP_VRESION(fault_role, env) \
Modified: webservices/axis2/trunk/c/include/axis2_soap_header_block.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_header_block.h?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_header_block.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_header_block.h Thu Dec 22 17:58:13 2005
@@ -102,8 +102,15 @@
axis2_om_node_t* (AXIS2_CALL *get_base_node)
(axis2_soap_header_block_t *header_block,
- axis2_env_t **env);
-
+ axis2_env_t **env);
+
+ int (AXIS2_CALL *get_soap_version)
+ (axis2_soap_header_block_t *header_block,
+ axis2_env_t **env);
+ int (AXIS2_CALL *set_soap_version)
+ (axis2_soap_header_block_t *header_block,
+ axis2_env_t **env,
+ int soap_version);
};
/**
@@ -162,8 +169,13 @@
((header_block)->ops->set_base_node(header_block, env, node))
#define AXIS2_SOAP_HEADER_BLOCK_GET_BASE_NODE(header_block, env) \
- ((header_block)->ops->get_base_node(header_block, env))
-
+ ((header_block)->ops->get_base_node(header_block, env))
+
+#define AXIS2_SOAP_HEADER_BLOCK_SET_SOAP_VERSION(header_block, env, version) \
+ ((header_block)->ops->set_soap_version(header_block, env, version))
+
+#define AXIS2_SOAP_HEADER_BLOCK_GET_SOAP_VERSION(header_block, env) \
+ ((header_block)->ops->get_soap_version(header_block, env))
/** @} */
#ifdef __cplusplus
Added: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault.c?rev=358681&view=auto
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault.c (added)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault.c Thu Dec 22 17:58:13 2005
@@ -0,0 +1,745 @@
+/*
+ * 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 <axis2_soap_fault.h>
+ #include <axis2_soap.h>
+ #include <axis2_soap_body.h>
+ #include <axis2_om_node.h>
+ #include <axis2_om_element.h>
+ #include <axis2_soap_fault_code.h>
+ #include <axis2_soap_fault_detail.h>
+ #include <axis2_soap_fault_reason.h>
+ #include <axis2_soap_fault_role.h>
+ #include <axis2_soap_fault_node.h>
+ #include <axis2_soap_utils.h>
+
+/**************** impl struct ************************************************/
+
+typedef struct axis2_soap_fault_impl_t
+{
+ axis2_soap_fault_t soap_fault;
+
+ axis2_om_node_t *om_ele_node;
+
+ axis2_om_element_t *om_ele;
+
+ axis2_soap_body_t *parent;
+
+ axis2_soap_fault_code_t *fcode;
+
+ axis2_soap_fault_reason_t *freason;
+
+ axis2_soap_fault_node_t *fnode;
+
+ axis2_soap_fault_role_t *frole;
+
+ axis2_soap_fault_detail_t *fdetail;
+
+ axis2_char_t *exception;
+
+ int soap_version;
+
+}axis2_soap_fault_impl_t;
+
+/************************* Macro **********************************************/
+
+#define AXIS2_INTF_TO_IMPL(fault) ((axis2_soap_fault_impl_t*)fault)
+
+/************************ function prototype **********************************/
+
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_free(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_code(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_code_t *code);
+
+axis2_soap_fault_code_t * AXIS2_CALL
+axis2_soap_fault_get_code(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_reason(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_reason_t *reason);
+
+axis2_soap_fault_reason_t* AXIS2_CALL
+axis2_soap_fault_get_reason(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_node_t *node);
+
+axis2_soap_fault_node_t* AXIS2_CALL
+axis2_soap_fault_get_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_role(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_role_t *role);
+
+axis2_soap_fault_role_t* AXIS2_CALL
+axis2_soap_fault_get_role(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_detail(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_detail_t *detail);
+
+axis2_soap_fault_detail_t* AXIS2_CALL
+axis2_soap_fault_get_detail(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_base_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_om_node_t *node);
+
+axis2_om_node_t* AXIS2_CALL
+axis2_soap_fault_get_base_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_soap_version(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ int soap_version);
+
+int AXIS2_CALL
+axis2_soap_fault_get_soap_version(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_char_t * AXIS2_CALL
+axis2_soap_fault_get_exception(axis2_soap_fault_t *fault,
+ axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_exception(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_char_t *exception);
+
+/***************** function implementations ***********************************/
+
+AXIS2_DECLARE(axis2_soap_fault_t *)
+axis2_soap_fault_create(axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ AXIS2_ENV_CHECK(env, NULL);
+ fault_impl = (axis2_soap_fault_impl_t*)AXIS2_MALLOC(
+ (*env)->allocator,
+ sizeof(axis2_soap_fault_impl_t));
+ if(!fault_impl)
+ {
+ AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+ return NULL;
+ }
+ fault_impl->exception = NULL;
+ fault_impl->fcode = NULL;
+ fault_impl->fdetail = NULL;
+ fault_impl->fnode = NULL;
+ fault_impl->freason = NULL;
+ fault_impl->frole = NULL;
+ fault_impl->om_ele = NULL;
+ fault_impl->om_ele_node = NULL;
+ fault_impl->parent = NULL;
+ fault_impl->soap_fault.ops = NULL;
+ fault_impl->soap_version = AXIS2_SOAP_VERSION_NOT_SET;
+
+ fault_impl->soap_fault.ops = (axis2_soap_fault_ops_t*)AXIS2_MALLOC(
+ (*env)->allocator,
+ sizeof(axis2_soap_fault_ops_t));
+
+ if(!(fault_impl->soap_fault.ops))
+ {
+ AXIS2_FREE((*env)->allocator, fault_impl);
+ AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+ return NULL;
+ }
+
+ fault_impl->soap_fault.ops->get_soap_version =
+ axis2_soap_fault_get_soap_version;
+ fault_impl->soap_fault.ops->set_soap_version =
+ axis2_soap_fault_set_soap_version;
+ fault_impl->soap_fault.ops->free_fn =
+ axis2_soap_fault_free;
+ fault_impl->soap_fault.ops->get_base_node =
+ axis2_soap_fault_get_base_node;
+ fault_impl->soap_fault.ops->set_base_node =
+ axis2_soap_fault_set_base_node;
+ fault_impl->soap_fault.ops->set_code =
+ axis2_soap_fault_set_code;
+ fault_impl->soap_fault.ops->get_code =
+ axis2_soap_fault_get_code;
+ fault_impl->soap_fault.ops->set_reason =
+ axis2_soap_fault_set_reason;
+ fault_impl->soap_fault.ops->get_reason =
+ axis2_soap_fault_get_reason;
+ fault_impl->soap_fault.ops->set_role =
+ axis2_soap_fault_set_role;
+ fault_impl->soap_fault.ops->get_role =
+ axis2_soap_fault_get_role;
+ fault_impl->soap_fault.ops->get_node =
+ axis2_soap_fault_get_node;
+ fault_impl->soap_fault.ops->set_node =
+ axis2_soap_fault_set_node;
+ fault_impl->soap_fault.ops->get_detail =
+ axis2_soap_fault_get_detail;
+ fault_impl->soap_fault.ops->set_detail =
+ axis2_soap_fault_set_detail;
+ fault_impl->soap_fault.ops->get_exception =
+ axis2_soap_fault_get_exception;
+ fault_impl->soap_fault.ops->set_exception =
+ axis2_soap_fault_set_exception;
+
+ return &(fault_impl->soap_fault);
+}
+
+
+AXIS2_DECLARE(axis2_soap_fault_t *)
+axis2_soap_fault_create_with_parent(axis2_env_t **env,
+ axis2_soap_body_t *body)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_soap_fault_t *fault = NULL;
+ axis2_om_element_t *this_ele = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_om_node_t *parent_node = NULL;
+ axis2_om_element_t *parent_ele = NULL;
+ axis2_om_namespace_t *parent_ns = NULL;
+
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, body, NULL);
+
+ fault = axis2_soap_fault_create(env);
+ if(!fault)
+ return NULL;
+
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+
+ fault_impl->parent = body;
+
+ parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
+
+ parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
+ parent_node, env);
+
+ parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
+
+ this_ele = axis2_om_element_create(env,
+ parent_node,
+ AXIS2_SOAP_FAULT_LOCAL_NAME,
+ parent_ns,
+ &this_node);
+ fault_impl->om_ele = this_ele;
+ fault_impl->om_ele_node = this_node;
+ return &(fault_impl->soap_fault);
+
+}
+
+
+AXIS2_DECLARE(axis2_soap_fault_t *)
+axis2_soap_fault_create_with_exception(axis2_env_t **env,
+ axis2_soap_body_t *body,
+ axis2_char_t* exception)
+{
+ axis2_soap_fault_t *fault = NULL;
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, body, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, exception, NULL);
+ fault = axis2_soap_fault_create_with_parent(env, body);
+ if(!fault)
+ return NULL;
+ axis2_soap_fault_set_exception(fault, env, exception);
+ return fault;
+}
+
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_free(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+
+ if(fault_impl->fcode)
+ {
+ AXIS2_SOAP_FAULT_CODE_FREE(fault_impl->fcode, env);
+ fault_impl->fcode = NULL;
+ }
+ if(fault_impl->fdetail)
+ {
+ AXIS2_SOAP_FAULT_DETAIL_FREE(fault_impl->fdetail, env);
+ fault_impl->fdetail = NULL;
+ }
+ if(fault_impl->fnode)
+ {
+ AXIS2_SOAP_FAULT_NODE_FREE(fault_impl->fnode, env);
+ fault_impl->fnode = NULL;
+ }
+ if(fault_impl->freason)
+ {
+ AXIS2_SOAP_FAULT_REASON_FREE(fault_impl->freason, env);
+ fault_impl->freason = NULL;
+ }
+ if(fault_impl->frole)
+ {
+ AXIS2_SOAP_FAULT_ROLE_FREE(fault_impl->frole, env);
+ fault_impl->frole = NULL;
+ }
+ if(fault->ops)
+ {
+ AXIS2_FREE((*env)->allocator, fault->ops);
+ fault->ops = NULL;
+ }
+ AXIS2_FREE((*env)->allocator, fault_impl);
+ fault_impl = NULL;
+ return AXIS2_SUCCESS;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_code(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_code_t *code)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *code_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_om_node_t *my_node = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, code, AXIS2_FAILURE);
+
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ /* axis2_soap_fault_get_code(fault_code, env); */
+ if(fault_impl->fcode)
+ {
+ my_node = AXIS2_SOAP_FAULT_CODE_GET_BASE_NODE(
+ fault_impl->fcode, env);
+ AXIS2_SOAP_FAULT_CODE_FREE(fault_impl->fcode, env);
+ fault_impl->fcode = NULL;
+ }
+
+ code_node = AXIS2_SOAP_FAULT_CODE_GET_BASE_NODE(
+ code, env);
+
+ axis2_soap_utils_set_new_node(env,
+ fault_impl->om_ele_node,
+ &my_node,
+ code_node);
+
+ fault_impl->fcode = code;
+ return AXIS2_SUCCESS;
+}
+
+axis2_soap_fault_code_t * AXIS2_CALL
+axis2_soap_fault_get_code(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *code_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_soap_fault_code_t* code = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ this_node = fault_impl->om_ele_node;
+
+ if(!(fault_impl->fcode))
+ {
+ code_node = axis2_soap_utils_get_child_with_name(env,
+ this_node,
+ AXIS2_SOAP12_SOAP_FAULT_CODE_LOCAL_NAME);
+
+ code = axis2_soap_fault_code_create(env);
+ AXIS2_SOAP_FAULT_CODE_SET_BASE_NODE(code , env, code_node);
+ fault_impl->fcode = code;
+ }
+ return fault_impl->fcode;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_reason(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_reason_t *reason)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *reason_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_om_node_t *my_node = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, reason, AXIS2_FAILURE);
+
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ /* axis2_soap_fault_get_reason(fault_reason, env); */
+ if(fault_impl->freason)
+ {
+ my_node = AXIS2_SOAP_FAULT_REASON_GET_BASE_NODE(
+ fault_impl->freason, env);
+ AXIS2_SOAP_FAULT_REASON_FREE(fault_impl->freason, env);
+ fault_impl->freason = NULL;
+ }
+
+ reason_node = AXIS2_SOAP_FAULT_REASON_GET_BASE_NODE(
+ reason, env);
+
+ axis2_soap_utils_set_new_node(env,
+ fault_impl->om_ele_node,
+ &my_node,
+ reason_node);
+
+ fault_impl->freason = reason;
+ return AXIS2_SUCCESS;
+
+}
+
+axis2_soap_fault_reason_t* AXIS2_CALL
+axis2_soap_fault_get_reason(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *reason_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_soap_fault_reason_t* reason = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ this_node = fault_impl->om_ele_node;
+
+ if(!(fault_impl->freason))
+ {
+ reason_node = axis2_soap_utils_get_child_with_name(env,
+ this_node,
+ AXIS2_SOAP12_SOAP_FAULT_REASON_LOCAL_NAME);
+
+ reason = axis2_soap_fault_reason_create(env);
+ AXIS2_SOAP_FAULT_REASON_SET_BASE_NODE(reason , env, reason_node);
+ fault_impl->freason = reason;
+ }
+ return fault_impl->freason;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_node_t *node)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *node_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_om_node_t *my_node = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, node, AXIS2_FAILURE);
+
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ /* axis2_soap_fault_get_node(fault_node, env); */
+ if(fault_impl->fnode)
+ {
+ my_node = AXIS2_SOAP_FAULT_NODE_GET_BASE_NODE(
+ fault_impl->fnode, env);
+ AXIS2_SOAP_FAULT_NODE_FREE(fault_impl->fnode, env);
+ fault_impl->fnode = NULL;
+ }
+
+ node_node = AXIS2_SOAP_FAULT_NODE_GET_BASE_NODE(
+ node, env);
+
+ axis2_soap_utils_set_new_node(env,
+ fault_impl->om_ele_node,
+ &my_node,
+ node_node);
+
+ fault_impl->fnode = node;
+ return AXIS2_SUCCESS;
+
+}
+
+axis2_soap_fault_node_t* AXIS2_CALL
+axis2_soap_fault_get_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *node_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_soap_fault_node_t* node = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ this_node = fault_impl->om_ele_node;
+
+ if(!(fault_impl->fnode))
+ {
+ node_node = axis2_soap_utils_get_child_with_name(env,
+ this_node,
+ AXIS2_SOAP12_SOAP_FAULT_NODE_LOCAL_NAME);
+
+ node = axis2_soap_fault_node_create(env);
+ AXIS2_SOAP_FAULT_NODE_SET_BASE_NODE(node , env, node_node);
+ fault_impl->fnode = node;
+ }
+ return fault_impl->fnode;
+
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_role(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_role_t *role)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *role_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_om_node_t *my_node = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, role, AXIS2_FAILURE);
+
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ /* axis2_soap_fault_get_role(fault_role, env); */
+ if(fault_impl->frole)
+ {
+ my_node = AXIS2_SOAP_FAULT_ROLE_GET_BASE_NODE(
+ fault_impl->frole, env);
+ AXIS2_SOAP_FAULT_ROLE_FREE(fault_impl->frole, env);
+ fault_impl->frole = NULL;
+ }
+
+ role_node = AXIS2_SOAP_FAULT_ROLE_GET_BASE_NODE(
+ role, env);
+
+ axis2_soap_utils_set_new_node(env,
+ fault_impl->om_ele_node,
+ &my_node,
+ role_node);
+
+ fault_impl->frole = role;
+ return AXIS2_SUCCESS;
+
+}
+
+axis2_soap_fault_role_t* AXIS2_CALL
+axis2_soap_fault_get_role(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *role_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_soap_fault_role_t* role = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ this_node = fault_impl->om_ele_node;
+
+ if(!(fault_impl->frole))
+ {
+ role_node = axis2_soap_utils_get_child_with_name(env,
+ this_node,
+ AXIS2_SOAP12_SOAP_FAULT_ROLE_LOCAL_NAME);
+
+ role = axis2_soap_fault_role_create(env);
+ AXIS2_SOAP_FAULT_ROLE_SET_BASE_NODE(role , env, role_node);
+ fault_impl->frole = role;
+ }
+ return fault_impl->frole;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_detail(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_soap_fault_detail_t *detail)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *detail_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_om_node_t *my_node = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, detail, AXIS2_FAILURE);
+
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ /* axis2_soap_fault_get_detail(fault_detail, env); */
+ if(fault_impl->fdetail)
+ {
+ my_node = AXIS2_SOAP_FAULT_DETAIL_GET_BASE_NODE(
+ fault_impl->fdetail, env);
+ AXIS2_SOAP_FAULT_DETAIL_FREE(fault_impl->fdetail, env);
+ fault_impl->fdetail = NULL;
+ }
+
+ detail_node = AXIS2_SOAP_FAULT_DETAIL_GET_BASE_NODE(
+ detail, env);
+
+ axis2_soap_utils_set_new_node(env,
+ fault_impl->om_ele_node,
+ &my_node,
+ detail_node);
+
+ fault_impl->fdetail = detail;
+ return AXIS2_SUCCESS;
+
+
+}
+
+axis2_soap_fault_detail_t* AXIS2_CALL
+axis2_soap_fault_get_detail(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_om_node_t *detail_node = NULL;
+ axis2_om_node_t *this_node = NULL;
+ axis2_soap_fault_detail_t* detail = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ this_node = fault_impl->om_ele_node;
+
+ if(!(fault_impl->fdetail))
+ {
+ detail_node = axis2_soap_utils_get_child_with_name(env,
+ this_node,
+ AXIS2_SOAP12_SOAP_FAULT_DETAIL_LOCAL_NAME);
+
+ detail = axis2_soap_fault_detail_create(env);
+ AXIS2_SOAP_FAULT_DETAIL_SET_BASE_NODE(detail , env, detail_node);
+ fault_impl->fdetail = detail;
+ }
+ return fault_impl->fdetail;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_base_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_om_node_t *node)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, node, AXIS2_FAILURE);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+
+ if(AXIS2_OM_NODE_GET_NODE_TYPE(node, env) != AXIS2_OM_ELEMENT)
+ {
+ AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_INVALID_BASE_TYPE, AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
+ fault_impl->om_ele_node = node;
+ fault_impl->om_ele = (axis2_om_element_t *)
+ AXIS2_OM_NODE_GET_DATA_ELEMENT(node, env);
+ return AXIS2_SUCCESS;
+
+}
+
+axis2_om_node_t* AXIS2_CALL
+axis2_soap_fault_get_base_node(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ return AXIS2_INTF_TO_IMPL(fault)->om_ele_node;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_soap_version(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ int soap_version)
+{
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
+ AXIS2_INTF_TO_IMPL(fault)->soap_version = soap_version;
+ return AXIS2_SUCCESS;
+
+}
+
+int AXIS2_CALL
+axis2_soap_fault_get_soap_version(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ return AXIS2_INTF_TO_IMPL(fault)->soap_version;
+}
+
+axis2_char_t * AXIS2_CALL
+axis2_soap_fault_get_exception(axis2_soap_fault_t *fault,
+ axis2_env_t **env)
+{
+ axis2_soap_fault_detail_t *detail = NULL;
+ axis2_om_node_t *detail_node = NULL;
+ axis2_om_element_t *detail_ele = NULL;
+ axis2_om_node_t *exception_node = NULL;
+ axis2_om_element_t *exception_ele = NULL;
+ axis2_qname_t *qn = NULL;
+ axis2_char_t *excep = NULL;
+
+ AXIS2_FUNC_PARAM_CHECK(fault, env, NULL);
+ detail = axis2_soap_fault_get_detail(fault, env);
+ if(!detail)
+ return NULL;
+ detail_node = AXIS2_SOAP_FAULT_DETAIL_GET_BASE_NODE(detail, env);
+ detail_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
+ detail_node, env);
+ qn = axis2_qname_create(env,
+ AXIS2_SOAP_FAULT_DETAIL_EXCEPTION_ENTRY, NULL, NULL);
+
+ exception_ele = AXIS2_OM_ELEMENT_GET_FIRST_CHILD_WITH_QNAME(
+ detail_ele, env,
+ qn, detail_node, &exception_node);
+ AXIS2_QNAME_FREE(qn, env);
+ if(exception_ele &&
+ (excep = AXIS2_OM_ELEMENT_GET_TEXT(exception_ele, env, exception_node)))
+ {
+ return excep;
+ }
+ return NULL;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_set_exception(axis2_soap_fault_t *fault,
+ axis2_env_t **env,
+ axis2_char_t *exception)
+{
+ axis2_soap_fault_impl_t *fault_impl = NULL;
+ axis2_soap_fault_detail_t *detail = NULL;
+ axis2_om_node_t *fault_detail_entry_node = NULL;
+ axis2_om_element_t *fault_detail_ele = NULL;
+ AXIS2_FUNC_PARAM_CHECK(fault, env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, exception, AXIS2_FAILURE);
+ fault_impl = AXIS2_INTF_TO_IMPL(fault);
+ detail = axis2_soap_fault_get_detail(fault, env);
+ if(!detail)
+ {
+ if(fault_impl->soap_version == AXIS2_SOAP11)
+ detail = axis2_soap11_fault_detail_create(env, fault);
+ if(fault_impl->soap_version == AXIS2_SOAP12)
+ detail = axis2_soap12_fault_detail_create(env, fault);
+ }
+ axis2_soap_fault_set_detail(fault, env, detail);
+
+ fault_detail_ele = axis2_om_element_create(env, NULL,
+ AXIS2_SOAP_FAULT_DETAIL_EXCEPTION_ENTRY,
+ NULL, &fault_detail_entry_node);
+
+ AXIS2_OM_ELEMENT_SET_TEXT(fault_detail_ele,
+ env, exception, fault_detail_entry_node);
+
+ AXIS2_SOAP_FAULT_DETAIL_ADD_DETAIL_ENTRY(detail, env, fault_detail_entry_node);
+ return AXIS2_SUCCESS;
+}
+
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_code.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_code.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_code.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_code.c Thu Dec 22 17:58:13 2005
@@ -176,7 +176,7 @@
parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
- fault_code_impl->om_ele_node, env);
+ parent_node, env);
if(extract_ns_from_parent)
{
@@ -235,6 +235,7 @@
AXIS2_PARAM_CHECK((*env)->error, fault_val, AXIS2_FAILURE);
fault_code_impl = AXIS2_INTF_TO_IMPL(fault_code);
+ /* axis2_soap_fault_code_get_value(fault_code, env); */
if(fault_code_impl->value)
{
my_node = AXIS2_SOAP_FAULT_VALUE_GET_BASE_NODE(
@@ -269,6 +270,7 @@
AXIS2_PARAM_CHECK((*env)->error, fault_subcode, AXIS2_FAILURE);
fault_code_impl = AXIS2_INTF_TO_IMPL(fault_code);
+ /* axis2_soap_fault_code_get_sub_code(fault_code, env); */
if(fault_code_impl->subcode)
{
my_node = AXIS2_SOAP_FAULT_SUB_CODE_GET_BASE_NODE(
@@ -299,7 +301,6 @@
axis2_soap_fault_sub_code_t* subcode = NULL;
AXIS2_FUNC_PARAM_CHECK(fault_code, env, NULL);
- AXIS2_PARAM_CHECK((*env)->error, fault_code, NULL);
fault_code_impl = AXIS2_INTF_TO_IMPL(fault_code);
this_node = fault_code_impl->om_ele_node;
@@ -395,3 +396,26 @@
AXIS2_FUNC_PARAM_CHECK(fault_code, env, AXIS2_FAILURE);
return AXIS2_INTF_TO_IMPL(fault_code)->soap_version;
}
+/*********************** soap11 create function *******************************/
+
+AXIS2_DECLARE(axis2_soap_fault_code_t *)
+axis2_soap11_fault_code_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_code_create_with_parent(env, fault, AXIS2_FALSE);
+
+}
+
+/********************** soap12 create function ********************************/
+AXIS2_DECLARE(axis2_soap_fault_code_t *)
+axis2_soap12_fault_code_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_code_create_with_parent(env, fault, AXIS2_TRUE);
+
+}
+
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_detail.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_detail.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_detail.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_detail.c Thu Dec 22 17:58:13 2005
@@ -141,7 +141,7 @@
axis2_soap_fault_detail_create_with_parent
(axis2_env_t **env,
axis2_soap_fault_t *fault,
- axis2_bool_t *extract_ns_from_parent)
+ axis2_bool_t extract_ns_from_parent)
{
axis2_soap_fault_detail_impl_t *fault_detail_impl = NULL;
axis2_soap_fault_detail_t *fault_detail = NULL;
@@ -165,7 +165,7 @@
parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
- fault_detail_impl->om_ele_node, env);
+ parent_node, env);
if(extract_ns_from_parent)
{
@@ -283,4 +283,25 @@
AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
AXIS2_INTF_TO_IMPL(fault_detail)->soap_version = soap_version;
return AXIS2_SUCCESS;
-}
\ No newline at end of file
+}
+/********************** soap11 ************************************************/
+
+AXIS2_DECLARE(axis2_soap_fault_detail_t *)
+axis2_soap11_fault_detail_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_detail_create_with_parent(env, fault, AXIS2_FALSE);
+}
+/************************* soap12 *********************************************/
+
+AXIS2_DECLARE(axis2_soap_fault_detail_t *)
+axis2_soap12_fault_detail_create(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_detail_create_with_parent(env, fault, AXIS2_TRUE);
+
+}
\ No newline at end of file
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_node.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_node.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_node.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_node.c Thu Dec 22 17:58:13 2005
@@ -156,7 +156,7 @@
parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
- fault_node_impl->om_ele_node, env);
+ parent_node, env);
parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
this_ele = axis2_om_element_create(env,
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_reason.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_reason.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_reason.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_reason.c Thu Dec 22 17:58:13 2005
@@ -167,7 +167,7 @@
parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
- fault_reason_impl->om_ele_node, env);
+ parent_node, env);
if(extract_ns_from_parent)
{
@@ -223,6 +223,7 @@
AXIS2_PARAM_CHECK((*env)->error, soap_text, AXIS2_FAILURE);
fault_reason_impl = AXIS2_INTF_TO_IMPL(fault_reason);
+
if(fault_reason_impl->text)
{
my_node = AXIS2_SOAP_FAULT_TEXT_GET_BASE_NODE(
@@ -329,3 +330,22 @@
return AXIS2_SUCCESS;
}
+/************************** soap11 ********************************************/
+AXIS2_DECLARE(axis2_soap_fault_reason_t *)
+axis2_soap11_fault_reason_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_reason_create_with_parent(env, fault, AXIS2_FALSE);
+}
+
+AXIS2_DECLARE(axis2_soap_fault_reason_t *)
+axis2_soap12_fault_reason_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_reason_create_with_parent(env, fault, AXIS2_TRUE);
+
+}
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_role.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_role.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_role.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_role.c Thu Dec 22 17:58:13 2005
@@ -162,7 +162,7 @@
parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
- fault_role_impl->om_ele_node, env);
+ parent_node, env);
if(extract_ns_from_parent)
{
@@ -283,3 +283,25 @@
AXIS2_INTF_TO_IMPL(fault_role)->soap_version = soap_version;
return AXIS2_SUCCESS;
}
+
+/********************* soap11 *************************************************/
+AXIS2_DECLARE(axis2_soap_fault_role_t *)
+axis2_soap11_fault_role_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_role_create_with_parent(env, fault, AXIS2_FALSE);
+}
+
+/****************** soap12 ****************************************************/
+AXIS2_DECLARE(axis2_soap_fault_role_t *)
+axis2_soap12_fault_role_create_with_parent(axis2_env_t **env,
+ axis2_soap_fault_t *fault)
+{
+ AXIS2_ENV_CHECK(env, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, fault, NULL);
+ return axis2_soap_fault_role_create_with_parent(env, fault, AXIS2_TRUE);
+
+}
+
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_sub_code.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_sub_code.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_sub_code.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_sub_code.c Thu Dec 22 17:58:13 2005
@@ -180,7 +180,7 @@
fault_sub_code_impl->parent = fault_code;
parent_node = AXIS2_SOAP_FAULT_CODE_GET_BASE_NODE(fault_code, env);
parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
- fault_sub_code_impl->om_ele_node, env);
+ parent_node, env);
this_ele = axis2_om_element_create(env,
parent_node,
Modified: webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_text.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_text.c?rev=358681&r1=358680&r2=358681&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_text.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/src/axis2_soap_fault_text.c Thu Dec 22 17:58:13 2005
@@ -109,8 +109,8 @@
fault_text_impl->soap_version = AXIS2_SOAP_VERSION_NOT_SET;
fault_text_impl->lang_namespace = axis2_om_namespace_create(env,
- AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_NS_URI,
- AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_NS_PREFIX);
+ AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_NS_URI,
+ AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_NS_PREFIX);
if(!(fault_text_impl->lang_namespace))
return NULL;