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/07/06 08:02:31 UTC
svn commit: r419452 [4/46] - in /webservices/axis2/trunk/c/woden: ./
include/ samples/ samples/wsdl10/ src/ src/builder/ src/builder/wsdl10/
src/schema/ src/types/ src/util/ src/wsdl/ src/wsdl/enumeration/
src/wsdl10/ src/wsdl10/enumeration/ src/wsdl10...
Added: webservices/axis2/trunk/c/woden/include/woden_feature.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_feature.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_feature.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_feature.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,204 @@
+/*
+ * 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 WODEN_FEATURE_H
+#define WODEN_FEATURE_H
+
+/**
+ * @file woden_feature.h
+ * @brief Axis2 Feature Interface
+ * An abstract superclass for WSDL 2.0 elements which can have <documentation>
+ * child elements. That is, all WSDL 2.0 elements except the <documentation>
+ * element itself. Defines accessor methods for manipulating DocumentationElements.
+ *
+ */
+
+#include <woden.h>
+#include <woden_feature_element.h>
+#include <woden_wsdl_obj.h>
+#include <woden_documentable.h>
+#include <woden_nested_component.h>
+
+/** @defgroup woden_feature Feature
+ * @ingroup woden
+ * @{
+ */
+
+typedef union woden_feature_base woden_feature_base_t;
+typedef struct woden_feature woden_feature_t;
+typedef struct woden_feature_ops woden_feature_ops_t;
+struct woden_documentation_element;
+struct woden_wsdl_component;
+struct woden_documentable;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_feature_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (void *feature,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (void *feature,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *feature,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ struct woden_documentable *(AXIS2_CALL *
+ get_base_impl) (
+ void *feature,
+ const axis2_env_t *env);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_ref) (
+ void *feature,
+ const axis2_env_t *env);
+
+ axis2_bool_t (AXIS2_CALL *
+ is_required) (
+ void *feature,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_parent) (
+ void *feature,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ to_element) (
+ void *feature,
+ const axis2_env_t *env);
+
+};
+
+union woden_feature_base
+{
+ woden_documentable_t documentable;
+ woden_feature_element_t feature_element;
+ woden_nested_component_t nested_component;
+};
+
+struct woden_feature
+{
+ woden_feature_base_t base;
+ woden_feature_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_create(
+ const axis2_env_t *env);
+
+
+/***************************Woden C Internal Methods***************************/
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_feature_element(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_nested_element(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_documentable_element(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_documentable(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_wsdl_obj(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_nested_component(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_wsdl_component(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_element_extensible(
+ void *feature,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_feature_t * AXIS2_CALL
+woden_feature_to_attr_extensible(
+ void *feature,
+ const axis2_env_t *env);
+
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_feature_resolve_methods(
+ woden_feature_t *feature,
+ const axis2_env_t *env,
+ woden_feature_t *feature_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_FEATURE_FREE(feature, env) \
+ (((woden_feature_t *) feature)->ops->free(feature, env))
+
+#define WODEN_FEATURE_SUPER_OBJS(feature, env) \
+ (((woden_feature_t *) feature)->ops->super_objs(feature, env))
+
+#define WODEN_FEATURE_TYPE(feature, env) \
+ (((woden_feature_t *) feature)->ops->type(feature, env))
+
+#define WODEN_FEATURE_GET_BASE_IMPL(feature, env) \
+ (((woden_feature_t *) feature)->ops->get_base_impl(feature, env))
+
+#define WODEN_FEATURE_GET_REF(feature, env) \
+ (((woden_feature_t *) feature)->\
+ get_ref(feature, env))
+
+#define WODEN_FEATURE_IS_REQUIRED(feature, env) \
+ (((woden_feature_t *) feature)->\
+ is_required(feature, env))
+
+#define WODEN_FEATURE_GET_PARENT(feature, env) \
+ (((woden_feature_t *) feature)->ops->\
+ get_parent(feature, env))
+
+#define WODEN_FEATURE_TO_ELEMENT(feature, env) \
+ (((woden_feature_t *) feature)->ops->\
+ to_element(feature, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_FEATURE_H */
Added: webservices/axis2/trunk/c/woden/include/woden_feature_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_feature_element.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_feature_element.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_feature_element.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,136 @@
+/*
+ * 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 WODEN_FEATURE_ELEMENT_H
+#define WODEN_FEATURE_ELEMENT_H
+
+/**
+ * @file woden_feature_element.h
+ * @brief Axis2 Feature Element Interface
+ * Represents the <feature> element.
+ *
+ */
+
+#include <axis2_allocator.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+#include <axis2_string.h>
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_qname.h>
+#include <axis2_uri.h>
+#include <woden.h>
+#include <woden_documentable_element.h>
+#include <woden_nested_element.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct woden_feature_element woden_feature_element_t;
+typedef struct woden_feature_element_ops woden_feature_element_ops_t;
+typedef union woden_feature_element_base woden_feature_element_base_t;
+
+/** @defgroup woden_feature_element Feature Element
+ * @ingroup woden
+ * @{
+ */
+
+struct woden_feature_element_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *doc_el,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *doc_el,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_ref) (void *doc_el,
+ const axis2_env_t *env,
+ axis2_uri_t *uri);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_ref) (void *doc_el,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_required) (void *doc_el,
+ const axis2_env_t *env,
+ axis2_bool_t required);
+
+ axis2_bool_t (AXIS2_CALL *
+ is_required) (void *doc_el,
+ const axis2_env_t *env);
+
+};
+
+union woden_feature_element_base
+{
+ woden_documentable_element_t documentable_element;
+ woden_nested_element_t nested_element;
+};
+
+struct woden_feature_element
+{
+ woden_feature_element_base_t base;
+ woden_feature_element_ops_t *ops;
+};
+
+/************************Woden C Internal Methods******************************/
+axis2_status_t AXIS2_CALL
+woden_feature_element_resolve_methods(
+ woden_feature_element_t *feature_element,
+ const axis2_env_t *env,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_FEATURE_ELEMENT_FREE(doc_el, env) \
+ (((woden_feature_element_t *) doc_el)->ops->\
+ free (doc_el, env))
+
+#define WODEN_FEATURE_ELEMENT_TYPE(doc_el, env) \
+ (((woden_feature_element_t *) doc_el)->ops->\
+ type (doc_el, env))
+
+#define WODEN_FEATURE_ELEMENT_SET_REF(doc_el, env, uri) \
+ (((woden_feature_element_t *) doc_el)->ops->\
+ set_ref(doc_el, env, uri))
+
+#define WODEN_FEATURE_ELEMENT_GET_REF(doc_el, env) \
+ (((woden_feature_element_t *) doc_el)->ops->\
+ get_ref(doc_el, env))
+
+#define WODEN_FEATURE_ELEMENT_SET_REQUIRED(doc_el, env, required) \
+ (((woden_feature_element_t *) doc_el)->ops->\
+ set_required(doc_el, env, required))
+
+#define WODEN_FEATURE_ELEMENT_IS_REQUIRED(doc_el, env) \
+ (((woden_feature_element_t *) doc_el)->ops->\
+ is_required(doc_el, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_FEATURE_ELEMENT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_generic_obj.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_generic_obj.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_generic_obj.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_generic_obj.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,120 @@
+/*
+ * 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_GENERIC_OBJ_H
+#define AXIS2_GENERIC_OBJ_H
+
+#include <axis2_defines.h>
+#include <axis2_error.h>
+#include <axis2_env.h>
+#include <axis2_utils.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct axis2_generic_obj axis2_generic_obj_t;
+typedef struct axis2_generic_obj_ops axis2_generic_obj_ops_t;
+
+/**
+ * @defgroup axis2_generic_obj Generic Obj
+ * @ingroup woden_util
+ * @{
+ */
+
+/**
+ * @brief Generic Obj ops struct
+ * Encapsulator struct for ops of woden_generic_obj
+ */
+AXIS2_DECLARE_DATA struct axis2_generic_obj_ops
+{
+
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ axis2_generic_obj_t *generic_obj,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_scope) (
+ axis2_generic_obj_t *generic_obj,
+ const axis2_env_t *env,
+ axis2_scope_t scope);
+
+ axis2_status_t (AXIS2_CALL *
+ set_free_func) (
+ axis2_generic_obj_t *generic_obj,
+ const axis2_env_t *env,
+ AXIS2_FREE_VOID_ARG free_func);
+
+ axis2_status_t (AXIS2_CALL *
+ set_value) (
+ axis2_generic_obj_t *generic_obj,
+ const axis2_env_t *env,
+ void *value);
+
+ void *(AXIS2_CALL *
+ get_value) (
+ axis2_generic_obj_t *generic_obj,
+ const axis2_env_t *env);
+
+};
+
+
+/**
+ * @brief
+ */
+AXIS2_DECLARE_DATA struct axis2_generic_obj
+{
+ axis2_generic_obj_ops_t *ops;
+};
+
+/**
+ * create new generic_obj
+ * @return generic_obj newly created generic_obj
+ */
+AXIS2_EXTERN axis2_generic_obj_t * AXIS2_CALL
+axis2_generic_obj_create(const axis2_env_t *env);
+
+/*************************** Function macros **********************************/
+
+#define AXIS2_GENERIC_OBJ_FREE(generic_obj, env) \
+ ((generic_obj)->ops->free (generic_obj, env))
+
+#define AXIS2_GENERIC_OBJ_SET_FREE_FUNC(generic_obj, env, free_func) \
+ ((generic_obj)->ops->set_free_func (generic_obj, env, free_func))
+
+#define AXIS2_GENERIC_OBJ_SET_SCOPE(generic_obj, env, scope) \
+ ((generic_obj)->ops->set_scope (generic_obj, env, scope))
+
+#define AXIS2_GENERIC_OBJ_SET_VALUE(generic_obj, env, value) \
+ ((generic_obj)->ops->set_value (generic_obj, env, value))
+
+#define AXIS2_GENERIC_OBJ_GET_VALUE(generic_obj, env) \
+ ((generic_obj)->ops->get_value(generic_obj, env))
+
+/*************************** End of function macros ***************************/
+
+
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* AXIS2_GENERIC_OBJ_H */
Added: webservices/axis2/trunk/c/woden/include/woden_import.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_import.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_import.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_import.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,155 @@
+/*
+ * 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 WODEN_IMPORT_H
+#define WODEN_IMPORT_H
+
+/**
+ * @file woden_import.h
+ * @brief Axis2 Import Interface
+ * This class implements the <wsdl:import> element.
+ *
+ */
+
+#include <woden.h>
+#include <woden_import_element.h>
+#include <woden_wsdl_obj.h>
+#include <woden_wsdl_ref.h>
+
+/** @defgroup woden_import Import
+ * @ingroup woden
+ * @{
+ */
+
+typedef union woden_import_base woden_import_base_t;
+typedef struct woden_import woden_import_t;
+typedef struct woden_import_ops woden_import_ops_t;
+struct woden_wsdl_ref;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_import_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (void *import,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (void *import,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *import,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ struct woden_wsdl_ref *(AXIS2_CALL *
+ get_base_impl) (
+ void *import,
+ const axis2_env_t *env);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_namespace) (
+ void *import,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_namespace) (
+ void *import,
+ const axis2_env_t *env,
+ axis2_uri_t *ns_uri);
+
+};
+
+union woden_import_base
+{
+ woden_import_element_t import_element;
+ woden_wsdl_ref_t wsdl_ref;
+};
+
+struct woden_import
+{
+ woden_import_base_t base;
+ woden_import_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_import_t * AXIS2_CALL
+woden_import_create(
+ const axis2_env_t *env);
+
+
+/***************************Woden C Internal Methods***************************/
+AXIS2_EXTERN woden_import_t * AXIS2_CALL
+woden_import_to_import_element(
+ void *import,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_import_t * AXIS2_CALL
+woden_import_to_wsdl_ref(
+ void *import,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_import_t * AXIS2_CALL
+woden_import_to_attr_extensible(
+ void *import,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_import_t * AXIS2_CALL
+woden_import_to_element_extensible(
+ void *import,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_import_resolve_methods(
+ woden_import_t *import,
+ const axis2_env_t *env,
+ woden_import_t *import_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_IMPORT_FREE(import, env) \
+ (((woden_import_t *) import)->ops->free(import, env))
+
+#define WODEN_IMPORT_SUPER_OBJS(import, env) \
+ (((woden_import_t *) import)->ops->super_objs(import, env))
+
+#define WODEN_IMPORT_TYPE(import, env) \
+ (((woden_import_t *) import)->ops->type(import, env))
+
+#define WODEN_IMPORT_GET_BASE_IMPL(import, env) \
+ (((woden_import_t *) import)->ops->get_base_impl(import, env))
+
+#define WODEN_IMPORT_GET_NAMESPACE(import, env) \
+ (((woden_import_t *) import)->ops->\
+ get_namespace(import, env))
+
+#define WODEN_IMPORT_SET_NAMESPACE(import, env, ns_uri) \
+ (((woden_import_t *) import)->ops->\
+ set_namespace(import, env, ns_uri))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_IMPORT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_import_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_import_element.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_import_element.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_import_element.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,151 @@
+/*
+ * 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 WODEN_IMPORT_ELEMENT_H
+#define WODEN_IMPORT_ELEMENT_H
+
+/**
+ * @file woden_import_element.h
+ * @brief Axis2 Import Element Interface
+ * This interface represents a <import> XML element
+ * information item. It declares the behaviour required to support
+ * parsing, creating and manipulating a <import> element.
+ *
+ */
+
+#include <axis2_allocator.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+#include <axis2_string.h>
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_qname.h>
+#include <axis2_uri.h>
+#include <woden.h>
+#include <woden_documentable_element.h>
+#include <woden_nested_element.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct woden_import_element woden_import_element_t;
+typedef struct woden_import_element_ops woden_import_element_ops_t;
+typedef union woden_import_element_base woden_import_element_base_t;
+
+/** @defgroup woden_import_element Import Element
+ * @ingroup woden
+ * @{
+ */
+
+struct woden_import_element_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *import_el,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *import_el,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_namespace) (void *import_el,
+ const axis2_env_t *env,
+ axis2_uri_t *ns_uri);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_namespace) (void *import_el,
+ const axis2_env_t *env);
+
+
+ axis2_status_t (AXIS2_CALL *
+ set_location) (void *import_el,
+ const axis2_env_t *env,
+ axis2_uri_t *loc_uri);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_location) (void *import_el,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_desc_element) (void *import_el,
+ const axis2_env_t *env,
+ void *desc);
+
+ void *(AXIS2_CALL *
+ get_desc_element) (void *import_el,
+ const axis2_env_t *env);
+
+};
+
+
+struct woden_import_element
+{
+ woden_documentable_element_t documentable_element;
+ woden_import_element_ops_t *ops;
+};
+
+/************************Woden C Internal Methods******************************/
+axis2_status_t AXIS2_CALL
+woden_import_element_resolve_methods(
+ woden_import_element_t *import_element,
+ const axis2_env_t *env,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_IMPORT_ELEMENT_FREE(import_el, env) \
+ (((woden_import_element_t *) import_el)->ops->\
+ free (import_el, env))
+
+#define WODEN_IMPORT_ELEMENT_TYPE(import_el, env) \
+ (((woden_import_element_t *) import_el)->ops->\
+ type (import_el, env))
+
+#define WODEN_IMPORT_ELEMENT_SET_NAMESPACE(import_el, env, ns_uri) \
+ (((woden_import_element_t *) import_el)->ops->\
+ set_namespace(import_el, env, ns_uri))
+
+#define WODEN_IMPORT_ELEMENT_GET_NAMESPACE(import_el, env) \
+ (((woden_import_element_t *) import_el)->ops->\
+ get_namespace(import_el, env))
+
+#define WODEN_IMPORT_ELEMENT_SET_LOCATION(import_el, env, loc_uri) \
+ (((woden_import_element_t *) import_el)->ops->\
+ set_location(import_el, env, loc_uri))
+
+#define WODEN_IMPORT_ELEMENT_GET_LOCATION(import_el, env) \
+ (((woden_import_element_t *) import_el)->ops->\
+ get_location(import_el, env))
+
+#define WODEN_IMPORT_ELEMENT_SET_DESC_ELEMENT(import_el, env, desc) \
+ (((woden_import_element_t *) import_el)->ops->\
+ set_desc_element(import_el, env, desc))
+
+#define WODEN_IMPORT_ELEMENT_GET_DESC_ELEMENT(import_el, env) \
+ (((woden_import_element_t *) import_el)->ops->\
+ get_desc_element(import_el, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_IMPORT_ELEMENT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_imported_schema.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_imported_schema.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_imported_schema.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_imported_schema.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,134 @@
+/*
+ * 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 WODEN_IMPORTED_SCHEMA_H
+#define WODEN_IMPORTED_SCHEMA_H
+
+/**
+ * @file woden_imported_schema.h
+ * @brief Axis2 Imported Schema Interface
+ * This interface represents a schema import, <xs:import>. It
+ * extends the abstract class SchemaImpl, adding support for the
+ * <code>schemaLocation</code> attribute.
+ */
+
+#include <woden_schema.h>
+
+/** @defgroup woden_imported_schema Imported Schema
+ * @ingroup woden
+ * @{
+ */
+
+typedef struct woden_imported_schema woden_imported_schema_t;
+typedef struct woden_imported_schema_ops woden_imported_schema_ops_t;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_imported_schema_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *schema,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (
+ void *schema,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (
+ void *schema,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ woden_schema_t *(AXIS2_CALL *
+ get_base_impl) (
+ void *schema,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_location) (
+ void *schema,
+ const axis2_env_t *env,
+ struct axis2_uri *location);
+
+ struct axis2_uri *(AXIS2_CALL *
+ get_location) (
+ void *schema,
+ const axis2_env_t *env);
+
+
+};
+
+struct woden_imported_schema
+{
+ woden_schema_t schema;
+ woden_imported_schema_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_imported_schema_t * AXIS2_CALL
+woden_imported_schema_create(
+ const axis2_env_t *env);
+
+/************************Woden C Internal Methods******************************/
+AXIS2_EXTERN woden_imported_schema_t * AXIS2_CALL
+woden_imported_schema_to_schema(
+ void *schema,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_imported_schema_resolve_methods(
+ woden_imported_schema_t *schema,
+ const axis2_env_t *env,
+ woden_imported_schema_t *schema_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_IMPORTED_SCHEMA_FREE(schema, env) \
+ (((woden_imported_schema_t *) schema)->ops->free(schema, env))
+
+#define WODEN_IMPORTED_SCHEMA_SUPER_OBJS(schema, env) \
+ (((woden_imported_schema_t *) schema)->ops->super_objs(schema, env))
+
+#define WODEN_IMPORTED_SCHEMA_TYPE(schema, env) \
+ (((woden_imported_schema_t *) schema)->ops->type(schema, env))
+
+#define WODEN_IMPORTED_SCHEMA_GET_BASE_IMPL(schema, env) \
+ (((woden_imported_schema_t *) schema)->ops->get_base_impl(schema, \
+ env))
+
+#define WODEN_IMPORTED_SCHEMA_SET_LOCATION(schema, env, location) \
+ (((woden_imported_schema_t *) schema)->ops->set_location(schema, \
+ env, location))
+
+#define WODEN_IMPORTED_SCHEMA_GET_LOCATION(schema, env) \
+ (((woden_imported_schema_t *) schema)->ops->get_location(schema, \
+ env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_IMPORTED_SCHEMA_H */
Added: webservices/axis2/trunk/c/woden/include/woden_include.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_include.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_include.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_include.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,140 @@
+/*
+ * 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 WODEN_INCLUDE_H
+#define WODEN_INCLUDE_H
+
+/**
+ * @file woden_include.h
+ * @brief Axis2 Include Interface
+ * This class implements the <wsdl:include> element.
+ *
+ */
+
+#include <woden.h>
+#include <woden_include_element.h>
+#include <woden_wsdl_obj.h>
+#include <woden_wsdl_ref.h>
+
+/** @defgroup woden_include Include
+ * @ingroup woden
+ * @{
+ */
+
+typedef union woden_include_base woden_include_base_t;
+typedef struct woden_include woden_include_t;
+typedef struct woden_include_ops woden_include_ops_t;
+struct woden_wsdl_ref;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_include_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (void *include,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (void *include,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *include,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ struct woden_wsdl_ref *(AXIS2_CALL *
+ get_base_impl) (
+ void *include,
+ const axis2_env_t *env);
+
+ /* No additional definitions required. This class inherits all of its behaviour
+ * from woden_wsdl_ref. We just need this subclass so we can create an
+ * object representing include_element, which maps to <wsdl:include>.
+ */
+};
+
+union woden_include_base
+{
+ woden_include_element_t include_element;
+ woden_wsdl_ref_t wsdl_ref;
+};
+
+struct woden_include
+{
+ woden_include_base_t base;
+ woden_include_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_include_t * AXIS2_CALL
+woden_include_create(
+ const axis2_env_t *env);
+
+
+/***************************Woden C Internal Methods***************************/
+AXIS2_EXTERN woden_include_t * AXIS2_CALL
+woden_include_to_include_element(
+ void *include,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_include_t * AXIS2_CALL
+woden_include_to_wsdl_ref(
+ void *include,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_include_t * AXIS2_CALL
+woden_include_to_attr_extensible(
+ void *include,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_include_t * AXIS2_CALL
+woden_include_to_element_extensible(
+ void *include,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_include_resolve_methods(
+ woden_include_t *include,
+ const axis2_env_t *env,
+ woden_include_t *include_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INCLUDE_FREE(include, env) \
+ (((woden_include_t *) include)->ops->free(include, env))
+
+#define WODEN_INCLUDE_SUPER_OBJS(include, env) \
+ (((woden_include_t *) include)->ops->super_objs(include, env))
+
+#define WODEN_INCLUDE_TYPE(include, env) \
+ (((woden_include_t *) include)->ops->type(include, env))
+
+#define WODEN_INCLUDE_GET_BASE_IMPL(include, env) \
+ (((woden_include_t *) include)->ops->get_base_impl(include, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INCLUDE_H */
Added: webservices/axis2/trunk/c/woden/include/woden_include_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_include_element.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_include_element.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_include_element.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,133 @@
+/*
+ * 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 WODEN_INCLUDE_ELEMENT_H
+#define WODEN_INCLUDE_ELEMENT_H
+
+/**
+ * @file woden_include_element.h
+ * @brief Axis2 Include Element Interface
+ * This interface represents a <include> XML element
+ * information item. It declares the behaviour required to support
+ * parsing, creating and manipulating a <include> element.
+ *
+ */
+
+#include <axis2_allocator.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+#include <axis2_string.h>
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_qname.h>
+#include <axis2_uri.h>
+#include <woden.h>
+#include <woden_documentable_element.h>
+#include <woden_nested_element.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct woden_include_element woden_include_element_t;
+typedef struct woden_include_element_ops woden_include_element_ops_t;
+typedef union woden_include_element_base woden_include_element_base_t;
+
+/** @defgroup woden_include_element Include Element
+ * @ingroup woden
+ * @{
+ */
+
+struct woden_include_element_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *include_el,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *include_el,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_location) (void *include_el,
+ const axis2_env_t *env,
+ axis2_uri_t *loc_uri);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_location) (void *include_el,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_desc_element) (void *include_el,
+ const axis2_env_t *env,
+ void *desc);
+
+ void *(AXIS2_CALL *
+ get_desc_element) (void *include_el,
+ const axis2_env_t *env);
+
+};
+
+
+struct woden_include_element
+{
+ woden_documentable_element_t documentable_element;
+ woden_include_element_ops_t *ops;
+};
+
+/************************Woden C Internal Methods******************************/
+axis2_status_t AXIS2_CALL
+woden_include_element_resolve_methods(
+ woden_include_element_t *include_element,
+ const axis2_env_t *env,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INCLUDE_ELEMENT_FREE(include_el, env) \
+ (((woden_include_element_t *) include_el)->ops->\
+ free (include_el, env))
+
+#define WODEN_INCLUDE_ELEMENT_TYPE(include_el, env) \
+ (((woden_include_element_t *) include_el)->ops->\
+ type (include_el, env))
+
+#define WODEN_INCLUDE_ELEMENT_SET_LOCATION(include_el, env, loc_uri) \
+ (((woden_include_element_t *) include_el)->ops->\
+ set_location(include_el, env, loc_uri))
+
+#define WODEN_INCLUDE_ELEMENT_GET_LOCATION(include_el, env) \
+ (((woden_include_element_t *) include_el)->ops->\
+ get_location(include_el, env))
+
+#define WODEN_INCLUDE_ELEMENT_SET_DESC_ELEMENT(include_el, env, desc) \
+ (((woden_include_element_t *) include_el)->ops->\
+ set_desc_element(include_el, env, desc))
+
+#define WODEN_INCLUDE_ELEMENT_GET_DESC_ELEMENT(include_el, env) \
+ (((woden_include_element_t *) include_el)->ops->\
+ get_desc_element(include_el, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INCLUDE_ELEMENT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_inlined_schema.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_inlined_schema.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_inlined_schema.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_inlined_schema.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,134 @@
+/*
+ * 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 WODEN_INLINED_SCHEMA_H
+#define WODEN_INLINED_SCHEMA_H
+
+/**
+ * @file woden_inlined_schema.h
+ * @brief Axis2 Inlined Schema Interface
+ * This class represents an inlined schema, <xs:schema>.
+ * It extends the abstract class schema, adding support for the
+ * <code>id</code> attribute.
+ */
+
+#include <woden_schema.h>
+
+/** @defgroup woden_inlined_schema Inlined Schema
+ * @ingroup woden
+ * @{
+ */
+
+typedef struct woden_inlined_schema woden_inlined_schema_t;
+typedef struct woden_inlined_schema_ops woden_inlined_schema_ops_t;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_inlined_schema_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *schema,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (
+ void *schema,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (
+ void *schema,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ woden_schema_t *(AXIS2_CALL *
+ get_base_impl) (
+ void *schema,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_id) (
+ void *schema,
+ const axis2_env_t *env,
+ axis2_char_t *id);
+
+ axis2_char_t *(AXIS2_CALL *
+ get_id) (
+ void *schema,
+ const axis2_env_t *env);
+
+
+};
+
+struct woden_inlined_schema
+{
+ woden_schema_t schema;
+ woden_inlined_schema_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_inlined_schema_t * AXIS2_CALL
+woden_inlined_schema_create(
+ const axis2_env_t *env);
+
+/************************Woden C Internal Methods******************************/
+AXIS2_EXTERN woden_inlined_schema_t * AXIS2_CALL
+woden_inlined_schema_to_schema(
+ void *schema,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_inlined_schema_resolve_methods(
+ woden_inlined_schema_t *schema,
+ const axis2_env_t *env,
+ woden_inlined_schema_t *schema_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INLINED_SCHEMA_FREE(schema, env) \
+ (((woden_inlined_schema_t *) schema)->ops->free(schema, env))
+
+#define WODEN_INLINED_SCHEMA_SUPER_OBJS(schema, env) \
+ (((woden_inlined_schema_t *) schema)->ops->super_objs(schema, env))
+
+#define WODEN_INLINED_SCHEMA_TYPE(schema, env) \
+ (((woden_inlined_schema_t *) schema)->ops->type(schema, env))
+
+#define WODEN_INLINED_SCHEMA_GET_BASE_IMPL(schema, env) \
+ (((woden_inlined_schema_t *) schema)->ops->get_base_impl(schema, \
+ env))
+
+#define WODEN_INLINED_SCHEMA_SET_ID(schema, env, id) \
+ (((woden_inlined_schema_t *) schema)->ops->set_id(schema, \
+ env, id))
+
+#define WODEN_INLINED_SCHEMA_GET_ID(schema, env) \
+ (((woden_inlined_schema_t *) schema)->ops->get_id(schema, \
+ env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INLINED_SCHEMA_H */
Added: webservices/axis2/trunk/c/woden/include/woden_interface.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_interface.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_interface.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_interface.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,198 @@
+/*
+ * 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 WODEN_INTERFACE_H
+#define WODEN_INTERFACE_H
+
+/**
+ * @file woden_interface.h
+ * @brief Axis2 Interface Interface
+ * Represents the Interface component from the WSDL 2.0 Component model.
+ * This component provides a read-only, abstract view of the WSDL
+ * interface, including any interface information defined within
+ * imported or included WSDL documents.
+ *
+ */
+
+#include <woden.h>
+#include <woden_interface_element.h>
+#include <woden_configurable.h>
+
+/** @defgroup woden_interface Interface
+ * @ingroup woden
+ * @{
+ */
+
+typedef union woden_interface_base woden_interface_base_t;
+typedef struct woden_interface woden_interface_t;
+typedef struct woden_interface_ops woden_interface_ops_t;
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_interface_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (void *woden_interface,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (void *woden_interface,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *woden_interface,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ struct woden_configurable *(AXIS2_CALL *
+ get_base_impl) (
+ void *woden_interface,
+ const axis2_env_t *env);
+
+ axis2_qname_t *(AXIS2_CALL *
+ get_qname) (
+ void *woden_interface,
+ const axis2_env_t *env);
+
+ axis2_array_list_t *(AXIS2_CALL *
+ get_extended_interfaces) (
+ void *woden_interface,
+ const axis2_env_t *env);
+
+ axis2_array_list_t *(AXIS2_CALL *
+ get_interface_faults) (
+ void *woden_interface,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_interface_fault) (
+ void *woden_interface,
+ const axis2_env_t *env,
+ axis2_qname_t *qname);
+
+ axis2_array_list_t *(AXIS2_CALL *
+ get_interface_ops) (
+ void *woden_interface,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ to_element) (
+ void *woden_interface,
+ const axis2_env_t *env);
+
+};
+
+union woden_interface_base
+{
+ woden_configurable_t configurable;
+ woden_interface_element_t interface_element;
+};
+
+struct woden_interface
+{
+ woden_interface_base_t base;
+ woden_interface_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_interface_t * AXIS2_CALL
+woden_interface_create(
+ const axis2_env_t *env);
+
+
+/***************************Woden C Internal Methods***************************/
+AXIS2_EXTERN woden_interface_t * AXIS2_CALL
+woden_interface_to_interface_element(
+ void *woden_interface,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_t * AXIS2_CALL
+woden_interface_to_documentable(
+ void *woden_interface,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_t * AXIS2_CALL
+woden_interface_to_configurable(
+ void *woden_interface,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_t * AXIS2_CALL
+woden_interface_to_attr_extensible(
+ void *woden_interface,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_t * AXIS2_CALL
+woden_interface_to_element_extensible(
+ void *woden_interface,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_interface_resolve_methods(
+ woden_interface_t *woden_interface,
+ const axis2_env_t *env,
+ woden_interface_t *interface_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INTERFACE_FREE(interface, env) \
+ (((woden_interface_t *) interface)->ops->free(interface, env))
+
+#define WODEN_INTERFACE_SUPER_OBJS(interface, env) \
+ (((woden_interface_t *) interface)->ops->super_objs(interface, env))
+
+#define WODEN_INTERFACE_TYPE(interface, env) \
+ (((woden_interface_t *) interface)->ops->type(interface, env))
+
+#define WODEN_INTERFACE_GET_BASE_IMPL(interface, env) \
+ (((woden_interface_t *) interface)->ops->get_base_impl(interface, env))
+
+#define WODEN_INTERFACE_GET_QNAME(interface, env) \
+ (((woden_interface_t *) interface)->ops->\
+ get_qname(interface, env))
+
+#define WODEN_INTERFACE_GET_EXTENDED_INTERFACES(interface, env) \
+ (((woden_interface_t *) interface)->ops->\
+ get_extended_interfaces(interface, env))
+
+#define WODEN_INTERFACE_GET_INTERFACE_FAULTS(interface, env) \
+ (((woden_interface_t *) interface)->ops->\
+ get_interface_faults(interface, env))
+
+#define WODEN_INTERFACE_GET_INTERFACE_FAULT(interface, env, qname) \
+ (((woden_interface_t *) interface)->ops->\
+ get_interface_fault(interface, env, qname))
+
+#define WODEN_INTERFACE_GET_INTERFACE_OPS(interface, env) \
+ (((woden_interface_t *) interface)->ops->\
+ get_interface_ops(interface, env))
+
+#define WODEN_INTERFACE_TO_ELEMENT(interface, env) \
+ (((woden_interface_t *) interface)->ops->\
+ to_element(interface, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INTERFACE_H */
Added: webservices/axis2/trunk/c/woden/include/woden_interface_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_interface_element.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_interface_element.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_interface_element.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,204 @@
+/*
+ * 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 WODEN_INTERFACE_ELEMENT_H
+#define WODEN_INTERFACE_ELEMENT_H
+
+/**
+ * @file woden_interface_element.h
+ * @brief Axis2 Interface Element Interface
+ * This interface represents a <interface> XML element
+ * information item. It declares the behaviour required to support
+ * parsing, creating and manipulating a <interface> element.
+ */
+
+#include <axis2_allocator.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+#include <axis2_string.h>
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_qname.h>
+#include <axis2_uri.h>
+#include <axis2_array_list.h>
+#include <woden.h>
+#include <woden_documentable_element.h>
+#include <woden_configurable_element.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct woden_interface_element woden_interface_element_t;
+typedef struct woden_interface_element_ops woden_interface_element_ops_t;
+typedef union woden_interface_element_base woden_interface_element_base_t;
+
+/** @defgroup woden_interface_element Interface Element
+ * @ingroup axis2_interface
+ * @{
+ */
+
+struct woden_interface_element_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_qname) (
+ void *interface_element,
+ const axis2_env_t *env,
+ axis2_qname_t *qname);
+
+ axis2_qname_t *(AXIS2_CALL *
+ get_qname) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ add_extends_qname) (
+ void *interface_element,
+ const axis2_env_t *env,
+ axis2_qname_t *qname);
+
+ axis2_array_list_t *(AXIS2_CALL *
+ get_extends_qnames) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ add_style_default_uri) (
+ void *interface_element,
+ const axis2_env_t *env,
+ axis2_uri_t *uri);
+
+ axis2_uri_t *(AXIS2_CALL *
+ get_style_default) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ add_interface_fault_element) (
+ void *interface_element,
+ const axis2_env_t *env,
+ void *fault);
+
+ axis2_array_list_t *(AXIS2_CALL *
+ get_interface_fault_elements) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ add_interface_op_element) (
+ void *interface_element,
+ const axis2_env_t *env,
+ void *op);
+
+ axis2_array_list_t *(AXIS2_CALL *
+ get_interface_op_elements) (
+ void *interface_element,
+ const axis2_env_t *env);
+
+};
+
+union woden_interface_element_base
+{
+ woden_documentable_element_t documentable_element;
+ woden_configurable_element_t configurable_element;
+};
+
+struct woden_interface_element
+{
+ woden_interface_element_base_t base;
+ woden_interface_element_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_interface_element_t * AXIS2_CALL
+woden_interface_element_create(
+ const axis2_env_t *env);
+
+/************************Woden C Internal Methods******************************/
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_interface_element_resolve_methods(
+ woden_interface_element_t *interface_element,
+ const axis2_env_t *env,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INTERFACE_ELEMENT_FREE(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ free (interface_element, env))
+
+#define WODEN_INTERFACE_ELEMENT_TYPE(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ type (interface_element, env))
+
+#define WODEN_INTERFACE_ELEMENT_SET_QNAME(interface_element, env, qname) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ set_qname (interface_element, env, qname))
+
+#define WODEN_INTERFACE_ELEMENT_GET_QNAME(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ get_qname (interface_element, env))
+
+#define WODEN_INTERFACE_ELEMENT_ADD_EXTENDS_QNAME(interface_element, env, qname) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ add_extends_qname (interface_element, env, qname))
+
+#define WODEN_INTERFACE_ELEMENT_GET_EXTENDS_QNAMES(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ get_extends_qnames (interface_element, env))
+
+#define WODEN_INTERFACE_ELEMENT_ADD_STYLE_DEFAULT_URI(interface_element, env, uri) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ add_style_default_uri (interface_element, env, uri))
+
+#define WODEN_INTERFACE_ELEMENT_GET_STYLE_DEFAULT(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ get_style_default (interface_element, env))
+
+#define WODEN_INTERFACE_ELEMENT_ADD_INTERFACE_FAULT_ELEMENT(interface_element, env, fault) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ add_interface_fault_element (interface_element, env, fault))
+
+#define WODEN_INTERFACE_ELEMENT_GET_INTERFACE_FAULT_ELEMENTS(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ get_interface_fault_elements (interface_element, env))
+
+#define WODEN_INTERFACE_ELEMENT_ADD_INTERFACE_OP_ELEMENT(interface_element, env, op) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ add_interface_op_element (interface_element, env, op))
+
+#define WODEN_INTERFACE_ELEMENT_GET_INTERFACE_OP_ELEMENTS(interface_element, env) \
+ (((woden_interface_element_t *) interface_element)->ops->\
+ get_interface_op_elements (interface_element, env))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INTERFACE_ELEMENT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_interface_fault.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_interface_fault.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_interface_fault.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_interface_fault.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,203 @@
+/*
+ * 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 WODEN_INTERFACE_FAULT_H
+#define WODEN_INTERFACE_FAULT_H
+
+/**
+ * @file woden_interface_fault.h
+ * @brief Axis2 Interface Fault Interface Fault
+ * This class represents the InterfaceFault component from the WSDL 2.0 Component
+ * Model and the <fault> child element of the <interface> element.
+ *
+ */
+
+#include <woden.h>
+#include <woden_interface_fault_element.h>
+#include <woden_nested_configurable.h>
+#include <axis2_qname.h>
+
+/** @defgroup woden_interface_fault Interface Fault
+ * @ingroup woden
+ * @{
+ */
+
+typedef union woden_interface_fault_base woden_interface_fault_base_t;
+typedef struct woden_interface_fault woden_interface_fault_t;
+typedef struct woden_interface_fault_ops woden_interface_fault_ops_t;
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_interface_fault_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (void *interface_fault,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (void *interface_fault,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *interface_fault,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ struct woden_nested_configurable *(AXIS2_CALL *
+ get_base_impl) (
+ void *interface_fault,
+ const axis2_env_t *env);
+
+ axis2_qname_t *(AXIS2_CALL *
+ get_qname) (
+ void *interface_fault,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_element_decl) (
+ void *interface_fault,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ to_element) (
+ void *interface_fault,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_element_decl) (
+ void *interface_fault,
+ const axis2_env_t *env,
+ void *element_decl);
+
+ axis2_status_t (AXIS2_CALL *
+ set_types) (
+ void *interface_fault,
+ const axis2_env_t *env,
+ void *types);
+};
+
+union woden_interface_fault_base
+{
+ woden_nested_configurable_t nested_configurable;
+ woden_interface_fault_element_t interface_fault_element;
+};
+
+struct woden_interface_fault
+{
+ woden_interface_fault_base_t base;
+ woden_interface_fault_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_create(
+ const axis2_env_t *env);
+
+
+/***************************Woden C Internal Methods***************************/
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_interface_fault_element(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_nested_configurable(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_configurable(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_configurable_element(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_documentable_element(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_documentable(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_attr_extensible(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_t * AXIS2_CALL
+woden_interface_fault_to_element_extensible(
+ void *interface_fault,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_interface_fault_resolve_methods(
+ woden_interface_fault_t *interface_fault,
+ const axis2_env_t *env,
+ woden_interface_fault_t *interface_fault_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INTERFACE_FAULT_FREE(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->ops->free(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_SUPER_OBJS(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->ops->super_objs(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_TYPE(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->ops->type(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_GET_BASE_IMPL(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->ops->get_base_impl(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_GET_QNAME(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->ops->\
+ get_qname(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_GET_ELEMENT_DECLARATION(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->\
+ get_element_declaration(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_TO_ELEMENT(interface_fault, env) \
+ (((woden_interface_fault_t *) interface_fault)->ops->\
+ to_element(interface_fault, env))
+
+#define WODEN_INTERFACE_FAULT_SET_ELEMENT_DECL(interface_fault, env, element_decl) \
+ (((woden_interface_fault_t *) interface_fault)->ops->\
+ set_element_decl (interface_fault, env, element_decl))
+
+#define WODEN_INTERFACE_FAULT_SET_TYPES(interface_fault, env, types) \
+ (((woden_interface_fault_t *) interface_fault)->ops->\
+ set_types (interface_fault, env, types))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INTERFACE_FAULT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_interface_fault_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_interface_fault_element.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_interface_fault_element.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_interface_fault_element.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,182 @@
+/*
+ * 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 WODEN_INTERFACE_FAULT_ELEMENT_H
+#define WODEN_INTERFACE_FAULT_ELEMENT_H
+
+/**
+ * @file woden_interface_fault_element.h
+ * @brief Axis2 Interface Fault Element Interface
+ * This interface represents a <fault> child element of the
+ * WSDL <interface> element.
+ * It declares the behaviour required to support parsing,
+ * creating and manipulating a <fault> element.
+ */
+
+#include <axis2_allocator.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+#include <axis2_string.h>
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_qname.h>
+#include <axis2_uri.h>
+#include <axis2_array_list.h>
+#include <woden.h>
+#include <woden_documentable_element.h>
+#include <woden_configurable_element.h>
+#include <woden_nested_element.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct woden_interface_fault_element woden_interface_fault_element_t;
+typedef struct woden_interface_fault_element_ops woden_interface_fault_element_ops_t;
+typedef union woden_interface_fault_element_base woden_interface_fault_element_base_t;
+
+/** @defgroup woden_interface_fault_element Interface Fault Element
+ * @ingroup axis2_interface
+ * @{
+ */
+
+struct woden_interface_fault_element_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *interface_fault_element,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (
+ void *interface_fault_element,
+ const axis2_env_t *env);
+
+ /**
+ * Set the QName that represens the 'name' attribute of the interface
+ * <fault> element. This identifies the interface fault.
+ *
+ * @param qname the QName that identifies the interface fault
+ */
+ axis2_status_t (AXIS2_CALL *
+ set_qname) (
+ void *iface_fault_ele,
+ const axis2_env_t *env,
+ axis2_qname_t *qname);
+
+ axis2_qname_t *(AXIS2_CALL *
+ get_qname) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+ /**
+ * Set the QName that represents the 'element' attribute of the interface
+ * <fault> element. This identifies a Schema element declaration.
+ *
+ * @param qname the QName that identifies a Schema element declaration
+ */
+ axis2_status_t (AXIS2_CALL *
+ set_element_qname) (
+ void *iface_fault_ele,
+ const axis2_env_t *env,
+ axis2_qname_t *qname);
+
+ axis2_qname_t *(AXIS2_CALL *
+ get_element_qname) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+ /**
+ * Returns the Schema element declaration identified by the QName in the 'element'
+ * attribute of the interface <fault> element.
+ * If this QName does not resolve to an element declaration in a schema that is visible
+ * to the containing WSDL description, null will be returned by this method.
+ * To be visible, the Schema must have been correctly imported or inlined within
+ * the <types> element.
+ *
+ * @return the XmlSchemaElement identified by the 'element' attribute
+ */
+ void *(AXIS2_CALL *
+ get_element) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+};
+
+union woden_interface_fault_element_base
+{
+ woden_documentable_element_t documentable_element;
+ woden_configurable_element_t configurable_element;
+ woden_nested_element_t nested_element;
+};
+
+struct woden_interface_fault_element
+{
+ woden_interface_fault_element_base_t base;
+ woden_interface_fault_element_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_interface_fault_element_t * AXIS2_CALL
+woden_interface_fault_element_create(
+ const axis2_env_t *env);
+
+/************************Woden C Internal Methods******************************/
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_interface_fault_element_resolve_methods(
+ woden_interface_fault_element_t *interface_fault_element,
+ const axis2_env_t *env,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_FREE(interface_fault_element, env) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ free (interface_fault_element, env))
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_TYPE(interface_fault_element, env) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ type (interface_fault_element, env))
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_SET_QNAME(interface_fault_element, env, qname) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ set_qname (interface_fault_element, env, qname))
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_GET_QNAME(interface_fault_element, env) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ get_qname (interface_fault_element, env))
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_SET_ELEMENT_QNAME(interface_fault_element, env, qname) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ set_element_qname (interface_fault_element, env, qname))
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_GET_ELEMENT_QNAME(interface_fault_element, env) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ get_element_qname (interface_fault_element, env))
+
+#define WODEN_INTERFACE_FAULT_ELEMENT_GET_ELEMENT(interface_fault_element, env) \
+ (((woden_interface_fault_element_t *) interface_fault_element)->ops->\
+ get_element (interface_fault_element, env))
+
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INTERFACE_FAULT_ELEMENT_H */
Added: webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,213 @@
+/*
+ * 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 WODEN_INTERFACE_FAULT_REF_H
+#define WODEN_INTERFACE_FAULT_REF_H
+
+/**
+ * @file woden_interface_fault_ref.h
+ * @brief Axis2 Interface Fault Reference Interface Fault Reference
+ * This class represents the Interface Fault Reference component of the
+ * WSDL 2.0 Component model and the <infault> and <outfault>
+ * child elements of an interface <operation>.
+ *
+ */
+
+#include <woden.h>
+#include <woden_interface_fault_ref_element.h>
+#include <woden_nested_configurable.h>
+#include <axis2_qname.h>
+
+/** @defgroup woden_interface_fault_ref Interface Fault Reference
+ * @ingroup woden
+ * @{
+ */
+
+typedef union woden_interface_fault_ref_base woden_interface_fault_ref_base_t;
+typedef struct woden_interface_fault_ref woden_interface_fault_ref_t;
+typedef struct woden_interface_fault_ref_ops woden_interface_fault_ref_ops_t;
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+struct woden_interface_fault_ref_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ axis2_hash_t *(AXIS2_CALL *
+ super_objs) (void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (void *interface_fault_ref,
+ const axis2_env_t *env);
+ /**
+ * @return the base implementation class
+ */
+ struct woden_nested_configurable *(AXIS2_CALL *
+ get_base_impl) (
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_interface_fault) (
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_msg_label) (
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_direction) (
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ to_element) (
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+ /* ************************************************************
+ * Non-API implementation methods
+ * ************************************************************/
+ axis2_status_t (AXIS2_CALL *
+ set_interface_fault) (
+ void *interface_fault_ref,
+ const axis2_env_t *env,
+ void *fault);
+
+};
+
+union woden_interface_fault_ref_base
+{
+ woden_nested_configurable_t nested_configurable;
+ woden_interface_fault_ref_element_t interface_fault_ref_element;
+};
+
+struct woden_interface_fault_ref
+{
+ woden_interface_fault_ref_base_t base;
+ woden_interface_fault_ref_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_create(
+ const axis2_env_t *env);
+
+
+/***************************Woden C Internal Methods***************************/
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_interface_fault_ref_element(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_nested_configurable(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_configurable(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_nested_element(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_configurable_element(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_documentable_element(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_documentable(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_attr_extensible(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
+woden_interface_fault_ref_to_element_extensible(
+ void *interface_fault_ref,
+ const axis2_env_t *env);
+
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_interface_fault_ref_resolve_methods(
+ woden_interface_fault_ref_t *interface_fault_ref,
+ const axis2_env_t *env,
+ woden_interface_fault_ref_t *interface_fault_ref_impl,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INTERFACE_FAULT_REF_FREE(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->free(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_SUPER_OBJS(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->super_objs(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_TYPE(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->type(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_GET_BASE_IMPL(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->get_base_impl(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_GET_INTERFACE_FAULT(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->\
+ get_interface_fault(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_GET_MSG_LABEL(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->\
+ get_msg_label(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_GET_DIRECTION(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->\
+ get_direction(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_TO_ELEMENT(interface_fault_ref, env) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->\
+ to_element(interface_fault_ref, env))
+
+#define WODEN_INTERFACE_FAULT_REF_SET_INTERFACE_FAULT(interface_fault_ref, env, fault) \
+ (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->\
+ set_interface_fault(interface_fault_ref, env, fault))
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INTERFACE_FAULT_REF_H */
Added: webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref_element.h?rev=419452&view=auto
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref_element.h (added)
+++ webservices/axis2/trunk/c/woden/include/woden_interface_fault_ref_element.h Wed Jul 5 23:02:19 2006
@@ -0,0 +1,182 @@
+/*
+ * 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 WODEN_INTERFACE_FAULT_REF_ELEMENT_H
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_H
+
+/**
+ * @file woden_interface_fault_ref_element.h
+ * @brief Axis2 Interface Fault Reference Element Interface
+ * This interface represents a <fault> child element of the
+ * WSDL <interface> element.
+ * It declares the behaviour required to support parsing,
+ * creating and manipulating a <fault> element.
+ */
+
+#include <axis2_allocator.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+#include <axis2_string.h>
+#include <axis2_utils.h>
+#include <axis2_hash.h>
+#include <axis2_qname.h>
+#include <axis2_uri.h>
+#include <axis2_array_list.h>
+#include <woden.h>
+#include <woden_documentable_element.h>
+#include <woden_configurable_element.h>
+#include <woden_nested_element.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+typedef struct woden_interface_fault_ref_element woden_interface_fault_ref_element_t;
+typedef struct woden_interface_fault_ref_element_ops woden_interface_fault_ref_element_ops_t;
+typedef union woden_interface_fault_ref_element_base woden_interface_fault_ref_element_base_t;
+
+/** @defgroup woden_interface_fault_ref_element Interface Fault Reference Element
+ * @ingroup axis2_interface
+ * @{
+ */
+
+struct woden_interface_fault_ref_element_ops
+{
+ /**
+ * Deallocate memory
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free) (
+ void *interface_fault_ref_element,
+ const axis2_env_t *env);
+
+ woden_obj_types_t (AXIS2_CALL *
+ type) (
+ void *interface_fault_ref_element,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_ref) (
+ void *iface_fault_ele,
+ const axis2_env_t *env,
+ axis2_qname_t *fault_qname);
+
+ axis2_qname_t *(AXIS2_CALL *
+ get_ref) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+ void *(AXIS2_CALL *
+ get_interface_fault_element) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_msg_label) (
+ void *iface_fault_ele,
+ const axis2_env_t *env,
+ void *msg_label);
+
+ void *(AXIS2_CALL *
+ get_msg_label) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+ axis2_status_t (AXIS2_CALL *
+ set_direction) (
+ void *iface_fault_ele,
+ const axis2_env_t *env,
+ void *dir);
+
+ void *(AXIS2_CALL *
+ get_direction) (
+ void *iface_fault_ele,
+ const axis2_env_t *env);
+
+
+};
+
+union woden_interface_fault_ref_element_base
+{
+ woden_documentable_element_t documentable_element;
+ woden_configurable_element_t configurable_element;
+ woden_nested_element_t nested_element;
+};
+
+struct woden_interface_fault_ref_element
+{
+ woden_interface_fault_ref_element_base_t base;
+ woden_interface_fault_ref_element_ops_t *ops;
+};
+
+AXIS2_EXTERN woden_interface_fault_ref_element_t * AXIS2_CALL
+woden_interface_fault_ref_element_create(
+ const axis2_env_t *env);
+
+/************************Woden C Internal Methods******************************/
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+woden_interface_fault_ref_element_resolve_methods(
+ woden_interface_fault_ref_element_t *interface_fault_ref_element,
+ const axis2_env_t *env,
+ axis2_hash_t *methods);
+/************************End of Woden C Internal Methods***********************/
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_FREE(interface_fault_ref_element, env) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ free (interface_fault_ref_element, env))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_TYPE(interface_fault_ref_element, env) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ type (interface_fault_ref_element, env))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_SET_REF(interface_fault_ref_element, env, fault_qname) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ set_ref (interface_fault_ref_element, env, fault_qname))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_GET_REF(interface_fault_ref_element, env) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ get_ref (interface_fault_ref_element, env))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_GET_INTERFACE_FAULT_ELEMENT(interface_fault_ref_element, env) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ get_interface_fault_element (interface_fault_ref_element, env))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_SET_MSG_LABEL(interface_fault_ref_element, env, msg_label) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ set_msg_label (interface_fault_ref_element, env, msg_label))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_GET_MSG_LABEL(interface_fault_ref_element, env) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ get_msg_label (interface_fault_ref_element, env))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_SET_DIRECTION(interface_fault_ref_element, env, dir) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ set_direction (interface_fault_ref_element, env, dir))
+
+#define WODEN_INTERFACE_FAULT_REF_ELEMENT_GET_DIRECTION(interface_fault_ref_element, env) \
+ (((woden_interface_fault_ref_element_t *) interface_fault_ref_element)->ops->\
+ get_direction (interface_fault_ref_element, env))
+
+
+
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+#endif /* WODEN_INTERFACE_FAULT_REF_ELEMENT_H */
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org