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/03/13 09:11:06 UTC

svn commit: r385453 [4/4] - in /webservices/axis2/trunk/c: include/ modules/xml/om/ modules/xml/soap/ test/unit/xml/om/ test/xml/om/ test/xml/soap/

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_fault_detail.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_detail.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_detail.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_detail.c Mon Mar 13 00:11:01 2006
@@ -27,12 +27,6 @@
  
     axis2_om_node_t *om_ele_node;
     
-    axis2_om_element_t *om_ele;
-    
-    int soap_version;
- 
-    axis2_soap_fault_t *parent; 
-    
  }axis2_soap_fault_detail_impl_t;
 
 /***************** Macro *****************************************************/
@@ -67,19 +61,6 @@
                         (axis2_soap_fault_detail_t *fault_detail,
                          axis2_env_t **env);
 
-int AXIS2_CALL 
-axis2_soap_fault_detail_get_soap_version
-                        (axis2_soap_fault_detail_t *fault_detail,
-                         axis2_env_t **env);
-                            
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_detail_set_soap_version
-                        (axis2_soap_fault_detail_t *fault_detail,
-                         axis2_env_t **env,
-                         int soap_version);
-                         
-
-                         
 /******************** function implementations ********************************/
 
 AXIS2_DECLARE(axis2_soap_fault_detail_t *)
@@ -98,12 +79,8 @@
     }                                  
     
     fault_detail_impl->fault_detail.ops = NULL;
-    fault_detail_impl->om_ele = NULL;
     fault_detail_impl->om_ele_node = NULL;
-    fault_detail_impl->soap_version = AXIS2_SOAP_VERSION_NOT_SET;
-    fault_detail_impl->parent = NULL;
     
-            
     fault_detail_impl->fault_detail.ops = (axis2_soap_fault_detail_ops_t*)AXIS2_MALLOC(
                                        (*env)->allocator,
                                        sizeof(axis2_soap_fault_detail_ops_t));
@@ -130,20 +107,13 @@
     fault_detail_impl->fault_detail.ops->set_base_node =
         axis2_soap_fault_detail_set_base_node;
         
-    fault_detail_impl->fault_detail.ops->get_soap_version =
-        axis2_soap_fault_detail_get_soap_version;
-        
-    fault_detail_impl->fault_detail.ops->set_soap_version =
-        axis2_soap_fault_detail_set_soap_version;                
-        
     return &(fault_detail_impl->fault_detail); 
 }
 
 AXIS2_DECLARE(axis2_soap_fault_detail_t *)
 axis2_soap_fault_detail_create_with_parent
                         (axis2_env_t **env,
-                         axis2_soap_fault_t *fault,
-                         axis2_bool_t extract_ns_from_parent)
+                         axis2_soap_fault_t *fault)
 {
     axis2_soap_fault_detail_impl_t *fault_detail_impl = NULL;
     axis2_soap_fault_detail_t *fault_detail = NULL;
@@ -162,25 +132,29 @@
         
     fault_detail_impl = AXIS2_INTF_TO_IMPL(fault_detail);
     
-    fault_detail_impl->parent = fault;
-    
     parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
-    
+    if(!parent_node)
+        return NULL;
+        
     parent_ele  = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
                         parent_node, env);
+    if(!parent_ele)
+        return NULL;
     
-    if(extract_ns_from_parent)
-    {
-        parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
-    }
+    parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
     
     this_ele = axis2_om_element_create(env, 
                                        parent_node,                             
                                        AXIS2_SOAP12_SOAP_FAULT_DETAIL_LOCAL_NAME,
                                        parent_ns,
                                        &this_node);
-    fault_detail_impl->om_ele = this_ele;
+    if(!this_ele)
+    {
+        AXIS2_SOAP_FAULT_DETAIL_FREE(fault_detail, env);
+        return NULL;
+    }
     fault_detail_impl->om_ele_node = this_node;                                       
+    AXIS2_SOAP_FAULT_SET_DETAIL(fault, env, fault_detail);
     return  &(fault_detail_impl->fault_detail);            
 }    
                          
@@ -227,11 +201,17 @@
                          axis2_env_t **env)
 {
     axis2_soap_fault_detail_impl_t *fault_detail_impl = NULL;
+    axis2_om_element_t *om_ele = NULL;
     AXIS2_ENV_CHECK(env, NULL);
     fault_detail_impl = AXIS2_INTF_TO_IMPL(fault_detail);
-    
-    return AXIS2_OM_ELEMENT_GET_CHILDREN(fault_detail_impl->om_ele, env,
+    if(fault_detail_impl->om_ele_node)
+    {
+        om_ele = (axis2_om_element_t *)
+            AXIS2_OM_NODE_GET_DATA_ELEMENT(fault_detail_impl->om_ele_node, env);
+        return AXIS2_OM_ELEMENT_GET_CHILDREN(om_ele,  env,
                             fault_detail_impl->om_ele_node);
+    } 
+    return NULL;
 }
 
 
@@ -252,7 +232,6 @@
         return AXIS2_FAILURE;
    }
    fault_detail_impl->om_ele_node = node;
-   fault_detail_impl->om_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(node, env);
    return AXIS2_SUCCESS;
 }
 
@@ -264,50 +243,4 @@
    AXIS2_ENV_CHECK(env, NULL);
    return AXIS2_INTF_TO_IMPL(fault_detail)->om_ele_node;
 }
-
-int AXIS2_CALL 
-axis2_soap_fault_detail_get_soap_version
-                        (axis2_soap_fault_detail_t *fault_detail,
-                         axis2_env_t **env)
-{
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    return AXIS2_INTF_TO_IMPL(fault_detail)->soap_version;
-}
-                            
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_detail_set_soap_version
-                        (axis2_soap_fault_detail_t *fault_detail,
-                         axis2_env_t **env,
-                         int soap_version)
-{
-     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-     AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-     AXIS2_INTF_TO_IMPL(fault_detail)->soap_version = soap_version;
-     return AXIS2_SUCCESS;
-}
-
-                                  
-                                              
-/********************** 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);
-
-}
-
 

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_fault_node.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_node.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_node.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_node.c Mon Mar 13 00:11:01 2006
@@ -28,8 +28,6 @@
     
     axis2_om_node_t *om_ele_node;
     
-    int soap_version;
-    
  }axis2_soap_fault_node_impl_t;
  
  /******************* Macro ***************************************************/
@@ -64,15 +62,6 @@
                           (axis2_soap_fault_node_t *fault_node,
                            axis2_env_t **env);
                         
-int AXIS2_CALL axis2_soap_fault_node_get_soap_version
-                          (axis2_soap_fault_node_t *fault_node,
-                           axis2_env_t **env);
-                        
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_node_set_soap_version
-                          (axis2_soap_fault_node_t *fault_node,
-                           axis2_env_t **env,
-                           int soap_version);
  
  /*********************** function implementations ****************************/
 
@@ -90,7 +79,6 @@
         return NULL;
     }                            
     fault_node_impl->fault_node.ops = NULL;
-    fault_node_impl->om_ele = NULL;
     fault_node_impl->om_ele_node = NULL;
     
     fault_node_impl->fault_node.ops = (axis2_soap_fault_node_ops_t*)AXIS2_MALLOC(
@@ -104,12 +92,6 @@
         return NULL;
     }                    
                                                                         
