Main Page | Modules | Class List | Directories | File List | Class Members | File Members | Examples

axis2_wsdl_pump.h

Go to the documentation of this file.
00001 /*
00002  * Copyright 2004,2005 The Apache Software Foundation.
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *      http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 #ifndef AXIS2_WSDL_PUMP_H
00018 #define AXIS2_WSDL_PUMP_H
00019 
00025 #include <axis2_const.h>
00026 #include <axis2_error.h>
00027 #include <axis2_defines.h>
00028 #include <axis2_env.h>
00029 #include <axis2_allocator.h>
00030 #include <axis2_string.h>
00031 
00032 
00033 #ifdef __cplusplus
00034 extern "C"
00035 {
00036 #endif
00037    
00038 typedef struct axis2_wsdl_pump_ops axis2_wsdl_pump_ops_t;
00039 typedef struct axis2_wsdl_pump axis2_wsdl_pump_t;   
00040 struct axis2_wsdl_desc;   
00041 
00051 struct axis2_wsdl_pump_ops
00052 {
00056     axis2_status_t (AXIS2_CALL *
00057     free) (axis2_wsdl_pump_t *wsdl_pump,
00058                             const axis2_env_t *env);
00059 
00060    axis2_status_t (AXIS2_CALL *
00061    pump) (axis2_wsdl_pump_t *wsdl_pump,
00062                   const axis2_env_t *env);
00063 
00064 };
00065 
00070 struct axis2_wsdl_pump
00071 {
00072    axis2_wsdl_pump_ops_t *ops;
00073 };
00074 
00079 AXIS2_EXTERN axis2_wsdl_pump_t * AXIS2_CALL 
00080 axis2_wsdl_pump_create (const axis2_env_t *env,
00081                   struct axis2_wsdl_desc *wom_def,
00082                   void *wsdl_parser);
00083 
00084 /*************************** Function macros **********************************/
00085 
00086 #define AXIS2_WSDL_PUMP_FREE(wsdl_pump, env) ((wsdl_pump)->ops->free (wsdl_pump, env))
00087 
00088 #define AXIS2_WSDL_PUMP_PUMP(wsdl_pump, env) \
00089       ((wsdl_pump)->ops->pump (wsdl_pump, env))
00090 
00091 /*************************** End of function macros ***************************/
00092 
00095 #ifdef __cplusplus
00096 }
00097 #endif
00098 #endif  /* AXIS2_WSDL_PUMP_H */

Generated on Fri Jun 16 18:02:31 2006 for Axis2/C by  doxygen 1.4.2