00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef NEETHI_EXACTLYONE_H
00020 #define NEETHI_EXACTLYONE_H
00021
00027 #include <axis2_defines.h>
00028 #include <axutil_env.h>
00029 #include <neethi_operator.h>
00030 #include <neethi_includes.h>
00031
00032 #ifdef __cplusplus
00033 extern "C"
00034 {
00035 #endif
00036
00037 typedef struct neethi_exactlyone_t neethi_exactlyone_t;
00038
00039 AXIS2_EXTERN neethi_exactlyone_t *AXIS2_CALL
00040 neethi_exactlyone_create(
00041 const axutil_env_t * env);
00042
00043 AXIS2_EXTERN void AXIS2_CALL
00044 neethi_exactlyone_free(
00045 neethi_exactlyone_t * neethi_exactlyone,
00046 const axutil_env_t * env);
00047
00048 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00049 neethi_exactlyone_get_policy_components(
00050 neethi_exactlyone_t * neethi_exactlyone,
00051 const axutil_env_t * env);
00052
00053 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00054 neethi_exactlyone_add_policy_components(
00055 neethi_exactlyone_t * exactlyone,
00056 axutil_array_list_t * arraylist,
00057 const axutil_env_t * env);
00058
00059 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00060 neethi_exactlyone_add_operator(
00061 neethi_exactlyone_t * neethi_exactlyone,
00062 const axutil_env_t * env,
00063 neethi_operator_t * op);
00064
00065 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00066 neethi_exactlyone_is_empty(
00067 neethi_exactlyone_t * exactlyone,
00068 const axutil_env_t * env);
00069
00070 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00071 neethi_exactlyone_serialize(
00072 neethi_exactlyone_t * neethi_exactlyone,
00073 axiom_node_t * parent,
00074 const axutil_env_t * env);
00075
00077 #ifdef __cplusplus
00078 }
00079 #endif
00080
00081 #endif