-    fault_node_impl->fault_node.ops->get_soap_version =
-        axis2_soap_fault_node_get_soap_version;
-    
-    fault_node_impl->fault_node.ops->set_soap_version =
-        axis2_soap_fault_node_set_soap_version;
-                
     fault_node_impl->fault_node.ops->set_base_node =
         axis2_soap_fault_node_set_base_node;
         
@@ -159,7 +141,6 @@
                                        AXIS2_SOAP12_SOAP_FAULT_NODE_LOCAL_NAME,
                                        parent_ns,
                                        &this_node);
-    fault_node_impl->om_ele = this_ele;
     fault_node_impl->om_ele_node = this_node;       
     AXIS2_SOAP_FAULT_SET_NODE(fault, env, fault_node);
                                     
@@ -241,27 +222,3 @@
     return fault_node_impl->om_ele_node;
 }
                         
-int AXIS2_CALL axis2_soap_fault_node_get_soap_version
-                          (axis2_soap_fault_node_t *fault_node,
-                           axis2_env_t **env)
-{
-    axis2_soap_fault_node_impl_t* fault_node_impl = NULL;
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    fault_node_impl = AXIS2_INTF_TO_IMPL(fault_node); 
-    return fault_node_impl->soap_version;
-}
-                        
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_node_set_soap_version
-                          (axis2_soap_fault_node_t *fault_node,
-                           axis2_env_t **env,
-                           int soap_version)
-{
-    axis2_soap_fault_node_impl_t* fault_node_impl = NULL;
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-    fault_node_impl = AXIS2_INTF_TO_IMPL(fault_node);
-    fault_node_impl->soap_version = soap_version;
-    return AXIS2_SUCCESS;
-}                                         
-                            

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_fault_reason.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_reason.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_reason.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_reason.c Mon Mar 13 00:11:01 2006
@@ -33,8 +33,6 @@
     axis2_soap_fault_text_t *text;
     /* pointer to soap builder */
     axis2_soap_builder_t *soap_builder;
-    /* soap version */
-    int soap_version;
     
 }axis2_soap_fault_reason_impl_t;
 
@@ -69,17 +67,6 @@
 axis2_soap_fault_reason_get_base_node
                                 (axis2_soap_fault_reason_t *fault_reason,
                                  axis2_env_t **env);
-                            
-int AXIS2_CALL 
-axis2_soap_fault_reason_get_soap_version
-                                (axis2_soap_fault_reason_t *fault_reason,
-                                 axis2_env_t **env);
-                            
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_reason_set_soap_version
-                                (axis2_soap_fault_reason_t *fault_reason,
-                                 axis2_env_t **env,
-                                 int soap_version);
                                  
 axis2_status_t AXIS2_CALL 
 axis2_soap_fault_reason_set_builder(axis2_soap_fault_reason_t *fault_reason,
@@ -106,7 +93,6 @@
     fault_reason_impl->fault_reason.ops = NULL;
     fault_reason_impl->om_ele_node = NULL;
     fault_reason_impl->text = NULL;
-    fault_reason_impl->soap_version = AXIS2_SOAP_VERSION_NOT_SET;
     fault_reason_impl->fault_reason.ops = 
             (axis2_soap_fault_reason_ops_t*)AXIS2_MALLOC((*env)->allocator,
                 sizeof(axis2_soap_fault_reason_ops_t));
@@ -133,12 +119,6 @@
     fault_reason_impl->fault_reason.ops->get_base_node =
         axis2_soap_fault_reason_get_base_node;
         
-    fault_reason_impl->fault_reason.ops->get_soap_version =
-        axis2_soap_fault_reason_get_soap_version; 
-        
-    fault_reason_impl->fault_reason.ops->set_soap_version =
-        axis2_soap_fault_reason_set_soap_version;
-        
     fault_reason_impl->fault_reason.ops->set_builder =
         axis2_soap_fault_reason_set_builder;          
   return  &(fault_reason_impl->fault_reason);  
@@ -146,8 +126,7 @@
 
 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 extract_ns_from_parent)
+                            axis2_soap_fault_t *fault)
 {
     axis2_soap_fault_reason_impl_t *fault_reason_impl = NULL;
     axis2_soap_fault_reason_t *fault_reason = NULL;
@@ -166,21 +145,33 @@
         
     fault_reason_impl = AXIS2_INTF_TO_IMPL(fault_reason);
     parent_node = AXIS2_SOAP_FAULT_GET_BASE_NODE(fault, env);
+    if(!parent_node)
+    {
+        return NULL;
+    }
     parent_ele  = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(
                         parent_node, env);
-    
-    if(extract_ns_from_parent)
+    if(!parent_ele)
     {
-        parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
+        return NULL;
     }
     
+    parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
+    
     this_ele = axis2_om_element_create(env, 
                                        parent_node,                             
                                        AXIS2_SOAP12_SOAP_FAULT_REASON_LOCAL_NAME,
                                        parent_ns,
                                        &this_node);
+    if(!this_ele)
+    {
+        return NULL;
+    }
+    
     fault_reason_impl->om_ele_node = this_node; 
+    
     AXIS2_SOAP_FAULT_SET_REASON(fault, env, fault_reason);                                      
+    
     return  &(fault_reason_impl->fault_reason);            
 }                            
                             
@@ -218,25 +209,17 @@
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK((*env)->error, soap_text, AXIS2_FAILURE);
     fault_reason_impl = AXIS2_INTF_TO_IMPL(fault_reason);
-    /*
-    axis2_om_node_t *text_node = NULL;
-    axis2_om_node_t *my_node = NULL;
-    if(fault_reason_impl->text)
+    if(!(fault_reason_impl->text))
     {
-        my_node = AXIS2_SOAP_FAULT_TEXT_GET_BASE_NODE(
-                            fault_reason_impl->text, env);
-        AXIS2_SOAP_FAULT_TEXT_FREE(fault_reason_impl->text, env);
-        fault_reason_impl->text = NULL;
+        fault_reason_impl->text = soap_text;
+        return AXIS2_SUCCESS;
     }
-    text_node = AXIS2_SOAP_FAULT_TEXT_GET_BASE_NODE(
-                            soap_text, env);
-    axis2_soap_utils_set_new_node(env, 
-                    fault_reason_impl->om_ele_node,
-                    &my_node, 
-                    text_node);
-    */                
-    fault_reason_impl->text = soap_text;
-    return AXIS2_SUCCESS;
+    else
+    {
+        AXIS2_LOG_DEBUG((*env)->log, AXIS2_LOG_SI, " error trying to set soap fault text twice");
+        
+    }
+    return AXIS2_FAILURE;
 }
                                 
 axis2_soap_fault_text_t* AXIS2_CALL 
@@ -263,23 +246,7 @@
                 return NULL;
         }
     }
