00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_ENGINE_H
00019 #define AXIS2_ENGINE_H
00020
00037 #include <axis2_defines.h>
00038 #include <axutil_array_list.h>
00039 #include <axutil_env.h>
00040 #include <axis2_conf_ctx.h>
00041
00042 #ifdef __cplusplus
00043 extern "C"
00044 {
00045 #endif
00046
00048 typedef struct axis2_engine axis2_engine_t;
00049
00050 struct axiom_soap_fault;
00051
00052
00065 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00066 axis2_engine_send(axis2_engine_t *engine,
00067 const axutil_env_t *env,
00068 axis2_msg_ctx_t *msg_ctx);
00069
00082 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00083 axis2_engine_receive(axis2_engine_t *engine,
00084 const axutil_env_t *env,
00085 axis2_msg_ctx_t *msg_ctx);
00086
00095 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00096 axis2_engine_send_fault(axis2_engine_t *engine,
00097 const axutil_env_t *env,
00098 axis2_msg_ctx_t *msg_ctx);
00099
00108 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00109 axis2_engine_receive_fault(axis2_engine_t *engine,
00110 const axutil_env_t *env,
00111 axis2_msg_ctx_t *msg_ctx);
00112
00124 AXIS2_EXTERN axis2_msg_ctx_t *AXIS2_CALL
00125 axis2_engine_create_fault_msg_ctx(
00126 axis2_engine_t *engine,
00127 const axutil_env_t *env,
00128 axis2_msg_ctx_t *processing_context,
00129 const axis2_char_t *code_value,
00130 const axis2_char_t *reason_text);
00131
00145 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00146 axis2_engine_invoke_phases(axis2_engine_t *engine,
00147 const axutil_env_t *env,
00148 axutil_array_list_t *phases,
00149 axis2_msg_ctx_t *msg_ctx);
00150
00167 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00168 axis2_engine_resume_invocation_phases(axis2_engine_t *engine,
00169 const axutil_env_t *env,
00170 axutil_array_list_t *phases,
00171 axis2_msg_ctx_t *msg_ctx);
00172
00180 AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00181 axis2_engine_get_sender_fault_code(const axis2_engine_t *engine,
00182 const axutil_env_t *env,
00183 const axis2_char_t *soap_namespace);
00184
00185
00192 AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00193 axis2_engine_get_receiver_fault_code(const axis2_engine_t *engine,
00194 const axutil_env_t *env,
00195 const axis2_char_t *soap_namespace);
00196
00203 AXIS2_EXTERN void AXIS2_CALL
00204 axis2_engine_free(axis2_engine_t *engine,
00205 const axutil_env_t *env);
00206
00216 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00217 axis2_engine_resume_receive(axis2_engine_t *engine,
00218 const axutil_env_t *env,
00219 axis2_msg_ctx_t *msg_ctx);
00220
00230 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00231 axis2_engine_resume_send(axis2_engine_t *engine,
00232 const axutil_env_t *env,
00233 axis2_msg_ctx_t *msg_ctx);
00234
00241 AXIS2_EXTERN axis2_engine_t *AXIS2_CALL
00242 axis2_engine_create(const axutil_env_t *env,
00243 axis2_conf_ctx_t *conf_ctx);
00244
00245 #ifdef __cplusplus
00246 }
00247 #endif
00248
00249 #endif