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 da...@apache.org on 2006/03/15 09:44:23 UTC

svn commit: r386002 - in /webservices/axis2/trunk/c/include: axis2_wsdl_desc.h axis2_wsdl_extensible_attribute.h axis2_wsdl_import.h axis2_wsdl_include.h axis2_wsdl_types.h

Author: damitha
Date: Wed Mar 15 00:44:21 2006
New Revision: 386002

URL: http://svn.apache.org/viewcvs?rev=386002&view=rev
Log:
Work related to WOM

Added:
    webservices/axis2/trunk/c/include/axis2_wsdl_desc.h
    webservices/axis2/trunk/c/include/axis2_wsdl_extensible_attribute.h
    webservices/axis2/trunk/c/include/axis2_wsdl_import.h
    webservices/axis2/trunk/c/include/axis2_wsdl_include.h
    webservices/axis2/trunk/c/include/axis2_wsdl_types.h

Added: webservices/axis2/trunk/c/include/axis2_wsdl_desc.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_desc.h?rev=386002&view=auto
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_desc.h (added)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_desc.h Wed Mar 15 00:44:21 2006
@@ -0,0 +1,471 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_WSDL_DESC_H
+#define AXIS2_WSDL_DESC_H
+
+/**
+ * @file axis2_wsdl_desc.h
+ * @brief Axis2 Wsdl interface interface
+ */
+
+#include <axis2.h>
+#include <axis2_error.h>
+#include <axis2_defines.h>
+#include <axis2_env.h>
+#include <axis2_allocator.h>
+#include <axis2_hash.h>
+#include <axis2_array_list.h>
+#include <axis2_qname.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+    
+struct axis2_wsdl_op;
+struct axis2_wsdl_component;
+struct axis2_wsdl_include;
+struct axis2_wsdl_import;
+struct axis2_wsdl_types;
+struct axis2_wsdl_msg_ref;
+struct axis2_wsdl_fault_ref;
+struct axis2_wsdl_feature;
+struct axis2_wsdl_property;
+struct axis2_wsdl_binding;
+struct axis2_wsdl_binding_fault;
+struct axis2_wsdl_binding_op;
+struct axis2_wsdl_extensible_attribute;
+struct axis2_wsdl_interface;
+
+typedef struct axis2_wsdl_desc axis2_wsdl_desc_t;
+typedef struct axis2_wsdl_desc_ops axis2_wsdl_desc_ops_t;
+
+/** @defgroup axis2_wsdl_desc Wsdl Description
+ * @ingroup axis2_wsdl
+ * @{
+ */
+
+
+/** 
+ * @brief Wsdl Description ops struct
+ * Encapsulator struct for ops of axis2_wsdl_desc
+ */
+AXIS2_DECLARE_DATA struct axis2_wsdl_desc_ops
+{
+	/** De-allocate memory
+  	 * @return status code
+  	 */
+	axis2_status_t (AXIS2_CALL *
+    free)(axis2_wsdl_desc_t *wsdl_desc,
+		    axis2_env_t **env);
+
+    /**
+     * Returns a Map of <code>wsdl_bindings</code> Objects keyed by the 
+     * <code>axis2_qname_t</code> of the Binding.
+     *
+     * @return
+     */
+    axis2_hash_t *(AXIS2_CALL *
+    get_bindings)(axis2_wsdl_desc_t *wsdl_desc,  
+                                    axis2_env_t **env);
+    
+    /**
+     * Sets the whole new set of Bindings to the axis2_wsd_desc.
+     *
+     * @param bindings
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_bindings)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    axis2_hash_t *bindings);
+    
+    /**
+     * The axis2_wsdl_binding Will be added to the map keyed  with its own qname.
+     * If the  axis2_wsdl_binding is null it will not be added.
+     * If the axis2_wsdl_binding is not null and  Binding name is null then
+     * error is set.
+     *
+     * @param binding <code>axis2_wsdl_binding</code> Object
+     */
+    axis2_status_t (AXIS2_CALL *
+    add_binding)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                struct axis2_wsdl_binding *binding);
+    
+    /**
+     * Retrives the <code>axis2_wsdl_binding_t</code> by its qname. Wil return NULL
+     * if <code>axis2_wsdl_binding_t</code> is not found.
+     *
+     * @param qname The qname of the Binding.
+     * @return
+     */
+    struct axis2_wsdl_binding *(AXIS2_CALL *
+    get_binding)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    axis2_qname_t *qname);
+    
+    /**
+     * The Interface component will be added to the map keyed with its own name.
+     * If the Interface is NULL it will not be added.
+     * If the interface name is NULL an Error will be set and return.
+     *
+     * @param interface
+     */
+    axis2_status_t (AXIS2_CALL *
+    add_interface)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    struct axis2_wsdl_interface *interface);
+    
+    /**
+     * The Interface will be returned if it exsists,
+     * otherwise null will be returned.
+     *
+     * @param qname qname of the Interface.
+     * @return The Interface with the relavent qname
+     */
+    struct axis2_wsdl_interface *(AXIS2_CALL *
+    get_interface)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    axis2_qname_t *qname);
+    
+    /**
+     * Method get_interfaces
+     *
+     * @return
+     */
+    axis2_hash_t *(AXIS2_CALL *
+    get_interfaces)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env);
+    
+    /**
+     * Method set_interfaces
+     *
+     * @param interfaces
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_interfaces)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                axis2_hash_t *interfaces);
+    
+    /**
+     * Method get_svcs
+     *
+     * @return
+     */
+    axis2_hash_t *(AXIS2_CALL *
+    get_svcs)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env);
+    
+    /**
+     * Method set_svcs
+     *
+     * @param svcs
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_svcs)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                axis2_hash_t *svcs);
+    
+    /**
+     * Will return the <code>axis2_wsdl_svc </code> if found otherwise return NULL.
+     *
+     * @param qname <code>qname</code> of the svc
+     * @return The svc with the relevant qname
+     */
+    struct axis2_wsdl_svc *(AXIS2_CALL *
+    get_svc)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    axis2_qname_t *qname);
+    
+    /**
+     * Will add the <code>axis2_wsdl_svc_t</code> to the map.
+     * If svc is NULL it will not be added.
+     * If the <code>axis2_wsdl_svc_t</code> name is NULL an error will be set.
+     *
+     * @param svc
+     */
+    axis2_status_t (AXIS2_CALL *
+    add_svc)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    struct axis2_wsdl_svc *svc);
+    
+    /**
+     * Method get_target_namespace
+     *
+     * @return
+     */
+    axis2_char_t *(AXIS2_CALL *
+    get_target_namespace)(axis2_wsdl_desc_t *wsdl_desc,
+                                            axis2_env_t **env);
+    
+    /**
+     * Method set_target_namespace
+     *
+     * @param target_namespace
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_target_namespace)(axis2_wsdl_desc_t *wsdl_desc,
+                                            axis2_env_t **env,
+                                            axis2_char_t *target_namespace);
+    
+    /**
+     * Method get_types
+     *
+     * @return
+     */
+    struct axis2_wsdl_types *(AXIS2_CALL *
+    get_types)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env);
+    
+    /**
+     * Method axis2_wsdl_desc_set_types
+     *
+     * @param types
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_types)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                struct axis2_wsdl_types *types);
+    
+    /**
+     * Gets the name attribute of the WSDL 1.1 Definitions Element
+     *
+     * @return
+     */
+    axis2_qname_t *(AXIS2_CALL *
+    get_wsdl1_def_name)(axis2_wsdl_desc_t *wsdl_desc,
+                                        axis2_env_t **env);
+    
+    /**
+     * Sets the name attribute of the WSDL 1.1 Definitions Element
+     *
+     * @param wsdl1_def_name
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_wsdl1_def_name)(axis2_wsdl_desc_t *wsdl_desc,
+                                        axis2_env_t **env,
+                                        axis2_qname_t *wsdl1_def_name);
+    
+    /**
+     * Will return the Namespace URI as a String if there exists an
+     * Namespace URI associated with the given prefix, in the Definition
+     * Component, Will return NULL if not found.
+     *
+     * @param prefix Prefix defined in the Definitions elemet in the WSDL file
+     * @return The Namespace URI for the prefix.
+     */
+    axis2_char_t *(AXIS2_CALL *
+    get_namespace)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env,
+                                    axis2_char_t *prefix);
+    
+    /**
+     * Will return all the Namespaces associated with the Definition
+     * Component and will be keyed by the Napespace Prefix.
+     *
+     * @return
+     */
+    axis2_hash_t *(AXIS2_CALL *
+    get_namespaces)(axis2_wsdl_desc_t *wsdl_desc,
+                                    axis2_env_t **env);
+    
+    /**
+     * Sets the Namespaces associated with the Difinition Component
+     * and they should be keyed by its Namespace Prefix.
+     *
+     * @param namespaces
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_namespaces)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                axis2_hash_t *namespaces);
+    
+    /**
+     * Returns the WSDL Imports in an <code>axis2_array_list_t</code>
+     *
+     * @return
+     */
+    axis2_array_list_t *(AXIS2_CALL *
+    get_imports)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t *env);
+    
+    /**
+     * Sets the imports as an <code>axis2_array_list_t</code>
+     *
+     * @param imports
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_imports)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                axis2_array_list_t *imports);
+    
+    /**
+     * Adds an import to the list.
+     *
+     * @param wsdl_import
+     */
+    axis2_status_t (AXIS2_CALL *
+    add_import)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                struct axis2_wsdl_import *wsdl_import);
+    
+    /**
+     * Returns the Includes in an <code>axis2_array_list_t</code>
+     *
+     * @return
+     */
+    axis2_array_list_t *(AXIS2_CALL *
+    get_includes)(axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t *env);
+    
+    /**
+     * Sets the includes as an <code>axis2_array_list_t</code>
+     *
+     * @param includes
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_includes) (axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                axis2_array_list_t *includes);
+    
+    /**
+     * Adds an wsdl include to the list.
+     *
+     * @param wsdl_include
+     */
+    axis2_status_t (AXIS2_CALL *
+    add_include) (axis2_wsdl_desc_t *wsdl_desc,
+                                axis2_env_t **env,
+                                struct axis2_wsdl_include *wsdl_include);
+    
+    struct axis2_wsdl_binding *(AXIS2_CALL *
+    get_first_binding) (axis2_wsdl_desc_t *wsdl_desc,
+                      axis2_env_t **env);
+
+};
+
+/** 
+ * @brief Wsdl container struct
+ *	Property for params  
+ */  
+AXIS2_DECLARE_DATA struct axis2_wsdl_desc
+{
+	axis2_wsdl_desc_ops_t *ops;
+    struct axis2_wsdl_component *component;
+};
+
+/**
+ * Creates wsdl property struct
+ * @return pointer to newly created wsdl property
+ */
+AXIS2_DECLARE(axis2_wsdl_desc_t *) 
+axis2_wsdl_desc_create (axis2_env_t **env);
+
+/*************************** Function macros **********************************/
+
+#define AXIS2_WSDL_DESC_FREE(wsdl_desc, env) \
+		((wsdl_desc)->ops->free (wsdl_desc, env))
+
+#define AXIS2_WSDL_DESC_GET_BINDINGS(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_bindings (wsdl_desc, env))
+
+#define AXIS2_WSDL_DESC_SET_BINDINGS(wsdl_desc, env, bindings) \
+		((wsdl_desc)->ops->set_bindings (wsdl_desc, env, bindings))
+
+#define AXIS2_WSDL_DESC_ADD_BINDING(wsdl_desc, env, binding) \
+		((wsdl_desc)->ops->add_binding (wsdl_desc, env, binding))
+
+#define AXIS2_WSDL_DESC_GET_BINDING(wsdl_desc, env, qname) \
+		((wsdl_desc)->ops->get_binding (wsdl_desc, env, qname))
+
+#define AXIS2_WSDL_DESC_ADD_INTERFACE(wsdl_desc, env, interface) \
+		((wsdl_desc)->ops->get_interface (wsdl_desc, env, interface))
+        
+#define AXIS2_WSDL_DESC_GET_INTERFACE(wsdl_desc, env, qname) \
+		((wsdl_desc)->ops->get_interface (wsdl_desc, env, qname))
+
+#define AXIS2_WSDL_DESC_GET_INTERFACES(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_interfaces (wsdl_desc, env))        
+
+#define AXIS2_WSDL_DESC_SET_INTERFACES(wsdl_desc, env, interfaces) \
+		((wsdl_desc)->ops->set_interfaces (wsdl_desc, env, interfaces))
+        
+#define AXIS2_WSDL_DESC_GET_SVCS(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_svcs (wsdl_desc, env))
+        
+#define AXIS2_WSDL_DESC_SET_SVCS(wsdl_desc, env, svcs) \
+		((wsdl_desc)->ops->set_svcs (wsdl_desc, env, svcs))
+        
+#define AXIS2_WSDL_DESC_GET_SVC(wsdl_desc, env, qname) \
+		((wsdl_desc)->ops->get_svc (wsdl_desc, env, qname))
+
+#define AXIS2_WSDL_DESC_ADD_SVC(wsdl_desc, env, svc) \
+		((wsdl_desc)->ops->add_svc (wsdl_desc, env, svc))
+
+#define AXIS2_WSDL_DESC_GET_TARGET_NAMESPACE(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_target_namespace (wsdl_desc, env))
+        
+#define AXIS2_WSDL_DESC_SET_TARGET_NAMESPACE(wsdl_desc, env, target_namespace) \
+		((wsdl_desc)->ops->set_target_namespace (wsdl_desc, env, target_namespace))
+        
+#define AXIS2_WSDL_DESC_GET_TYPES(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_types (wsdl_desc, env))
+        
+#define AXIS2_WSDL_DESC_SET_TYPES(wsdl_desc, env, types) \
+		((wsdl_desc)->ops->set_types (wsdl_desc, env, types))
+
+#define AXIS2_WSDL_DESC_GET_WSDL1_DEF_NAME(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_wsdl1_def_name (wsdl_desc, env))
+        
+#define AXIS2_WSDL_DESC_SET_WSDL1_DEF_NAME(wsdl_desc, env, wsdl1_def_qname) \
+		((wsdl_desc)->ops->set_wsdl1_def_name (wsdl_desc, env, wsdl1_def_qname))
+
+#define AXIS2_WSDL_DESC_GET_NAMESPACE(wsdl_desc, env, prefix) \
+		((wsdl_desc)->ops->get_namespace (wsdl_desc, env, prefix))
+
+#define AXIS2_WSDL_DESC_GET_NAMESPACES(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_namespaces (wsdl_desc, env))
+        
+#define AXIS2_WSDL_DESC_SET_NAMESPACES(wsdl_desc, env, namespaces) \
+		((wsdl_desc)->ops->set_namespace (wsdl_desc, env, namespaces))
+        
+#define AXIS2_WSDL_DESC_GET_IMPORTS(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_imports (wsdl_desc, env))
+        
+#define AXIS2_WSDL_DESC_SET_IMPORTS(wsdl_desc, env, imports) \
+		((wsdl_desc)->ops->set_imports (wsdl_desc, env, imports))
+
+#define AXIS2_WSDL_DESC_ADD_IMPORT(wsdl_desc, env, wsdl_import) \
+		((wsdl_desc)->ops->add_import (wsdl_desc, env, wsdl_import))
+        
+#define AXIS2_WSDL_DESC_GET_INCLUDES(wsdl_desc, env) \
+		((wsdl_desc)->ops->get_includes (wsdl_desc, env))
+
+#define AXIS2_WSDL_DESC_SET_INCLUDES(wsdl_desc, env, includes) \
+		((wsdl_desc)->ops->set_includes (wsdl_desc, env, includes))
+
+#define AXIS2_WSDL_DESC_ADD_INCLUDE(wsdl_desc, env, wsdl_include) \
+		((wsdl_desc)->ops->add_include (wsdl_desc, env, wsdl_include))
+        	
+/*************************** End of function macros ***************************/
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+#endif  /* AXIS2_WSDL_DESC_H */