-    /*
-    axis2_om_node_t *text_node = NULL;
-    axis2_om_node_t *this_node = NULL;
-    axis2_soap_fault_text_t* text = NULL;
-    this_node = fault_reason_impl->om_ele_node ;
-    if(!(fault_reason_impl->text))
-    {
-        text_node = axis2_soap_utils_get_child_with_name(env, 
-                                            this_node, 
-                                            AXIS2_SOAP12_SOAP_FAULT_TEXT_LOCAL_NAME);
-        text = axis2_soap_fault_text_create(env);
-        AXIS2_SOAP_FAULT_TEXT_SET_BASE_NODE(text , env, text_node);
-        fault_reason_impl->text = text;
-    }
-    */
     return fault_reason_impl->text;
-
 }
                                 
 axis2_status_t AXIS2_CALL 
@@ -308,33 +275,9 @@
 {
      AXIS2_ENV_CHECK(env, NULL);
      return AXIS2_INTF_TO_IMPL(fault_reason)->om_ele_node;
-
-
-
-}
-                            
-int AXIS2_CALL 
-axis2_soap_fault_reason_get_soap_version
-                                (axis2_soap_fault_reason_t *fault_reason,
-                                 axis2_env_t **env)
-{
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    return AXIS2_INTF_TO_IMPL(fault_reason)->soap_version;
 }
                             
 axis2_status_t AXIS2_CALL 
-axis2_soap_fault_reason_set_soap_version
-                                (axis2_soap_fault_reason_t *fault_reason,
-                                 axis2_env_t **env,
-                                 int soap_version)
-{
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-    AXIS2_INTF_TO_IMPL(fault_reason)->soap_version = soap_version;
-    return AXIS2_SUCCESS;
-}
-
-axis2_status_t AXIS2_CALL 
 axis2_soap_fault_reason_set_builder(axis2_soap_fault_reason_t *fault_reason,
                                     axis2_env_t **env,
                                     axis2_soap_builder_t *builder)
@@ -346,22 +289,3 @@
     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_TRUE);
-}                            
-
-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/soap_fault_role.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_role.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_role.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_role.c Mon Mar 13 00:11:01 2006
@@ -24,8 +24,6 @@
  {
     axis2_soap_fault_role_t fault_role;
     
-    int soap_version;
-    
     axis2_om_node_t *om_ele_node;
     
     axis2_om_element_t *om_ele;
@@ -64,17 +62,6 @@
                         (axis2_soap_fault_role_t *fault_role,
                          axis2_env_t **env);
                             
-int AXIS2_CALL 
-axis2_soap_fault_role_get_soap_version
-                        (axis2_soap_fault_role_t *fault_role,
-                         axis2_env_t **env);
-                         
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_role_set_soap_version
-                        (axis2_soap_fault_role_t *fault_role,
-                         axis2_env_t **env,
-                         int soap_version);                         
-
 /*********************** end function prototypes ******************************/
 
 
@@ -96,7 +83,6 @@
     fault_role_impl->om_ele = NULL;
     fault_role_impl->om_ele_node = NULL;
     
-    fault_role_impl->soap_version = AXIS2_SOAP_VERSION_NOT_SET;
     fault_role_impl->fault_role.ops = 
             (axis2_soap_fault_role_ops_t*)AXIS2_MALLOC((*env)->allocator,
                 sizeof(axis2_soap_fault_role_ops_t));
@@ -123,12 +109,6 @@
     fault_role_impl->fault_role.ops->get_base_node =
         axis2_soap_fault_role_get_base_node;
         
-    fault_role_impl->fault_role.ops->get_soap_version =
-        axis2_soap_fault_role_get_soap_version; 
-        
-    fault_role_impl->fault_role.ops->set_soap_version =
-        axis2_soap_fault_role_set_soap_version;                    
-                                
   return  &(fault_role_impl->fault_role);  
 }
 
@@ -258,26 +238,6 @@
      return AXIS2_INTF_TO_IMPL(fault_role)->om_ele_node;
 }
                             
-int AXIS2_CALL 
-axis2_soap_fault_role_get_soap_version
-                        (axis2_soap_fault_role_t *fault_role,
-                         axis2_env_t **env)
-{
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    return AXIS2_INTF_TO_IMPL(fault_role)->soap_version;
-}
-
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_role_set_soap_version
-                        (axis2_soap_fault_role_t *fault_role,
-                         axis2_env_t **env,
-                         int soap_version)
-{
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-    AXIS2_INTF_TO_IMPL(fault_role)->soap_version = soap_version;
-    return AXIS2_SUCCESS;
-} 
 
 /********************* soap11 *************************************************/
 AXIS2_DECLARE(axis2_soap_fault_role_t *)

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_fault_sub_code.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_sub_code.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_sub_code.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_sub_code.c Mon Mar 13 00:11:01 2006
@@ -30,8 +30,6 @@
     axis2_soap_fault_value_t *value;
     /* sub element fault subcode */
     axis2_soap_fault_sub_code_t *subcode;
-    /* soap version */
-    int soap_version; 
     /* pointer to soap builder */
     axis2_soap_builder_t *builder;   
  
@@ -80,22 +78,11 @@
                              (axis2_soap_fault_sub_code_t *fault_sub_code,
                               axis2_env_t **env);
                                  
-int AXIS2_CALL 
-axis2_soap_fault_sub_code_get_soap_version
-                             (axis2_soap_fault_sub_code_t *fault_sub_code,
-                              axis2_env_t **env);    
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_sub_code_set_soap_version
-                             (axis2_soap_fault_sub_code_t *fault_sub_code,
-                              axis2_env_t **env,
-                              int soap_version); 
 
 axis2_status_t AXIS2_CALL
 axis2_soap_fault_sub_code_set_builder(axis2_soap_fault_sub_code_t *fault_sub_code,
                                      axis2_env_t **env,
                                      axis2_soap_builder_t *builder);                                                           
-                                
-
 /********************** function implementations ******************************/
 
 AXIS2_DECLARE(axis2_soap_fault_sub_code_t *)
@@ -114,7 +101,6 @@
     
     fault_subcode_impl->fault_sub_code.ops = NULL;
     fault_subcode_impl->om_ele_node = NULL;
-    fault_subcode_impl->soap_version = AXIS2_SOAP12;
     fault_subcode_impl->value = NULL;
     fault_subcode_impl->subcode = NULL;
     fault_subcode_impl->builder = NULL;
@@ -151,12 +137,6 @@
     fault_subcode_impl->fault_sub_code.ops->get_base_node =
         axis2_soap_fault_sub_code_get_base_node;
         
-    fault_subcode_impl->fault_sub_code.ops->get_soap_version =
-        axis2_soap_fault_sub_code_get_soap_version;
-        
-    fault_subcode_impl->fault_sub_code.ops->set_soap_version =
-        axis2_soap_fault_sub_code_set_soap_version;
-        
     fault_subcode_impl->fault_sub_code.ops->set_builder =
         axis2_soap_fault_sub_code_set_builder;                            
                                 
@@ -231,24 +211,16 @@
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK((*env)->error, sub_code, AXIS2_FAILURE);
     fault_subcode_impl = AXIS2_INTF_TO_IMPL(fault_sub_code);
