woden_wsdl10_reader.h

Go to the documentation of this file.
00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 #ifndef WODEN_WSDL10_READER_H
00019 #define WODEN_WSDL10_READER_H
00020 
00028 #include <woden.h>
00029 #include <woden_wsdl10_ext_registry.h>
00030 #include <axiom_document.h>
00031 
00037 typedef union woden_wsdl10_reader_base woden_wsdl10_reader_base_t;
00038 typedef struct woden_wsdl10_reader woden_wsdl10_reader_t;
00039 typedef struct woden_wsdl10_reader_ops woden_wsdl10_reader_ops_t;
00040 
00041 #ifdef __cplusplus
00042 extern "C"
00043 {
00044 #endif
00045 
00046 struct woden_wsdl10_reader_ops
00047 {
00052     axis2_status_t (AXIS2_CALL *
00053     free) (
00054             void *reader,
00055             const axis2_env_t *env);
00056  
00057     void *(AXIS2_CALL *
00058     read_wsdl) (
00059             void *reader,
00060             const axis2_env_t *env,
00061             axiom_node_t *root_node,
00062             const axis2_char_t *uri);
00063 
00064     axis2_status_t (AXIS2_CALL *
00065     set_ext_registry) (
00066             void *reader,
00067             const axis2_env_t *env,
00068             woden_wsdl10_ext_registry_t *ext_reg);
00069 
00070     woden_wsdl10_ext_registry_t *(AXIS2_CALL *
00071     get_ext_registry) (
00072             void *reader,
00073             const axis2_env_t *env);
00074 
00075    
00076 };
00077 
00078 struct woden_wsdl10_reader
00079 {
00080     woden_wsdl10_reader_ops_t *ops;
00081 };
00082 
00083 AXIS2_EXTERN woden_wsdl10_reader_t * AXIS2_CALL
00084 woden_wsdl10_reader_create(
00085         const axis2_env_t *env);
00086 
00087 #define WODEN_WSDL10_READER_FREE(reader, env) \
00088       (((woden_wsdl10_reader_t *) reader)->ops->free(reader, env))
00089 
00090 #define WODEN_WSDL10_READER_READ_WSDL(reader, env, root_node, uri) \
00091       (((woden_wsdl10_reader_t *) reader)->ops->\
00092       read_wsdl (reader, env, root_node, uri))
00093 
00094 #define WODEN_WSDL10_READER_SET_EXT_REGISTRY(reader, env, ext_reg) \
00095       (((woden_wsdl10_reader_t *) reader)->ops->\
00096       set_ext_registry (reader, env, ext_reg))
00097 
00098 #define WODEN_WSDL10_READER_GET_EXT_REGISTRY(reader, env) \
00099       (((woden_wsdl10_reader_t *) reader)->ops->\
00100        get_ext_registry(reader, env))
00101 
00103 #ifdef __cplusplus
00104 }
00105 #endif
00106 #endif /* WODEN_WSDL10_READER_H */

Generated on Wed Dec 20 20:14:11 2006 for Axis2/C by  doxygen 1.5.1