Added: webservices/axis2/trunk/c/include/axis2_wsdl_extensible_attribute.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_extensible_attribute.h?rev=386002&view=auto
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_extensible_attribute.h (added)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_extensible_attribute.h Wed Mar 15 00:44:21 2006
@@ -0,0 +1,118 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_H
+#define AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_H
+
+/**
+ * @file axis2_wsdl_extensible_attribute.h
+ * @brief Axis2 Wsdl extensible component interface
+ */
+
+#include <axis2.h>
+#include <axis2_error.h>
+#include <axis2_defines.h>
+#include <axis2_env.h>
+#include <axis2_allocator.h>
+#include <axis2_qname.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct axis2_wsdl_extensible_attribute axis2_wsdl_extensible_attribute_t;
+typedef struct axis2_wsdl_extensible_attribute_ops axis2_wsdl_extensible_attribute_ops_t;
+
+/** @defgroup axis2_wsdl_extensible_attribute Wsdl Extensible Attribute
+ * @ingroup axis2_wsdl
+ * @{
+ */
+
+/** 
+ * @brief Wsdl Extensible Attribute ops struct
+ * Encapsulator struct for ops of axis2_wsdl_extensible_attribute
+ */
+AXIS2_DECLARE_DATA struct axis2_wsdl_extensible_attribute_ops
+{
+	/** De-allocate memory
+  	 * @return status code
+  	 */
+	axis2_status_t (AXIS2_CALL *free)(
+                    axis2_wsdl_extensible_attribute_t *wsdl_extensible_attribute,
+			        axis2_env_t **env);
+
+    axis2_qname_t *(AXIS2_CALL *
+    get_key) (axis2_wsdl_extensible_attribute_t *extensible_attribute,
+               axis2_env_t **env);
+    
+    axis2_status_t (AXIS2_CALL *
+    set_key) (axis2_wsdl_extensible_attribute_t *extensible_attribute,
+               axis2_env_t **env,
+               axis2_qname_t *key);
+    
+    axis2_qname_t *(AXIS2_CALL *
+    get_value) (axis2_wsdl_extensible_attribute_t *extensible_attribute,
+               axis2_env_t **env);
+    
+    axis2_status_t (AXIS2_CALL *
+    set_value) (axis2_wsdl_extensible_attribute_t *extensible_attribute,
+               axis2_env_t **env,
+               axis2_qname_t *value);
+};
+
+/** 
+ * @brief Wsdl container struct
+ *	Property for params  
+ */  
+AXIS2_DECLARE_DATA struct axis2_wsdl_extensible_attribute
+{
+	axis2_wsdl_extensible_attribute_ops_t *ops;
+};
+
+/**
+ * Creates wsdl property struct
+ * @return pointer to newly created wsdl property
+ */
+AXIS2_DECLARE(axis2_wsdl_extensible_attribute_t *) 
+axis2_wsdl_extensible_attribute_create (axis2_env_t **env);
+
+/*************************** Function macros **********************************/
+
+#define AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_FREE(extensible_attribute, env) \
+		((extensible_attribute)->ops->free (extensible_attribute, env))
+
+#define AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_GET_KEY(extensible_attribute, env) \
+		(extensible_attribute->ops->get_key (extensible_attribute, env))
+
+#define AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_SET_KEY(extensible_attribute, env, key) \
+		((extensible_attribute)->ops->set_key (extensible_attribute, env, key))       
+
+#define AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_GET_VALUE(extensible_attribute, env) \
+		(extensible_attribute->ops->get_value (extensible_attribute, env))
+
+#define AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_SET_VALUE(extensible_attribute, env, value) \
+		((extensible_attribute)->ops->set_value (extensible_attribute, env, value))       
+
+
+/*************************** End of function macros ***************************/
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+#endif  /* AXIS2_WSDL_EXTENSIBLE_ATTRIBUTE_H */

