00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef SANDESHA2_NACK_H
00018 #define SANDESHA2_NACK_H
00019
00024 #include <axutil_utils_defines.h>
00025 #include <axutil_env.h>
00026 #include <sandesha2_iom_rm_element.h>
00027 #include <sandesha2_error.h>
00028
00029
00030 #ifdef __cplusplus
00031 extern "C"
00032 {
00033 #endif
00034
00039 typedef struct sandesha2_nack_ops sandesha2_nack_ops_t;
00040 typedef struct sandesha2_nack sandesha2_nack_t;
00041
00046 AXIS2_DECLARE_DATA struct sandesha2_nack_ops
00047 {
00048 long (AXIS2_CALL *
00049 get_nack_num)
00050 (sandesha2_nack_t *element,
00051 const axutil_env_t *env);
00052
00053 axis2_status_t (AXIS2_CALL *
00054 set_nack_num)
00055 (sandesha2_nack_t *element,
00056 const axutil_env_t *env,
00057 long value);
00058 };
00059
00064 AXIS2_DECLARE_DATA struct sandesha2_nack
00065 {
00066 sandesha2_iom_rm_element_t element;
00067 sandesha2_nack_ops_t *ops;
00068 };
00069
00070 AXIS2_EXTERN sandesha2_nack_t* AXIS2_CALL
00071 sandesha2_nack_create(
00072 const axutil_env_t *env,
00073 axis2_char_t *ns_value);
00074
00075
00076 #define SANDESHA2_NACK_SET_NACK_NUM(nack, env, value) \
00077 ((nack)->ops->set_nack_num (nack, env, acks_to))
00078 #define SANDESHA2_NACK_GET_NACK_NUM(nack, env) \
00079 ((nack)->ops->get_nack_num (nack, env))
00080
00082 #ifdef __cplusplus
00083 }
00084 #endif
00085
00086 #endif
00087