00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_DISP_CHECKER_H
00019 #define AXIS2_DISP_CHECKER_H
00020
00032 #include <axis2_defines.h>
00033 #include <axis2_qname.h>
00034 #include <axis2_handler.h>
00035
00036 #ifdef __cplusplus
00037 extern "C"
00038 {
00039 #endif
00040
00042 typedef struct axis2_disp_checker_ops axis2_disp_checker_ops_t;
00044 typedef struct axis2_disp_checker axis2_disp_checker_t;
00045
00050 struct axis2_disp_checker_ops
00051 {
00058 axis2_handler_t *(AXIS2_CALL *
00059 get_base)(
00060 const axis2_disp_checker_t *disp_checker,
00061 const axis2_env_t *env);
00062
00063
00071 axis2_qname_t *(AXIS2_CALL *
00072 get_qname)(
00073 const axis2_disp_checker_t *disp_checker,
00074 const axis2_env_t *env);
00075
00083 axis2_status_t (AXIS2_CALL *
00084 set_qname)(
00085 axis2_disp_checker_t *disp_checker,
00086 const axis2_env_t *env,
00087 const axis2_qname_t *qname);
00088
00095 axis2_status_t (AXIS2_CALL *
00096 free)(
00097 axis2_disp_checker_t *disp_checker,
00098 const axis2_env_t *env);
00099
00100 };
00101
00105 struct axis2_disp_checker
00106 {
00108 axis2_disp_checker_ops_t *ops;
00109 };
00110
00111
00117 AXIS2_EXTERN axis2_disp_checker_t *AXIS2_CALL
00118 axis2_disp_checker_create(
00119 const axis2_env_t *env);
00120
00121
00124 #define AXIS2_DISP_CHECKER_GET_BASE(disp_checker, env) \
00125 ((disp_checker)->ops->get_base(disp_checker, env))
00126
00129 #define AXIS2_DISP_CHECKER_GET_QNAME(disp_checker, env) \
00130 ((disp_checker)->ops->get_qname(disp_checker, env))
00131
00134 #define AXIS2_DISP_CHECKER_SET_QNAME(disp_checker, env, name) \
00135 ((disp_checker)->ops->set_qname(disp_checker, env, name))
00136
00139 #define AXIS2_DISP_CHECKER_FREE(disp_checker, env) \
00140 ((disp_checker)->ops->free(disp_checker, env))
00141
00142
00145 #ifdef __cplusplus
00146 }
00147 #endif
00148
00149 #endif