Added: webservices/axis2/trunk/c/include/axis2_wsdl_import.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_import.h?rev=386002&view=auto
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_import.h (added)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_import.h Wed Mar 15 00:44:21 2006
@@ -0,0 +1,141 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_WSDL_IMPORT_H
+#define AXIS2_WSDL_IMPORT_H
+
+/**
+ * @file axis2_wsdl_import.h
+ * @brief Axis2 Wsdl import interface
+ */
+
+#include <axis2.h>
+#include <axis2_error.h>
+#include <axis2_defines.h>
+#include <axis2_env.h>
+#include <axis2_allocator.h>
+#include <axis2_wsdl_component.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct axis2_wsdl_component;    
+typedef struct axis2_wsdl_import axis2_wsdl_import_t;
+typedef struct axis2_wsdl_import_ops axis2_wsdl_import_ops_t;
+
+/** @defgroup axis2_wsdl_import Wsdl Import
+ * @ingroup axis2_wsdl
+ * @{
+ */
+
+/** 
+ * @brief Wsdl Import ops struct
+ * Encapsulator struct for ops of axis2_wsdl_import
+ */
+AXIS2_DECLARE_DATA struct axis2_wsdl_import_ops
+{
+	/** De-allocate memory
+  	 * @return status code
+  	 */
+	axis2_status_t (AXIS2_CALL *
+    free)(axis2_wsdl_import_t *wsdl_import,
+	        axis2_env_t **env);
+                               
+    /**
+     * Method get_namespace
+     *
+     * @return namespace
+     */
+    axis2_char_t *(AXIS2_CALL *
+    get_namespace) (axis2_wsdl_import_t *wsdl_import,
+                                    axis2_env_t **env);
+                                    
+    /**
+     * Method set_namespace
+     *
+     * @param namespace
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_namespace) (axis2_wsdl_import_t *wsdl_import,
+                                    axis2_env_t **env,
+                                    axis2_char_t *namespace);
+    
+    
+    /**
+     * Method isRequired
+     *
+     * @return
+     */
+    axis2_char_t *(AXIS2_CALL *
+    get_location) (axis2_wsdl_import_t *wsdl_import,
+                                    axis2_env_t **env);
+                                    
+    /**
+     * Method set_location
+     *
+     * @param location
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_location) (axis2_wsdl_import_t *wsdl_import,
+                                    axis2_env_t **env,
+                                    axis2_char_t *location);  
+
+
+};
+
+/** 
+ * @brief Wsdl container struct
+ *	Property for params  
+ */  
+AXIS2_DECLARE_DATA struct axis2_wsdl_import
+{
+	axis2_wsdl_import_ops_t *ops;
+    struct axis2_wsdl_component *wsdl_component;
+};
+
+/**
+ * Creates wsdl import struct
+ * @return pointer to newly created wsdl import
+ */
+AXIS2_DECLARE(axis2_wsdl_import_t *) axis2_wsdl_import_create (axis2_env_t **env);
+
+/*************************** Function macros **********************************/
+
+#define AXIS2_WSDL_IMPORT_FREE(wsdl_import, env) \
+		((wsdl_import)->ops->free (wsdl_import, env))
+
+#define AXIS2_WSDL_IMPORT_GET_NAMESPACE(wsdl_import, env) \
+		((wsdl_import)->ops->get_namespace (wsdl_import, env))
+
+#define AXIS2_WSDL_IMPORT_SET_NAMESPACE(wsdl_import, env, namespace) \
+		((wsdl_import)->ops->set_namespace (wsdl_import, env, namespace))
+        
+#define AXIS2_WSDL_IMPORT_GET_LOCATION(wsdl_import, env) \
+		((wsdl_import)->ops->is_location (wsdl_import, env))
+
+#define AXIS2_WSDL_IMPORT_SET_LOCATION(wsdl_import, env, location) \
+		((wsdl_import)->ops->set_location (wsdl_import, env, location))        
+
+/*************************** End of function macros ***************************/
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+#endif  /* AXIS2_WSDL_IMPORT_H */

Added: webservices/axis2/trunk/c/include/axis2_wsdl_include.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_include.h?rev=386002&view=auto
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_include.h (added)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_include.h Wed Mar 15 00:44:21 2006
@@ -0,0 +1,141 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_WSDL_INCLUDE_H
+#define AXIS2_WSDL_INCLUDE_H
+
+/**
+ * @file axis2_wsdl_include.h
+ * @brief Axis2 Wsdl include interface
+ */
+
+#include <axis2.h>
+#include <axis2_error.h>
+#include <axis2_defines.h>
+#include <axis2_env.h>
+#include <axis2_allocator.h>
+#include <axis2_wsdl_component.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct axis2_wsdl_component;    
+typedef struct axis2_wsdl_include axis2_wsdl_include_t;
+typedef struct axis2_wsdl_include_ops axis2_wsdl_include_ops_t;
+
+/** @defgroup axis2_wsdl_include Wsdl Include
+ * @ingroup axis2_wsdl
+ * @{
+ */
+
+/** 
+ * @brief Wsdl Include ops struct
+ * Encapsulator struct for ops of axis2_wsdl_include
+ */
+AXIS2_DECLARE_DATA struct axis2_wsdl_include_ops
+{
+	/** De-allocate memory
+  	 * @return status code
+  	 */
+	axis2_status_t (AXIS2_CALL *
+    free)(axis2_wsdl_include_t *wsdl_include,
+	        axis2_env_t **env);
+                               
+    /**
+     * Method get_namespace
+     *
+     * @return namespace
+     */
+    axis2_char_t *(AXIS2_CALL *
+    get_namespace) (axis2_wsdl_include_t *wsdl_include,
+                                    axis2_env_t **env);
+                                    
+    /**
+     * Method set_namespace
+     *
+     * @param namespace
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_namespace) (axis2_wsdl_include_t *wsdl_include,
+                                    axis2_env_t **env,
+                                    axis2_char_t *namespace);
+    
+    
+    /**
+     * Method isRequired
+     *
+     * @return
+     */
+    axis2_char_t *(AXIS2_CALL *
+    get_location) (axis2_wsdl_include_t *wsdl_include,
+                                    axis2_env_t **env);
+                                    
+    /**
+     * Method set_location
+     *
+     * @param location
+     */
+    axis2_status_t (AXIS2_CALL *
+    set_location) (axis2_wsdl_include_t *wsdl_include,
+                                    axis2_env_t **env,
+                                    axis2_char_t *location);  
+
+
+};
+
+/** 
+ * @brief Wsdl container struct
+ *	Property for params  
+ */  
+AXIS2_DECLARE_DATA struct axis2_wsdl_include
+{
+	axis2_wsdl_include_ops_t *ops;
+    struct axis2_wsdl_component *wsdl_component;
+};
+
+/**
+ * Creates wsdl include struct
+ * @return pointer to newly created wsdl include
+ */
+AXIS2_DECLARE(axis2_wsdl_include_t *) axis2_wsdl_include_create (axis2_env_t **env);
+
+/*************************** Function macros **********************************/
+
+#define AXIS2_WSDL_INCLUDE_FREE(wsdl_include, env) \
+		((wsdl_include)->ops->free (wsdl_include, env))
+
+#define AXIS2_WSDL_INCLUDE_GET_NAMESPACE(wsdl_include, env) \
+		((wsdl_include)->ops->get_namespace (wsdl_include, env))
+
+#define AXIS2_WSDL_INCLUDE_SET_NAMESPACE(wsdl_include, env, namespace) \
+		((wsdl_include)->ops->set_namespace (wsdl_include, env, namespace))
+        
+#define AXIS2_WSDL_INCLUDE_GET_LOCATION(wsdl_include, env) \
+		((wsdl_include)->ops->is_location (wsdl_include, env))
+
+#define AXIS2_WSDL_INCLUDE_SET_LOCATION(wsdl_include, env, location) \
+		((wsdl_include)->ops->set_location (wsdl_include, env, location))        
+
+/*************************** End of function macros ***************************/
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+#endif  /* AXIS2_WSDL_INCLUDE_H */

Added: webservices/axis2/trunk/c/include/axis2_wsdl_types.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_types.h?rev=386002&view=auto
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_types.h (added)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_types.h Wed Mar 15 00:44:21 2006
@@ -0,0 +1,125 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_WSDL_TYPES_H
+#define AXIS2_WSDL_TYPES_H
+
+/**
+ * @file axis2_wsdl_types.h
+ * @brief Axis2 Wsdl interface interface
+ */
+
+#include <axis2.h>
+#include <axis2_error.h>
+#include <axis2_defines.h>
+#include <axis2_env.h>
+#include <axis2_allocator.h>
+#include <axis2_hash.h>
+#include <axis2_linked_list.h>
+#include <axis2_qname.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+    
+struct axis2_wsdl_extensible_element;   
+struct axis2_wsdl_extensible_component;    
+typedef struct axis2_wsdl_types axis2_wsdl_types_t;
+typedef struct axis2_wsdl_types_ops axis2_wsdl_types_ops_t;
+
+/** @defgroup axis2_wsdl_types Wsdl Types
+ * @ingroup axis2_wsdl
+ * @{
+ */
+
+
+/** 
+ * @brief Wsdl Types ops struct
+ * Encapsulator struct for ops of axis2_wsdl_types
+ */
+AXIS2_DECLARE_DATA struct axis2_wsdl_types_ops
+{
+	/** De-allocate memory
+  	 * @return status code
+  	 */
+	axis2_status_t (AXIS2_CALL *
+    free)(axis2_wsdl_types_t *wsdl_types,
+		    axis2_env_t **env);
+    /**
+     * Adds the <code>ExtensionElement</code> to the map keyed with the 
+     * <code>axis2_qname_t</code>
+     *
+     * @param element
+     */
+    axis2_status_t (AXIS2_CALL *
+    add_element) (axis2_wsdl_types_t *wsdl_types,
+                    axis2_env_t **env,
+                    struct axis2_wsdl_extensible_element *element);
+
+
+    /**
+     * Will return the first Element with the given <code>QName</code>
+     * Returns null if not found.
+     *
+     * @param qname
+     * @return
+     */
+    struct axis2_wsdl_extensible_element *(AXIS2_CALL *
+    get_first_element) (axis2_wsdl_types_t *wsdl_types,
+                        axis2_env_t **env,
+                        axis2_qname_t *qname);
+
+
+};
+
+/** 
+ * @brief Wsdl container struct
+ *	Property for params  
+ */  
+AXIS2_DECLARE_DATA struct axis2_wsdl_types
+{
+	axis2_wsdl_types_ops_t *ops;
+    struct axis2_wsdl_extensible_component *ext_component;
+};
+
+/**
+ * Creates wsdl property struct
+ * @return pointer to newly created wsdl property
+ */
+AXIS2_DECLARE(axis2_wsdl_types_t *) 
+axis2_wsdl_types_create (axis2_env_t **env);
+
+/*************************** Function macros **********************************/
+
+#define AXIS2_WSDL_TYPES_FREE(wsdl_types, env) \
+		((wsdl_types)->ops->free (wsdl_types, env))
+
+#define AXIS2_WSDL_TYPES_ADD_ELEMENT(wsdl_types, env, element) \
+		((wsdl_types)->ops->add_element (wsdl_types, env, element))
+
+#define AXIS2_WSDL_TYPES_GET_FIRST_ELEMENT(wsdl_types, env, qname) \
+		((wsdl_types)->ops->get_first_element (wsdl_types, env, qname))
+
+	
+/*************************** End of function macros ***************************/
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+#endif  /* AXIS2_WSDL_TYPES_H */