00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef AXIOM_SOAP_FAULT_REASON_H
00018 #define AXIOM_SOAP_FAULT_REASON_H
00019
00024 #include <axis2_env.h>
00025 #include <axiom_soap_fault.h>
00026 #include <axis2_array_list.h>
00027
00028 #ifdef __cplusplus
00029 extern "C"
00030 {
00031 #endif
00032
00033 typedef struct axiom_soap_fault_reason_ops axiom_soap_fault_reason_ops_t;
00034 typedef struct axiom_soap_fault_reason axiom_soap_fault_reason_t;
00035 struct axiom_soap_fault_text;
00036 struct axiom_soap_builder;
00047 struct axiom_soap_fault_reason_ops
00048 {
00057 axis2_status_t (AXIS2_CALL *
00058 free_fn)(axiom_soap_fault_reason_t *fault_reason,
00059 const axis2_env_t *env);
00060
00061 struct axiom_soap_fault_text* (AXIS2_CALL *
00062 get_soap_fault_text)(axiom_soap_fault_reason_t *fault_reason,
00063 const axis2_env_t *env,
00064 axis2_char_t *lang);
00065
00066 axis2_array_list_t* (AXIS2_CALL *
00067 get_all_soap_fault_texts)(axiom_soap_fault_reason_t *fault_reason,
00068 const axis2_env_t *env);
00069
00070 struct axiom_soap_fault_text* (AXIS2_CALL *
00071 get_first_soap_fault_text)(axiom_soap_fault_reason_t *fault_reason,
00072 const axis2_env_t *env);
00073
00074 axis2_status_t (AXIS2_CALL *
00075 add_soap_fault_text)(axiom_soap_fault_reason_t *fault_reason,
00076 const axis2_env_t *env,
00077 struct axiom_soap_fault_text *fault_text);
00078
00079 axiom_node_t* (AXIS2_CALL *
00080 get_base_node)(axiom_soap_fault_reason_t *fault_reason,
00081 const axis2_env_t *env);
00082
00083 };
00084
00089 struct axiom_soap_fault_reason
00090 {
00092 axiom_soap_fault_reason_ops_t *ops;
00093
00094 };
00095
00102 AXIS2_EXTERN axiom_soap_fault_reason_t * AXIS2_CALL
00103 axiom_soap_fault_reason_create_with_parent(const axis2_env_t *env,
00104 axiom_soap_fault_t *fault);
00105
00106
00107
00109 #define AXIOM_SOAP_FAULT_REASON_FREE(fault_reason , env) \
00110 ((fault_reason)->ops->free_fn(fault_reason, env))
00111
00112
00113 #define AXIOM_SOAP_FAULT_REASON_GET_SOAP_FAULT_TEXT(fault_reason , env, lang) \
00114 ((fault_reason)->ops->get_soap_fault_text(fault_reason, env, lang))
00115
00116 #define AXIOM_SOAP_FAULT_REASON_GET_BASE_NODE(fault_reason, env) \
00117 ((fault_reason)->ops->get_base_node(fault_reason, env))
00118
00119 #define AXIOM_SOAP_FAULT_REASON_ADD_SOAP_FAULT_TEXT(fault_reason, env, fault_text) \
00120 ((fault_reason)->ops->add_soap_fault_text(fault_reason, env, fault_text))
00121
00122 #define AXIOM_SOAP_FAULT_REASON_GET_ALL_SOAP_FAULT_TEXTS(fault_reason, env) \
00123 ((fault_reason)->ops->get_all_soap_fault_texts(fault_reason, env))
00124
00125 #define AXIOM_SOAP_FAULT_REASON_GET_FIRST_SOAP_FAULT_TEXT(fault_reason, env) \
00126 ((fault_reason)->ops->get_first_soap_fault_text(fault_reason, env))
00127
00130 #ifdef __cplusplus
00131 }
00132 #endif
00133
00134 #endif
00135