00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
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
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
00092
00095 #ifdef __cplusplus
00096 }
00097 #endif
00098 #endif