00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef AXIS2_DISP_CHECKER_H
00018 #define AXIS2_DISP_CHECKER_H
00019
00031 #include <axis2_defines.h>
00032 #include <axis2_qname.h>
00033 #include <axis2_handler.h>
00034
00035 #ifdef __cplusplus
00036 extern "C"
00037 {
00038 #endif
00039
00041 typedef struct axis2_disp_checker_ops axis2_disp_checker_ops_t;
00043 typedef struct axis2_disp_checker axis2_disp_checker_t;
00044
00049 AXIS2_DECLARE_DATA struct axis2_disp_checker_ops
00050 {
00057 axis2_handler_t *(AXIS2_CALL *
00058 get_base)(
00059 const axis2_disp_checker_t *disp_checker,
00060 const axis2_env_t *env);
00061
00062
00070 axis2_qname_t *(AXIS2_CALL *
00071 get_qname)(
00072 const axis2_disp_checker_t *disp_checker,
00073 const axis2_env_t *env);
00074
00082 axis2_status_t (AXIS2_CALL *
00083 set_qname)(
00084 axis2_disp_checker_t *disp_checker,
00085 const axis2_env_t *env,
00086 const axis2_qname_t *qname);
00087
00094 axis2_status_t (AXIS2_CALL *
00095 free)(
00096 axis2_disp_checker_t *disp_checker,
00097 const axis2_env_t *env);
00098
00099 };
00100
00104 struct axis2_disp_checker
00105 {
00107 axis2_disp_checker_ops_t *ops;
00108 };
00109
00110
00116 AXIS2_EXTERN axis2_disp_checker_t *AXIS2_CALL
00117 axis2_disp_checker_create(
00118 const axis2_env_t *env);
00119
00120
00123 #define AXIS2_DISP_CHECKER_GET_BASE(disp_checker, env) \
00124 ((disp_checker)->ops->get_base(disp_checker, env))
00125
00128 #define AXIS2_DISP_CHECKER_GET_QNAME(disp_checker, env) \
00129 ((disp_checker)->ops->get_qname(disp_checker, env))
00130
00133 #define AXIS2_DISP_CHECKER_SET_QNAME(disp_checker, env, name) \
00134 ((disp_checker)->ops->set_qname(disp_checker, env, name))
00135
00138 #define AXIS2_DISP_CHECKER_FREE(disp_checker, env) \
00139 ((disp_checker)->ops->free(disp_checker, env))
00140
00141
00144 #ifdef __cplusplus
00145 }
00146 #endif
00147
00148 #endif