-    /*
-    axis2_om_node_t *subcode_node = NULL;
-    axis2_om_node_t *my_node = NULL;
-    subcode_node = AXIS2_SOAP_FAULT_SUB_CODE_GET_BASE_NODE(sub_code, env);
-    if(fault_subcode_impl->subcode)
+    if(!(fault_subcode_impl->subcode))
     {
-        my_node = AXIS2_SOAP_FAULT_SUB_CODE_GET_BASE_NODE(
-                            fault_subcode_impl->subcode, env);
-        AXIS2_SOAP_FAULT_SUB_CODE_FREE(fault_subcode_impl->subcode, env);
-        fault_subcode_impl->subcode = NULL;
+        fault_subcode_impl->subcode  = sub_code; 
+        return AXIS2_SUCCESS; 
     }
-    axis2_soap_utils_set_new_node(env, 
-        fault_subcode_impl->om_ele_node,
-        &my_node,
-        subcode_node);
-    */                                    
-    fault_subcode_impl->subcode = sub_code;
-    return AXIS2_SUCCESS;            
+    else
+    {
+        AXIS2_LOG_DEBUG((*env)->log, AXIS2_LOG_SI, "error tring to set fault subcode more than once");
+    }
+    return AXIS2_FAILURE;
 }
                               
 axis2_soap_fault_value_t* AXIS2_CALL
@@ -269,21 +241,6 @@
                 break;
         }                
     }
-    /*
-    axis2_om_node_t *subcode_node = NULL;
-    axis2_om_node_t *this_node = NULL;
-    axis2_soap_fault_value_t* fault_value = NULL;
-    this_node = AXIS2_SOAP_FAULT_SUB_CODE_GET_BASE_NODE(fault_sub_code, env);
-    if(!(fault_subcode_impl->value))
-    {
-        subcode_node = axis2_soap_utils_get_child_with_name(env, 
-                                            this_node, 
-                                            AXIS2_SOAP12_SOAP_FAULT_VALUE_LOCAL_NAME);
-        fault_value = axis2_soap_fault_value_create(env);
-        AXIS2_SOAP_FAULT_VALUE_SET_BASE_NODE(fault_value, env, subcode_node);
-        fault_subcode_impl->value = fault_value;
-    }
-    */
     return fault_subcode_impl->value;
 }                              
 axis2_status_t AXIS2_CALL
@@ -296,26 +253,16 @@
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK((*env)->error, fault_sub_code_val, AXIS2_FAILURE);
     fault_subcode_impl = AXIS2_INTF_TO_IMPL(fault_sub_code);
-
-    /*
-    axis2_om_node_t *value_node = NULL;
-    axis2_om_node_t *my_node = NULL;
-    if(fault_subcode_impl->value)
+    if(!(fault_subcode_impl->value))
+    { 
+       fault_subcode_impl->value  = fault_sub_code_val;
+       return AXIS2_SUCCESS;
+    }
+    else
     {
-        my_node = AXIS2_SOAP_FAULT_VALUE_GET_BASE_NODE(
-                            fault_subcode_impl->value, env);
-        AXIS2_SOAP_FAULT_SUB_CODE_FREE(fault_subcode_impl->value, env);
-        fault_subcode_impl->value = NULL;
+        AXIS2_LOG_DEBUG((*env)->log, AXIS2_LOG_SI, "error tring to set fault subcode value more than once");
     }
-    value_node = AXIS2_SOAP_FAULT_VALUE_GET_BASE_NODE(
-                            fault_sub_code_val, env);
-    axis2_soap_utils_set_new_node(env, 
-                    fault_subcode_impl->om_ele_node,
-                    &my_node, 
-                    value_node);
-    */                
-    fault_subcode_impl->value = fault_sub_code_val;
-    return AXIS2_SUCCESS;    
+    return AXIS2_FAILURE;    
 }
                          
 axis2_soap_fault_sub_code_t* AXIS2_CALL
@@ -336,23 +283,6 @@
                 break;
         }
     }
-    
-    /*
-    axis2_om_node_t *subcode_node = NULL;
-    axis2_om_node_t *this_node = NULL;
-    axis2_soap_fault_sub_code_t* subcode = NULL;
-    this_node = fault_subcode_impl->om_ele_node;
-    if(!(fault_subcode_impl->subcode))
-    {
-        subcode_node = axis2_soap_utils_get_child_with_name(env, 
-                                            this_node, 
-                                            AXIS2_SOAP12_SOAP_FAULT_SUB_CODE_LOCAL_NAME);
-                                                    
-        subcode = axis2_soap_fault_sub_code_create(env);
-        AXIS2_SOAP_FAULT_SUB_CODE_SET_BASE_NODE(subcode , env, subcode_node);
-        fault_subcode_impl->subcode = subcode;
-    }
-    */
     return fault_subcode_impl->subcode;
 }
                               
@@ -384,27 +314,6 @@
      return AXIS2_INTF_TO_IMPL(fault_sub_code)->om_ele_node;
 }
                                  
-int AXIS2_CALL 
-axis2_soap_fault_sub_code_get_soap_version
-                             (axis2_soap_fault_sub_code_t *fault_sub_code,
-                              axis2_env_t **env)
-{
-     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-     return AXIS2_INTF_TO_IMPL(fault_sub_code)->soap_version;
-} 
-
-axis2_status_t AXIS2_CALL 
-axis2_soap_fault_sub_code_set_soap_version
-                             (axis2_soap_fault_sub_code_t *fault_sub_code,
-                              axis2_env_t **env,
-                              int soap_version)
-{
-     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-     AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-     AXIS2_INTF_TO_IMPL(fault_sub_code)->soap_version = soap_version;
-     return AXIS2_SUCCESS;
-}
-
 axis2_status_t AXIS2_CALL
 axis2_soap_fault_sub_code_set_builder(axis2_soap_fault_sub_code_t *fault_sub_code,
                                      axis2_env_t **env,

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=385453&r1=385452&r2=385453&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 Mar 13 00:11:01 2006
@@ -34,14 +34,8 @@
     
     axis2_om_node_t *om_ele_node;
     
-    axis2_om_element_t *om_ele;
-    
-    axis2_soap_fault_reason_t *parent;
-    
     axis2_bool_t lang_ns_used;
     
-    int soap_version;
-    
 }axis2_soap_fault_text_impl_t;
 
 /********************** Macro ************************************************/
@@ -73,15 +67,6 @@
 axis2_soap_fault_text_get_base_node(axis2_soap_fault_text_t *fault_text,
                                       axis2_env_t **env);
                                       
-int AXIS2_CALL
-axis2_soap_fault_text_get_soap_version(axis2_soap_fault_text_t *fault_text,
-                                      axis2_env_t **env);
-                                      
-axis2_status_t AXIS2_CALL
-axis2_soap_fault_text_set_soap_version(axis2_soap_fault_text_t *fault_text,
-                                      axis2_env_t **env,
-                                      int soap_version);                                        
-                                      
 /***************************** functions **************************************/                                      
                                                        
 
@@ -101,12 +86,10 @@
     }                                  
     
     fault_text_impl->fault_text.ops = NULL;
-    fault_text_impl->om_ele = NULL;
     fault_text_impl->om_ele_node = NULL;
     fault_text_impl->lang_attribute = NULL;
     fault_text_impl->lang_namespace = NULL;
     fault_text_impl->lang_ns_used = AXIS2_FALSE;
-    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,
@@ -141,12 +124,6 @@
     fault_text_impl->fault_text.ops->set_base_node =
         axis2_soap_fault_text_set_base_node;
         
