You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by na...@apache.org on 2006/04/04 08:14:23 UTC
svn commit: r391229 - in /webservices/axis2/trunk/c:
include/axis2_soap_fault_text.h modules/xml/soap/soap_fault_text.c
Author: nandika
Date: Mon Apr 3 23:14:20 2006
New Revision: 391229
URL: http://svn.apache.org/viewcvs?rev=391229&view=rev
Log:
soap_fault_text.c set_text function added
Modified:
webservices/axis2/trunk/c/include/axis2_soap_fault_text.h
webservices/axis2/trunk/c/modules/xml/soap/soap_fault_text.c
Modified: webservices/axis2/trunk/c/include/axis2_soap_fault_text.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_soap_fault_text.h?rev=391229&r1=391228&r2=391229&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_soap_fault_text.h (original)
+++ webservices/axis2/trunk/c/include/axis2_soap_fault_text.h Mon Apr 3 23:14:20 2006
@@ -67,6 +67,13 @@
axis2_om_node_t* (AXIS2_CALL *
get_base_node)(axis2_soap_fault_text_t *fault_text,
axis2_env_t **env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_text)(axis2_soap_fault_text_t *fault_text,
+ axis2_env_t **env,
+ axis2_char_t *value,
+ axis2_char_t *lang);
+
};
/**
@@ -103,6 +110,9 @@
#define AXIS2_SOAP_FAULT_TEXT_GET_BASE_NODE(fault_text, env) \
((fault_text)->ops->get_base_node(fault_text, env))
+#define AXIS2_SOAP_FAULT_TEXT_SET_TEXT(fault_text, env, value, lang) \
+ ((fault_text)->ops->set_text(fault_text, env, value, lang))
+
/** @} */
#ifdef __cplusplus
Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_fault_text.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_text.c?rev=391229&r1=391228&r2=391229&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_text.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_text.c Mon Apr 3 23:14:20 2006
@@ -62,6 +62,13 @@
axis2_soap_fault_text_get_base_node(axis2_soap_fault_text_t *fault_text,
axis2_env_t **env);
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_text_set_text(axis2_soap_fault_text_t *fault_text,
+ axis2_env_t **env,
+ axis2_char_t *value,
+ axis2_char_t *lang);
+
+
/***************************** functions **************************************/
@@ -114,6 +121,9 @@
fault_text_impl->fault_text.ops->get_base_node =
axis2_soap_fault_text_get_base_node;
+
+ fault_text_impl->fault_text.ops->set_text =
+ axis2_soap_fault_text_set_text;
return &(fault_text_impl->fault_text);
}
@@ -214,6 +224,21 @@
AXIS2_PARAM_CHECK((*env)->error, lang, AXIS2_FAILURE);
fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);
+ if(NULL != fault_text_impl->lang_attribute)
+ {
+ axis2_char_t *attr_lang = NULL;
+ attr_lang = AXIS2_OM_ATTRIBUTE_GET_VALUE( fault_text_impl->lang_attribute, env);
+ if(NULL != attr_lang)
+ {
+ if(AXIS2_STRCMP(attr_lang, lang) == 0)
+ {
+ /** this attribute already exists */
+ return AXIS2_SUCCESS;
+ }
+ }
+ AXIS2_OM_ATTRIBUTE_SET_VALUE(fault_text_impl->lang_attribute, env, lang);
+ return AXIS2_SUCCESS;
+ }
fault_text_impl->lang_attribute = axis2_om_attribute_create(env,
AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_LOCAL_NAME,
@@ -311,3 +336,35 @@
fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);
return fault_text_impl->om_ele_node;
}
+
+axis2_status_t AXIS2_CALL
+axis2_soap_fault_text_set_text(axis2_soap_fault_text_t *fault_text,
+ axis2_env_t **env,
+ axis2_char_t *value,
+ axis2_char_t *lang)
+{
+ axis2_soap_fault_text_impl_t *text_impl = NULL;
+
+ AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+ AXIS2_PARAM_CHECK((*env)->error, value, AXIS2_FAILURE);
+
+ text_impl = AXIS2_INTF_TO_IMPL(fault_text);
+
+ if(NULL != text_impl->om_ele_node)
+ {
+ axis2_om_element_t *text_ele = NULL;
+ text_ele = (axis2_om_element_t *)
+ AXIS2_OM_NODE_GET_DATA_ELEMENT(text_impl->om_ele_node, env);
+ if(NULL != text_ele)
+ {
+ AXIS2_OM_ELEMENT_SET_TEXT(text_ele, env, value, text_impl->om_ele_node);
+ if(NULL != lang)
+ {
+ axis2_soap_fault_text_set_lang(fault_text, env, lang);
+ }
+ return AXIS2_SUCCESS;
+ }
+ }
+ return AXIS2_FAILURE;
+}
+