-    fault_text_impl->fault_text.ops->get_soap_version =
-        axis2_soap_fault_text_get_soap_version;
-        
-    fault_text_impl->fault_text.ops->set_soap_version =
-        axis2_soap_fault_text_set_soap_version;                
-        
     return &(fault_text_impl->fault_text);    
 }
 
@@ -173,8 +150,6 @@
     
     fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);
     
-    fault_text_impl->parent = parent;
-    
     parent_node = AXIS2_SOAP_FAULT_REASON_GET_BASE_NODE(parent, env);
     parent_ele  = (axis2_om_element_t*)
                     AXIS2_OM_NODE_GET_DATA_ELEMENT(parent_node, env);
@@ -185,7 +160,6 @@
                     AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env),
                     &this_node);
     fault_text_impl->om_ele_node = this_node;
-    fault_text_impl->om_ele = this_ele;
     AXIS2_SOAP_FAULT_REASON_SET_SOAP_FAULT_TEXT(parent, env, fault_text);
     return &(fault_text_impl->fault_text);
 }
@@ -220,24 +194,32 @@
                                       axis2_char_t* lang)
 {
     axis2_soap_fault_text_impl_t* fault_text_impl = NULL;
+    int status = AXIS2_SUCCESS;
+    axis2_om_element_t *om_ele = NULL;
+    
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK((*env)->error, lang, AXIS2_FAILURE);
+    
     fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);
     
     fault_text_impl->lang_attribute = axis2_om_attribute_create(env, 
                                         AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_LOCAL_NAME,
                                         lang, fault_text_impl->lang_namespace);
-                                        
+    if(!fault_text_impl->lang_attribute)
+        return AXIS2_FAILURE;
+        
     fault_text_impl->lang_ns_used = AXIS2_TRUE;
     
-    if(fault_text_impl->om_ele)
-    {
-        AXIS2_OM_ELEMENT_ADD_ATTRIBUTE(fault_text_impl->om_ele, env,
-                                       fault_text_impl->lang_attribute,
+    if(!fault_text_impl->om_ele_node)
+        return AXIS2_FAILURE;
+    
+    om_ele = (axis2_om_element_t*)AXIS2_OM_NODE_GET_DATA_ELEMENT(fault_text_impl->om_ele_node, env);
+    if(!om_ele)
+        return AXIS2_FAILURE;
+        
+    status = AXIS2_OM_ELEMENT_ADD_ATTRIBUTE(om_ele, env, fault_text_impl->lang_attribute,
                                        fault_text_impl->om_ele_node);
-        return AXIS2_SUCCESS;                                       
-    }
-    return AXIS2_FAILURE;
+    return status;
 }
                                      
 axis2_char_t* AXIS2_CALL
@@ -245,21 +227,29 @@
                                       axis2_env_t **env)
 {
     axis2_soap_fault_text_impl_t* fault_text_impl = NULL;
+    axis2_om_element_t* om_ele = NULL;
     axis2_qname_t* tmp_qname = NULL;
+    
     AXIS2_ENV_CHECK(env, NULL);
     fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);   
-    /* this logic need to be rechecked */
+    if(!fault_text_impl->om_ele_node)
+        return NULL;
+
+    om_ele = (axis2_om_element_t*)AXIS2_OM_NODE_GET_DATA_ELEMENT(fault_text_impl->om_ele_node, env);
+    if(!om_ele)
+        return NULL;
+    
     if(!(fault_text_impl->lang_attribute))
     {
+
+    /* this logic need to be rechecked */
         tmp_qname = axis2_qname_create(env, 
                         AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_LOCAL_NAME,
                         AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_NS_URI,
                         AXIS2_SOAP12_SOAP_FAULT_TEXT_LANG_ATTR_NS_PREFIX);
 
         fault_text_impl->lang_attribute = 
-            AXIS2_OM_ELEMENT_GET_ATTRIBUTE(fault_text_impl->om_ele,
-                                           env,
-                                           tmp_qname);
+            AXIS2_OM_ELEMENT_GET_ATTRIBUTE(om_ele, env, tmp_qname);
         AXIS2_QNAME_FREE(tmp_qname, env);                                           
     }
     if(fault_text_impl->lang_attribute)
@@ -285,11 +275,7 @@
                 AXIS2_ERROR_INVALID_BASE_TYPE, AXIS2_FAILURE);
         return AXIS2_FAILURE;
     }
-    
-    fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);
     fault_text_impl->om_ele_node = node;
-    fault_text_impl->om_ele = (axis2_om_element_t *) 
-                            AXIS2_OM_NODE_GET_DATA_ELEMENT(node, env);
     return AXIS2_SUCCESS;
 }
     
@@ -303,25 +289,3 @@
     return fault_text_impl->om_ele_node;
 }
 
-int AXIS2_CALL
-axis2_soap_fault_text_get_soap_version(axis2_soap_fault_text_t *fault_text,
-                                      axis2_env_t **env)
-{
-    axis2_soap_fault_text_impl_t* fault_text_impl = NULL;
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text); 
-    return fault_text_impl->soap_version;
-}
-
-axis2_status_t AXIS2_CALL
-axis2_soap_fault_text_set_soap_version(axis2_soap_fault_text_t *fault_text,
-                                       axis2_env_t **env,
-                                       int soap_version)
-{
-    axis2_soap_fault_text_impl_t* fault_text_impl = NULL;
-    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
-    AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-    fault_text_impl = AXIS2_INTF_TO_IMPL(fault_text);
-    fault_text_impl->soap_version = soap_version;
-    return AXIS2_SUCCESS;
-}                                       

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_fault_value.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_fault_value.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_fault_value.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_fault_value.c Mon Mar 13 00:11:01 2006
@@ -31,7 +31,6 @@
     axis2_om_element_t *om_ele;
     
     /** pointer to parent */
-    int soap_version;
 }axis2_soap_fault_value_impl_t;
 
 /*********************** macro ************************************************/
@@ -54,14 +53,6 @@
 axis2_soap_fault_value_get_base_node(axis2_soap_fault_value_t *fault_value,
                                      axis2_env_t **env);
                                   
-int AXIS2_CALL
-axis2_soap_fault_value_get_soap_version(axis2_soap_fault_value_t *fault_value,
-                                     axis2_env_t **env);     
-
-axis2_status_t AXIS2_CALL
-axis2_soap_fault_value_set_soap_version(axis2_soap_fault_value_t *fault_value,
-                                        axis2_env_t **env,
-                                        int soap_version); 
 
 /*************************** function implementations *************************/
 
@@ -82,7 +73,6 @@
     
     fault_val_impl->om_ele_node = NULL;
     fault_val_impl->om_ele = NULL;
-    fault_val_impl->soap_version = AXIS2_SOAP_VERSION_NOT_SET;
     
     fault_val_impl->fault_value.ops = NULL;
     fault_val_impl->fault_value.ops = (axis2_soap_fault_value_ops_t *)AXIS2_MALLOC(
@@ -103,11 +93,6 @@
     fault_val_impl->fault_value.ops->get_base_node =
         axis2_soap_fault_value_get_base_node;
         
-    fault_val_impl->fault_value.ops->get_soap_version =
-        axis2_soap_fault_value_get_soap_version;  
-        
-    fault_val_impl->fault_value.ops->set_soap_version =
-        axis2_soap_fault_value_set_soap_version;                              
     return &(fault_val_impl->fault_value);
 }
 
@@ -230,28 +215,4 @@
     fault_val_impl = AXIS2_INTF_TO_IMPL(fault_value);
     return fault_val_impl->om_ele_node;
 }                                  
-
-int AXIS2_CALL
-axis2_soap_fault_value_get_soap_version(axis2_soap_fault_value_t *fault_value,
-                                     axis2_env_t **env)
-{
-    axis2_soap_fault_value_impl_t *fault_val_impl = NULL;
-    fault_val_impl = AXIS2_INTF_TO_IMPL(fault_value);
-    return fault_val_impl->soap_version;
-
-
-} 
-
-axis2_status_t AXIS2_CALL
-axis2_soap_fault_value_set_soap_version(axis2_soap_fault_value_t *fault_value,
-                                        axis2_env_t **env,
-                                        int soap_version)
-{
-    axis2_soap_fault_value_impl_t *fault_val_impl = NULL;
-    AXIS2_PARAM_CHECK((*env)->error, soap_version, AXIS2_FAILURE);
-    fault_val_impl = AXIS2_INTF_TO_IMPL(fault_value);
-     fault_val_impl->soap_version = soap_version; 
-    return AXIS2_SUCCESS;
-}
-
 

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_header.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_header.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_header.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_header.c Mon Mar 13 00:11:01 2006
@@ -21,7 +21,7 @@
  #include <axis2_soap.h>
  #include <axis2_soap_builder.h>
  #include <stdio.h>
- 
+ #include <axis2_om_node_internal.h> 
  /******************* impl struct *********************************************/
  
  typedef struct axis2_soap_header_impl_t
@@ -128,7 +128,6 @@
         return NULL;
     }
     header_impl->soap_header.ops = NULL;
-    header_impl->om_ele          = NULL;
     header_impl->om_ele_node     = NULL;
     header_impl->hbnumber = 0;
     header_impl->header_blocks = NULL;
@@ -162,6 +161,9 @@
         
     header_impl->soap_header.ops->get_soap_version =
         axis2_soap_header_get_soap_version; 
+    header_impl->soap_header.ops->set_soap_version =
+        axis2_soap_header_set_soap_version;
+        
     header_impl->soap_header.ops->set_header_block = 
         axis2_soap_header_set_header_block;
     header_impl->soap_header.ops->set_builder =
@@ -195,14 +197,17 @@
     header_impl->soap_version = AXIS2_SOAP_ENVELOPE_GET_SOAP_VERSION(envelope, env);
         
     parent_node = AXIS2_SOAP_ENVELOPE_GET_BASE_NODE(envelope, 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);
+    if(parent_node && AXIS2_OM_NODE_GET_NODE_TYPE(parent_node, env) == AXIS2_OM_ELEMENT)
+    {
+        parent_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(parent_node, env);
     
-    this_ele = axis2_om_element_create(env, parent_node,
+        parent_ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(parent_ele, env);
+    
+        this_ele = axis2_om_element_create(env, parent_node,
                  AXIS2_SOAP_HEADER_LOCAL_NAME, parent_ns, &this_node);
-    header_impl->om_ele = this_ele;
-    header_impl->om_ele_node = this_node;
-    AXIS2_SOAP_ENVELOPE_SET_HEADER(envelope, env, header);
+        header_impl->om_ele_node = this_node;
+        AXIS2_SOAP_ENVELOPE_SET_HEADER(envelope, env, header);
+    }
     return &(header_impl->soap_header);                 
 }
 
@@ -218,24 +223,15 @@
     {
         axis2_hash_index_t *hi = NULL;
         void *val = NULL;
-        void *key = NULL;
-            
         for (hi = axis2_hash_first (header_impl->header_blocks ,env); hi;
                  hi = axis2_hash_next ( env, hi))
         {
-               axis2_hash_this (hi, &key, NULL, &val);
+               axis2_hash_this (hi, NULL, NULL, &val);
 
                 if (val)
                 {   AXIS2_SOAP_HEADER_BLOCK_FREE((axis2_soap_header_block_t *)val, env);
                     val = NULL;
                 }
-                if(key)
-                {
-                    AXIS2_FREE((*env)->allocator, key);
-                    key = NULL;                    
-                }
-                    
-                   
          }
         AXIS2_FREE((*env)->allocator, hi); 
         axis2_hash_free (header_impl->header_blocks, env);
@@ -259,16 +255,24 @@
     axis2_soap_header_impl_t *header_impl = NULL;
     axis2_soap_header_block_t *header_block = NULL;
     axis2_om_node_t* header_block_node = NULL;
-    axis2_char_t *key = NULL;
     AXIS2_ENV_CHECK(env, NULL);
     AXIS2_PARAM_CHECK((*env)->error, localname, NULL);
     AXIS2_PARAM_CHECK((*env)->error, ns, NULL);
     header_impl = AXIS2_INTF_TO_IMPL(header);
     header_block = axis2_soap_header_block_create_with_parent(env, localname, ns, header);
+    if(!header_block)
+        return NULL;
     header_block_node = AXIS2_SOAP_HEADER_BLOCK_GET_BASE_NODE(
                             header_block, env);
-    AXIS2_OM_NODE_SET_BUILD_STATUS(header_block_node, env, AXIS2_TRUE);
-    return header_block;
+    if(header_block_node)
+    {
+        axis2_om_node_set_build_status(header_block_node, env, AXIS2_TRUE);
+        return header_block;
+    }
+    else
+    {
+        return  NULL;
+    }        
 } 
 axis2_hash_t* AXIS2_CALL 
 axis2_soap_header_examine_header_blocks
@@ -279,8 +283,6 @@
     AXIS2_ENV_CHECK(env, NULL);
     AXIS2_PARAM_CHECK((*env)->error, param_role, NULL);
     return AXIS2_INTF_TO_IMPL(header)->header_blocks;
-
-
 }
     
 axis2_om_children_qname_iterator_t* AXIS2_CALL 
@@ -293,9 +295,13 @@
     AXIS2_ENV_CHECK(env, NULL);
     header_impl = AXIS2_INTF_TO_IMPL(header);
     om_ele = (axis2_om_element_t *)AXIS2_OM_NODE_GET_DATA_ELEMENT(header_impl->om_ele_node, env);
+    if(om_ele)
+    {
     return AXIS2_OM_ELEMENT_GET_CHILDREN_WITH_QNAME(om_ele,
                 env, NULL, header_impl->om_ele_node);
-
+    }
+    else
+        return NULL;
 }
         
 axis2_om_children_with_specific_attribute_iterator_t *
@@ -310,6 +316,7 @@
     axis2_om_node_t *first_node = NULL;
     axis2_om_element_t *first_ele =  NULL;
     axis2_qname_t *qn = NULL;
+    axis2_om_element_t *header_om_ele = NULL;
     axis2_om_children_with_specific_attribute_iterator_t* iter = NULL;
     AXIS2_ENV_CHECK(env, NULL);
     header_impl = AXIS2_INTF_TO_IMPL(header);
@@ -328,10 +335,17 @@
     }
     
     qn = axis2_qname_create(env, localname, nsuri, NULL);
-    first_ele = AXIS2_OM_ELEMENT_GET_FIRST_ELEMENT(header_impl->om_ele, env,
+    if(!qn)
+        return NULL;
+    header_om_ele = (axis2_om_element_t*)
+        AXIS2_OM_NODE_GET_DATA_ELEMENT(header_impl->om_ele_node, env);
+    if(header_om_ele)
+    {
+        first_ele = AXIS2_OM_ELEMENT_GET_FIRST_ELEMENT(header_om_ele, env,
                 header_impl->om_ele_node, &first_node);
     iter = axis2_om_children_with_specific_attribute_iterator_create(env, 
                 first_node, qn, role,   AXIS2_TRUE);
+    }
     AXIS2_QNAME_FREE(qn, env);
     return iter;        
             
@@ -353,10 +367,7 @@
         return AXIS2_FAILURE;
    }
    header_impl->om_ele_node = node;
-   header_impl->om_ele = (axis2_om_element_t *)
-            AXIS2_OM_NODE_GET_DATA_ELEMENT(node, env);
    return AXIS2_SUCCESS;
-
 }
 
 axis2_om_node_t* AXIS2_CALL 
@@ -373,7 +384,6 @@
 {
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     return AXIS2_INTF_TO_IMPL(header)->soap_version;
-
 }
                                              
 axis2_status_t AXIS2_CALL 
@@ -396,9 +406,15 @@
     axis2_soap_header_impl_t *header_impl = NULL;
     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK((*env)->error, header_block, AXIS2_FAILURE);
+    
     header_impl = AXIS2_INTF_TO_IMPL(header);
+    
     key = (axis2_char_t*)AXIS2_MALLOC((*env)->allocator, sizeof(axis2_char_t)*10);
+    if(!key)
+        return AXIS2_FAILURE;
+    
     sprintf(key,"%d", header_impl->hbnumber++);
+    
     if(header_impl->header_blocks)
     {
         axis2_hash_set(header_impl->header_blocks,
@@ -441,8 +457,11 @@
     axis2_char_t *hb_namespace_uri = NULL;
     int found = 0;
     void *hb =  NULL;
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
     AXIS2_PARAM_CHECK((*env)->error, ns_uri, NULL);
+    
     header_impl = AXIS2_INTF_TO_IMPL(header);
+    
     if(!(header_impl->header_blocks))
         return NULL;
     
@@ -457,17 +476,23 @@
         if(hb)
         {
             header_block = (axis2_soap_header_block_t*)hb;
+    
             header_block_om_node = AXIS2_SOAP_HEADER_BLOCK_GET_BASE_NODE(header_block, env);
-            header_block_om_ele  = (axis2_om_element_t *)
-                AXIS2_OM_NODE_GET_DATA_ELEMENT(header_block_om_node, env);
-            ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(header_block_om_ele, env);
-            hb_namespace_uri = AXIS2_OM_NAMESPACE_GET_URI(ns, env);
-            if(AXIS2_STRCMP(hb_namespace_uri, ns_uri) == 0)
+            if(header_block_om_node)
             {
-                AXIS2_ARRAY_LIST_ADD(header_block_list, env, header_block);
-                found++;            
-            }            
-        
+            header_block_om_ele  = (axis2_om_element_t *)
+                    AXIS2_OM_NODE_GET_DATA_ELEMENT(header_block_om_node, env);
+                if(header_block_om_ele)
+                {
+                    ns = AXIS2_OM_ELEMENT_GET_NAMESPACE(header_block_om_ele, env);
+                    hb_namespace_uri = AXIS2_OM_NAMESPACE_GET_URI(ns, env);
+                    if(AXIS2_STRCMP(hb_namespace_uri, ns_uri) == 0)
+                    {
+                        AXIS2_ARRAY_LIST_ADD(header_block_list, env, header_block);
+                        found++;            
+                    }
+                }
+            }
             hb = NULL;
             header_block = NULL;
             header_block_om_ele = NULL;

Modified: webservices/axis2/trunk/c/modules/xml/soap/soap_header_block.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/xml/soap/soap_header_block.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/xml/soap/soap_header_block.c (original)
+++ webservices/axis2/trunk/c/modules/xml/soap/soap_header_block.c Mon Mar 13 00:11:01 2006
@@ -80,7 +80,8 @@
                         (axis2_soap_header_block_t *header_block,
                          axis2_env_t **env);
                                                                                     
-axis2_status_t AXIS2_CALL axis2_soap_header_block_set_base_node
+axis2_status_t AXIS2_CALL 
+axis2_soap_header_block_set_base_node
                         (axis2_soap_header_block_t *header_block,
                          axis2_env_t **env,
                          axis2_om_node_t *node);
@@ -115,7 +116,11 @@
                         axis2_char_t *attr_name,
                         axis2_char_t *soap_envelope_namespace_uri);  
                         
-                         
+axis2_status_t AXIS2_CALL
+axis2_soap_header_block_set_soap_version(axis2_soap_header_block_t *header_block,
+                                   axis2_env_t **env,
+                                   int soap_version);
+                                   
 /*************** function implementations *************************************/                                                                                             
 
 AXIS2_DECLARE(axis2_soap_header_block_t *)
@@ -165,6 +170,9 @@
 
     header_block_impl->header_block.ops->get_soap_version =
         axis2_soap_header_block_get_soap_version;
+    header_block_impl->header_block.ops->set_soap_version =
+        axis2_soap_header_block_set_soap_version;
+        
     header_block_impl->header_block.ops->set_base_node =
         axis2_soap_header_block_set_base_node;
     header_block_impl->header_block.ops->get_base_node =
@@ -513,3 +521,16 @@
     return AXIS2_INTF_TO_IMPL(header_block)->soap_version;
 }
 
+axis2_status_t AXIS2_CALL
+axis2_soap_header_block_set_soap_version
+                                  (axis2_soap_header_block_t *header_block,
+                                   axis2_env_t **env,
+                                   int soap_version)
+{
+   axis2_soap_header_block_impl_t *header_block_impl = NULL;
+   AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+   header_block_impl = AXIS2_INTF_TO_IMPL(header_block);
+   
+   header_block_impl->soap_version = soap_version;
+   return AXIS2_SUCCESS;
+}                                   

Modified: webservices/axis2/trunk/c/test/unit/xml/om/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/unit/xml/om/Makefile.am?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/unit/xml/om/Makefile.am (original)
+++ webservices/axis2/trunk/c/test/unit/xml/om/Makefile.am Mon Mar 13 00:11:01 2006
@@ -8,7 +8,8 @@
 INCLUDES = -I$(top_builddir)/include \
             -I${CUTEST_HOME}/include \
             -I$(top_builddir)/modules/util \
-            -I$(top_builddir)/modules/platforms
+            -I$(top_builddir)/modules/platforms \
+            -I$(top_builddir)/modules/xml/om
 
 check_PROGRAMS = om_test
 prgbin_PROGRAMS = om_test

Modified: webservices/axis2/trunk/c/test/unit/xml/om/om_node_test.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/unit/xml/om/om_node_test.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/unit/xml/om/om_node_test.c (original)
+++ webservices/axis2/trunk/c/test/unit/xml/om/om_node_test.c Mon Mar 13 00:11:01 2006
@@ -1,4 +1,6 @@
 #include "om_node_test.h"
+#include <axis2_om_node_internal.h>
+
 #include <CuTest.h>
 
 void Testaxis2_om_node_add_child(CuTest *tc)
@@ -34,7 +36,7 @@
     parent = axis2_om_node_create(&env);   
     child  = axis2_om_node_create(&env); 
     
-    AXIS2_OM_NODE_SET_PARENT(child, &env, parent);
+    axis2_om_node_set_parent(child, &env, parent);
     CuAssertPtrEquals(tc, parent, AXIS2_OM_NODE_GET_PARENT(child, &env));
     /*axis2_env_free(env);*/
 }

Modified: webservices/axis2/trunk/c/test/xml/om/test_om.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/xml/om/test_om.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/xml/om/test_om.c (original)
+++ webservices/axis2/trunk/c/test/xml/om/test_om.c Mon Mar 13 00:11:01 2006
@@ -90,6 +90,12 @@
      */
     
     node1 = AXIS2_OM_DOCUMENT_GET_ROOT_ELEMENT (document,&environment);
+    if(!node1)
+    {
+        printf(" root element null ");
+        AXIS2_OM_STAX_BUILDER_FREE(builder, &environment);
+        return;
+    }
     if(node1)
     {
         /** print root node information */
@@ -267,7 +273,7 @@
     
     environment = axis2_env_create_with_error_log(allocator, error,  axis_log);
     test_om_build (file_name);
-/*    test_om_serialize(); */
+    test_om_serialize(); 
 
     axis2_env_free(environment); 
     axis2_allocator_free(allocator);

Modified: webservices/axis2/trunk/c/test/xml/soap/test_soap.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/xml/soap/test_soap.c?rev=385453&r1=385452&r2=385453&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/xml/soap/test_soap.c (original)
+++ webservices/axis2/trunk/c/test/xml/soap/test_soap.c Mon Mar 13 00:11:01 2006
@@ -95,6 +95,7 @@
         return -1;
     }
     soap_envelope = AXIS2_SOAP_BUILDER_GET_SOAP_ENVELOPE(soap_builder, env);
+    
     om_node = AXIS2_SOAP_ENVELOPE_GET_BASE_NODE(soap_envelope, env);
     printnode(om_node, env);
     soap_header = AXIS2_SOAP_ENVELOPE_GET_HEADER(soap_envelope, env);
@@ -102,16 +103,15 @@
     {
         om_node = AXIS2_SOAP_HEADER_GET_BASE_NODE(soap_header, env);
         printnode(om_node, env);
-    }
-    
     
-    children_iter = AXIS2_SOAP_HEADER_EXAMINE_ALL_HEADER_BLOCKS(soap_header, env);
-    if(children_iter)
-    {
-        while(AXIS2_OM_CHILDREN_ITERATOR_HAS_NEXT(children_iter, env))
-        {   
-            om_node = AXIS2_OM_CHILDREN_ITERATOR_NEXT(children_iter, env);
-            printnode(om_node, env);
+        children_iter = AXIS2_SOAP_HEADER_EXAMINE_ALL_HEADER_BLOCKS(soap_header, env);
+        if(children_iter)
+        {
+            while(AXIS2_OM_CHILDREN_ITERATOR_HAS_NEXT(children_iter, env))
+            {   
+                om_node = AXIS2_OM_CHILDREN_ITERATOR_NEXT(children_iter, env);
+                printnode(om_node, env);
+            }
         }
     }
     soap_body = AXIS2_SOAP_ENVELOPE_GET_BODY(soap_envelope, env);
@@ -127,14 +127,26 @@
         printf ("\n\n ERROR soap_body NULL.\n\n");
         return AXIS2_FAILURE;
     }
-    AXIS2_SOAP_BODY_BUILD(soap_body, env);
 
+    if(soap_body)
+        if(AXIS2_SOAP_BODY_HAS_FAULT(soap_body, env))
+        {
+            printf("\n\n has fault\n\n\n ");
+        }
+    
+    AXIS2_SOAP_BODY_BUILD(soap_body, env);
+    om_node = AXIS2_SOAP_BODY_GET_BASE_NODE(soap_body, env);
+    
     while(!(AXIS2_OM_NODE_GET_BUILD_STATUS(om_node, env)) && !(AXIS2_OM_STAX_BUILDER_IS_COMPLETE(om_builder, env)))
     {
         status = AXIS2_SOAP_BUILDER_NEXT(soap_builder, env);
         if(status == AXIS2_FAILURE)
-               printf("failure %s" ,AXIS2_ERROR_GET_MESSAGE((*env)->error));
+        {      
+            printf("failure %s" ,AXIS2_ERROR_GET_MESSAGE((*env)->error));
+            break;
+        }               
     }
+    
     xml_writer = axis2_xml_writer_create_for_memory(env, NULL, AXIS2_FALSE, AXIS2_FALSE);
     
     om_output = axis2_om_output_create( env, xml_writer);  
@@ -188,7 +200,7 @@
 
     soap_fault = axis2_soap_fault_create_with_parent(env, soap_body);
     
-    fault_code = axis2_soap12_fault_code_create_with_parent(env, soap_fault);
+    fault_code = axis2_soap_fault_code_create_with_parent(env, soap_fault);
     
     xml_writer = axis2_xml_writer_create_for_memory(env, NULL, AXIS2_FALSE, AXIS2_FALSE);
     om_output = axis2_om_output_create( env, xml_writer);
@@ -212,7 +224,7 @@
     axis2_om_output_t *om_output = NULL;
     axis2_char_t *buffer = NULL;
 
-    soap_envelope = axis2_soap_envelope_create_default_soap_fault_envelope(env, AXIS2_SOAP12);
+    soap_envelope = axis2_soap_envelope_create_default_soap_fault_envelope(env, AXIS2_SOAP11);
     soap_body = AXIS2_SOAP_ENVELOPE_GET_BODY(soap_envelope, env);
     axis2_soap_fault_create_default_fault(env, soap_body, "env:Receiver","A fault occured", AXIS2_SOAP12);
    
@@ -233,7 +245,7 @@
     axis2_allocator_t *allocator = NULL;
     axis2_error_t *error = NULL;
     axis2_log_t *log = NULL;
-    axis2_char_t *uri = AXIS2_SOAP12_SOAP_ENVELOPE_NAMESPACE_URI;
+    axis2_char_t *uri = AXIS2_SOAP11_SOAP_ENVELOPE_NAMESPACE_URI;
     char *filename = "test.xml";
     if(argc > 1)
         filename = argv[1];
@@ -250,12 +262,11 @@
     error = axis2_error_create(allocator);
     env = axis2_env_create_with_error_log(allocator, error,  log);
     
-    axis2_error_init();
-    build_soap_programatically(&env); 
-    build_soap(&env, filename,uri);
-    create_soap_fault(&env);
+    axis2_error_init(); 
+    build_soap_programatically(&env);   
+    build_soap(&env, filename,uri); 
+    create_soap_fault(&env);  
     axis2_env_free(env); 
     axis2_allocator_free(allocator);
-    getchar();
     return 0;        
 }