axis2_msg_ctx.h

Go to the documentation of this file.
00001 /*
00002 * Licensed to the Apache Software Foundation (ASF) under one or more
00003 * contributor license agreements.  See the NOTICE file distributed with
00004 * this work for additional information regarding copyright ownership.
00005 * The ASF licenses this file to You under the Apache License, Version 2.0
00006 * (the "License"); you may not use this file except in compliance with
00007 * the License.  You may obtain a copy of the License at
00008 *
00009 *      http://www.apache.org/licenses/LICENSE-2.0
00010 *
00011 * Unless required by applicable law or agreed to in writing, software
00012 * distributed under the License is distributed on an "AS IS" BASIS,
00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014 * See the License for the specific language governing permissions and
00015 * limitations under the License.
00016 */
00017 
00018 #ifndef AXIS2_MSG_CTX_H
00019 #define AXIS2_MSG_CTX_H
00020 
00043 #include <axis2_defines.h>
00044 #include <axis2_env.h>
00045 #include <axis2_ctx.h>
00046 #include <axis2_relates_to.h>
00047 #include <axis2_param.h>
00048 #include <axis2_handler_desc.h>
00049 #include <axis2_qname.h>
00050 #include <axis2_msg_info_headers.h>
00051 
00052 #ifdef __cplusplus
00053 extern "C"
00054 {
00055 #endif
00056 
00058 #define AXIS2_TRANSPORT_HEADERS "AXIS2_TRANSPORT_HEADERS" 
00059 
00061 #define AXIS2_TRANSPORT_OUT "AXIS2_TRANSPORT_OUT" 
00062 
00064 #define AXIS2_TRANSPORT_IN "AXIS2_TRANSPORT_IN" 
00065 
00067 #define AXIS2_CHARACTER_SET_ENCODING "AXIS2_CHARACTER_SET_ENCODING" 
00068 
00070 #define AXIS2_UTF_8 "UTF-8" 
00071 
00073 #define AXIS2_UTF_16 "utf-16" 
00074 
00076 #define AXIS2_DEFAULT_CHAR_SET_ENCODING "UTF-8" 
00077 
00079 #define AXIS2_TRANSPORT_SUCCEED "AXIS2_TRANSPORT_SUCCEED" 
00080 
00082 #define AXIS2_HTTP_CLIENT "AXIS2_HTTP_CLIENT"
00083 
00085 #define AXIS2_TRANSPORT_URL "TransportURL" 
00086 
00087 /* Message flows */
00089 /*#define AXIS2_IN_FLOW 1*/
00090 
00092 /*#define AXIS2_IN_FAULT_FLOW 2*/
00093 
00095 /*#define AXIS2_OUT_FLOW 3*/
00096 
00098 /*#define AXIS2_OUT_FAULT_FLOW 4*/
00099 
00101     typedef struct axis2_msg_ctx_ops axis2_msg_ctx_ops_t;
00103     typedef struct axis2_msg_ctx axis2_msg_ctx_t;
00104 
00105     struct axis2_svc;
00106     struct axis2_op;
00107 
00108     struct axis2_conf_ctx;
00109     struct axis2_svc_grp_ctx;
00110     struct axis2_svc_ctx;
00111     struct axis2_op_ctx;
00112     struct axis2_conf;
00113     struct axiom_soap_envelope;
00114     struct axis2_options;
00115 
00120     struct axis2_msg_ctx_ops
00121     {
00128         axis2_ctx_t *(AXIS2_CALL *
00129                 get_base)(
00130                     const axis2_msg_ctx_t *msg_ctx,
00131                     const axis2_env_t *env);
00132 
00139         struct axis2_op_ctx *(AXIS2_CALL *
00140                 get_parent)(
00141                     const axis2_msg_ctx_t *msg_ctx,
00142                     const axis2_env_t *env);
00143 
00151         axis2_status_t (AXIS2_CALL *
00152                 set_parent)(
00153                     axis2_msg_ctx_t *msg_ctx,
00154                     const axis2_env_t *env,
00155                     struct axis2_op_ctx *parent);
00156 
00163         axis2_status_t (AXIS2_CALL *
00164                 free)(
00165                     axis2_msg_ctx_t *msg_ctx,
00166                     const axis2_env_t *env);
00167 
00178         axis2_status_t (AXIS2_CALL *
00179                 init)(
00180                     axis2_msg_ctx_t *msg_ctx,
00181                     const axis2_env_t *env,
00182                     struct axis2_conf *conf);
00183 
00192         axis2_endpoint_ref_t *(AXIS2_CALL *
00193                 get_fault_to)(
00194                     const axis2_msg_ctx_t *msg_ctx,
00195                     const axis2_env_t *env);
00196 
00205         axis2_endpoint_ref_t *(AXIS2_CALL *
00206                 get_from)(
00207                     const axis2_msg_ctx_t *msg_ctx,
00208                     const axis2_env_t *env);
00209 
00216         axis2_bool_t (AXIS2_CALL *
00217                 get_in_fault_flow)(
00218                     const axis2_msg_ctx_t *msg_ctx,
00219                     const axis2_env_t *env);
00220 
00229         struct axiom_soap_envelope *(AXIS2_CALL *
00230                 get_soap_envelope)(
00231                     const axis2_msg_ctx_t *msg_ctx,
00232                     const axis2_env_t *env);
00233 
00240         struct axiom_soap_envelope *(AXIS2_CALL *
00241                 get_fault_soap_envelope)(
00242                     const axis2_msg_ctx_t *msg_ctx,
00243                     const axis2_env_t *env);
00244 
00252         const axis2_char_t *(AXIS2_CALL *
00253                 get_msg_id)(
00254                     const axis2_msg_ctx_t *msg_ctx,
00255                     const axis2_env_t *env);
00256 
00263         axis2_bool_t (AXIS2_CALL *
00264                 get_process_fault)(
00265                     const axis2_msg_ctx_t *msg_ctx,
00266                     const axis2_env_t *env);
00267 
00274         axis2_relates_to_t *(AXIS2_CALL *
00275                 get_relates_to)(
00276                     const axis2_msg_ctx_t *msg_ctx,
00277                     const axis2_env_t *env);
00278 
00287         axis2_endpoint_ref_t *(AXIS2_CALL *
00288                 get_reply_to)(
00289                     const axis2_msg_ctx_t *msg_ctx,
00290                     const axis2_env_t *env);
00291 
00298         axis2_bool_t (AXIS2_CALL *
00299                 get_response_written)(
00300                     const axis2_msg_ctx_t *msg_ctx,
00301                     const axis2_env_t *env);
00302 
00311         axis2_bool_t (AXIS2_CALL *
00312                 get_server_side)(
00313                     const axis2_msg_ctx_t *msg_ctx,
00314                     const axis2_env_t *env);
00315 
00324         axis2_endpoint_ref_t *(AXIS2_CALL *
00325                 get_to)(
00326                     const axis2_msg_ctx_t *msg_ctx,
00327                     const axis2_env_t *env);
00328 
00338         axis2_status_t (AXIS2_CALL *
00339                 set_fault_to)(
00340                     axis2_msg_ctx_t *msg_ctx,
00341                     const axis2_env_t *env,
00342                     axis2_endpoint_ref_t *reference);
00343 
00353         axis2_status_t (AXIS2_CALL *
00354                 set_from)(
00355                     axis2_msg_ctx_t *msg_ctx,
00356                     const axis2_env_t *env,
00357                     axis2_endpoint_ref_t *reference);
00358 
00367         axis2_status_t (AXIS2_CALL *
00368                 set_in_fault_flow)(
00369                     axis2_msg_ctx_t *msg_ctx,
00370                     const axis2_env_t *env,
00371                     const axis2_bool_t in_fault_flow);
00372 
00383         axis2_status_t (AXIS2_CALL *
00384                 set_soap_envelope)(
00385                     axis2_msg_ctx_t *msg_ctx,
00386                     const axis2_env_t *env,
00387                     struct axiom_soap_envelope *soap_envelope);
00388 
00397         axis2_status_t (AXIS2_CALL *
00398                 set_fault_soap_envelope)(
00399                     axis2_msg_ctx_t *msg_ctx,
00400                     const axis2_env_t *env,
00401                     struct axiom_soap_envelope *soap_envelope);
00402 
00410         axis2_status_t (AXIS2_CALL *
00411                 set_message_id)(
00412                     axis2_msg_ctx_t *msg_ctx,
00413                     const axis2_env_t *env,
00414                     const axis2_char_t *message_id);
00415 
00424         axis2_status_t (AXIS2_CALL *
00425                 set_process_fault)(
00426                     axis2_msg_ctx_t *msg_ctx,
00427                     const axis2_env_t *env,
00428                     const axis2_bool_t process_fault);
00429 
00438         axis2_status_t (AXIS2_CALL *
00439                 set_relates_to)(
00440                     axis2_msg_ctx_t *msg_ctx,
00441                     const axis2_env_t *env,
00442                     axis2_relates_to_t *reference);
00443 
00453         axis2_status_t (AXIS2_CALL *
00454                 set_reply_to)(
00455                     axis2_msg_ctx_t *msg_ctx,
00456                     const axis2_env_t *env,
00457                     axis2_endpoint_ref_t *referance);
00458 
00467         axis2_status_t (AXIS2_CALL *
00468                 set_response_written)(
00469                     axis2_msg_ctx_t *msg_ctx,
00470                     const axis2_env_t *env,
00471                     const axis2_bool_t response_written);
00472 
00482         axis2_status_t (AXIS2_CALL *
00483                 set_server_side)(
00484                     axis2_msg_ctx_t *msg_ctx,
00485                     const axis2_env_t *env,
00486                     const axis2_bool_t server_side);
00487 
00497         axis2_status_t (AXIS2_CALL *
00498                 set_to)(
00499                     axis2_msg_ctx_t *msg_ctx,
00500                     const axis2_env_t *env,
00501                     axis2_endpoint_ref_t *referance);
00502 
00510         axis2_bool_t (AXIS2_CALL *
00511                 get_new_thread_required)(
00512                     const axis2_msg_ctx_t *msg_ctx,
00513                     const axis2_env_t *env);
00514 
00524         axis2_status_t (AXIS2_CALL *
00525                 set_new_thread_required)(
00526                     axis2_msg_ctx_t *msg_ctx,
00527                     const axis2_env_t *env,
00528                     const axis2_bool_t new_thread_required);
00529 
00537         axis2_status_t (AXIS2_CALL *
00538                 set_wsa_action)(
00539                     axis2_msg_ctx_t *msg_ctx,
00540                     const axis2_env_t *env,
00541                     const axis2_char_t *action_uri);
00542 
00549         const axis2_char_t *(AXIS2_CALL *
00550                 get_wsa_action)(
00551                     const axis2_msg_ctx_t *msg_ctx,
00552                     const axis2_env_t *env);
00553 
00561         axis2_status_t (AXIS2_CALL *
00562                 set_wsa_message_id)(
00563                     axis2_msg_ctx_t *msg_ctx,
00564                     const axis2_env_t *env,
00565                     const axis2_char_t *message_id);
00566 
00573         const axis2_char_t *(AXIS2_CALL *
00574                 get_wsa_message_id)(
00575                     const axis2_msg_ctx_t *msg_ctx,
00576                     const axis2_env_t *env);
00577 
00585         axis2_msg_info_headers_t *(AXIS2_CALL *
00586                 get_msg_info_headers)(
00587                     const axis2_msg_ctx_t *msg_ctx,
00588                     const axis2_env_t *env);
00589 
00598         axis2_bool_t (AXIS2_CALL *
00599                 get_paused)(
00600                     const axis2_msg_ctx_t *msg_ctx,
00601                     const axis2_env_t *env);
00602 
00610         axis2_status_t (AXIS2_CALL *
00611                 set_paused)(
00612                     axis2_msg_ctx_t *msg_ctx,
00613                     const axis2_env_t *env,
00614                     const axis2_bool_t paused);
00615 
00624         axis2_bool_t (AXIS2_CALL *
00625                 is_keep_alive)(
00626                     const axis2_msg_ctx_t *msg_ctx,
00627                     const axis2_env_t *env);
00628 
00638         axis2_status_t (AXIS2_CALL *
00639                 set_keep_alive)(
00640                     axis2_msg_ctx_t *msg_ctx,
00641                     const axis2_env_t *env,
00642                     const axis2_bool_t keep_alive);
00643 
00644 
00652         struct axis2_transport_in_desc *(AXIS2_CALL *
00653                 get_transport_in_desc)(
00654                     const axis2_msg_ctx_t *msg_ctx,
00655                     const axis2_env_t *env);
00656 
00664         struct axis2_transport_out_desc *(AXIS2_CALL *
00665                 get_transport_out_desc)(
00666                     const axis2_msg_ctx_t *msg_ctx,
00667                     const axis2_env_t *env);
00668 
00677         axis2_status_t (AXIS2_CALL *
00678                 set_transport_in_desc)(
00679                     axis2_msg_ctx_t *msg_ctx,
00680                     const axis2_env_t *env,
00681                     struct axis2_transport_in_desc *transport_in_desc);
00682 
00691         axis2_status_t (AXIS2_CALL *
00692                 set_transport_out_desc)(
00693                     axis2_msg_ctx_t *msg_ctx,
00694                     const axis2_env_t *env,
00695                     struct axis2_transport_out_desc *transport_out_desc);
00696 
00704         struct axis2_op_ctx *(AXIS2_CALL *
00705                 get_op_ctx)(
00706                     const axis2_msg_ctx_t *msg_ctx,
00707                     const axis2_env_t *env);
00708 
00718         axis2_status_t (AXIS2_CALL *
00719                 set_op_ctx)(
00720                     axis2_msg_ctx_t *msg_ctx,
00721                     const axis2_env_t *env,
00722                     struct axis2_op_ctx *op_ctx);
00723 
00730         axis2_bool_t (AXIS2_CALL *
00731                 get_output_written)(
00732                     const axis2_msg_ctx_t *msg_ctx,
00733                     const axis2_env_t *env);
00734 
00742         axis2_status_t (AXIS2_CALL *
00743                 set_output_written)(
00744                     axis2_msg_ctx_t *msg_ctx,
00745                     const axis2_env_t *env,
00746                     const axis2_bool_t output_written);
00747 
00755         const axis2_char_t *(AXIS2_CALL *
00756                 get_svc_ctx_id)(
00757                     const axis2_msg_ctx_t *msg_ctx,
00758                     const axis2_env_t *env);
00759 
00768         axis2_status_t (AXIS2_CALL *
00769                 set_svc_ctx_id)(
00770                     axis2_msg_ctx_t *msg_ctx,
00771                     const axis2_env_t *env,
00772                     const axis2_char_t *svc_ctx_id);
00773 
00780         struct axis2_conf_ctx *(AXIS2_CALL *
00781                 get_conf_ctx)(
00782                     const axis2_msg_ctx_t *msg_ctx,
00783                     const axis2_env_t *env);
00784 
00792         struct axis2_svc_ctx *(AXIS2_CALL *
00793                 get_svc_ctx)(
00794                     const axis2_msg_ctx_t *msg_ctx,
00795                     const axis2_env_t *env);
00796 
00805         axis2_status_t (AXIS2_CALL *
00806                 set_conf_ctx)(
00807                     axis2_msg_ctx_t *msg_ctx,
00808                     const axis2_env_t *env,
00809                     struct axis2_conf_ctx *conf_ctx);
00810 
00819         axis2_status_t (AXIS2_CALL *
00820                 set_svc_ctx)(
00821                     axis2_msg_ctx_t *msg_ctx,
00822                     const axis2_env_t *env,
00823                     struct axis2_svc_ctx *svc_ctx);
00824 
00833         axis2_status_t (AXIS2_CALL *
00834                 set_msg_info_headers)(
00835                     axis2_msg_ctx_t *msg_ctx,
00836                     const axis2_env_t *env,
00837                     axis2_msg_info_headers_t *msg_info_headers);
00838 
00854         axis2_param_t *(AXIS2_CALL *
00855                 get_parameter)(
00856                     const axis2_msg_ctx_t *msg_ctx,
00857                     const axis2_env_t *env,
00858                     const axis2_char_t *key);
00859 
00880         axis2_param_t *(AXIS2_CALL *
00881                 get_module_parameter)(
00882                     const axis2_msg_ctx_t *msg_ctx,
00883                     const axis2_env_t *env,
00884                     const axis2_char_t *key,
00885                     const axis2_char_t *module_name,
00886                     axis2_handler_desc_t *handler_desc);
00887 
00898         axis2_property_t *(AXIS2_CALL *
00899                 get_property)(
00900                     const axis2_msg_ctx_t *msg_ctx,
00901                     const axis2_env_t *env,
00902                     const axis2_char_t *key,
00903                     const axis2_bool_t persistent);
00904 
00916         axis2_status_t (AXIS2_CALL *
00917                 set_property)(
00918                     axis2_msg_ctx_t *msg_ctx,
00919                     const axis2_env_t *env,
00920                     const axis2_char_t *key,
00921                     axis2_property_t *value,
00922                     const axis2_bool_t persistent);
00929         const axis2_qname_t *(AXIS2_CALL *
00930                 get_paused_handler_name)(
00931                     const axis2_msg_ctx_t *msg_ctx,
00932                     const axis2_env_t *env);
00933 
00940         const axis2_char_t *(AXIS2_CALL *
00941                 get_paused_phase_name)(
00942                     const axis2_msg_ctx_t *msg_ctx,
00943                     const axis2_env_t *env);
00944 
00952         axis2_status_t (AXIS2_CALL *
00953                 set_paused_phase_name)(
00954                     axis2_msg_ctx_t *msg_ctx,
00955                     const axis2_env_t *env,
00956                     const axis2_char_t *paused_phase_name);
00957 
00964         const axis2_char_t *(AXIS2_CALL *
00965                 get_soap_action)(
00966                     const axis2_msg_ctx_t *msg_ctx,
00967                     const axis2_env_t *env);
00968 
00976         axis2_status_t (AXIS2_CALL *
00977                 set_soap_action)(
00978                     axis2_msg_ctx_t *msg_ctx,
00979                     const axis2_env_t *env,
00980                     const axis2_char_t *soap_action);
00981 
00988         axis2_bool_t (AXIS2_CALL *
00989                 get_doing_mtom)(
00990                     const axis2_msg_ctx_t *msg_ctx,
00991                     const axis2_env_t *env);
00992 
01000         axis2_status_t (AXIS2_CALL *
01001                 set_doing_mtom)(
01002                     axis2_msg_ctx_t *msg_ctx,
01003                     const axis2_env_t *env,
01004                     const axis2_bool_t doing_mtom);
01005 
01012         axis2_bool_t (AXIS2_CALL *
01013                 get_doing_rest)(
01014                     const axis2_msg_ctx_t *msg_ctx,
01015                     const axis2_env_t *env);
01016 
01024         axis2_status_t (AXIS2_CALL *
01025                 set_doing_rest)(
01026                     axis2_msg_ctx_t *msg_ctx,
01027                     const axis2_env_t *env,
01028                     const axis2_bool_t doing_rest);
01029 
01039         axis2_status_t (AXIS2_CALL *
01040                 set_do_rest_through_post)(
01041                     axis2_msg_ctx_t *msg_ctx,
01042                     const axis2_env_t *env,
01043                     const axis2_bool_t do_rest_through_post);
01044 
01045 
01054         axis2_bool_t (AXIS2_CALL *
01055                 get_do_rest_through_post)(
01056                     const axis2_msg_ctx_t *msg_ctx,
01057                     const axis2_env_t *env);
01058 
01067         axis2_bool_t (AXIS2_CALL *
01068                 get_is_soap_11)(
01069                     const axis2_msg_ctx_t *msg_ctx,
01070                     const axis2_env_t *env);
01071 
01081         axis2_status_t (AXIS2_CALL *
01082                 set_is_soap_11)(
01083                     axis2_msg_ctx_t *msg_ctx,
01084                     const axis2_env_t *env,
01085                     const axis2_bool_t is_soap11);
01086 
01095         struct axis2_svc_grp_ctx *(AXIS2_CALL *
01096                 get_svc_grp_ctx)(
01097                     const axis2_msg_ctx_t *msg_ctx,
01098                     const axis2_env_t *env);
01099 
01109         axis2_status_t (AXIS2_CALL *
01110                 set_svc_grp_ctx)(
01111                     axis2_msg_ctx_t *msg_ctx,
01112                     const axis2_env_t *env,
01113                     struct axis2_svc_grp_ctx *svc_grp_ctx);
01114 
01115 
01122         struct axis2_op *(AXIS2_CALL *
01123                 get_op)(
01124                     const axis2_msg_ctx_t *msg_ctx,
01125                     const axis2_env_t *env);
01126 
01127 
01136         axis2_status_t (AXIS2_CALL *
01137                 set_op)(
01138                     axis2_msg_ctx_t *msg_ctx,
01139                     const axis2_env_t *env,
01140                     struct axis2_op *op);
01141 
01142 
01149         struct axis2_svc *(AXIS2_CALL *
01150                 get_svc)(
01151                     const axis2_msg_ctx_t *msg_ctx,
01152                     const axis2_env_t *env);
01153 
01154 
01163         axis2_status_t (AXIS2_CALL *
01164                 set_svc)(
01165                     axis2_msg_ctx_t *msg_ctx,
01166                     const axis2_env_t *env,
01167                     struct axis2_svc *svc);
01168 
01176         struct axis2_svc_grp *(AXIS2_CALL *
01177                  get_svc_grp)(
01178                      const axis2_msg_ctx_t *msg_ctx,
01179                      const axis2_env_t *env);
01180 
01189         axis2_status_t (AXIS2_CALL *
01190                 set_svc_grp)(
01191                     axis2_msg_ctx_t *msg_ctx,
01192                     const axis2_env_t *env,
01193                     struct axis2_svc_grp *svc_grp);
01194 
01195 
01202         const axis2_char_t *(AXIS2_CALL *
01203                 get_svc_grp_ctx_id)(
01204                     const axis2_msg_ctx_t *msg_ctx,
01205                     const axis2_env_t *env);
01206 
01214         axis2_status_t (AXIS2_CALL *
01215                 set_svc_grp_ctx_id)(
01216                     axis2_msg_ctx_t *msg_ctx,
01217                     const axis2_env_t *env,
01218                     const axis2_char_t *svc_grp_ctx_id);
01219 
01227         struct axis2_svc *(AXIS2_CALL *
01228                 find_svc)(
01229                     axis2_msg_ctx_t *msg_ctx,
01230                     const axis2_env_t *env);
01239         struct axis2_op *(AXIS2_CALL *
01240                 find_op)(
01241                     axis2_msg_ctx_t *msg_ctx,
01242                     const axis2_env_t *env,
01243                     struct axis2_svc *svc);
01244 
01251         axis2_bool_t (AXIS2_CALL *
01252                 is_paused)(
01253                     axis2_msg_ctx_t *msg_ctx,
01254                     const axis2_env_t *env);
01255 
01264         axis2_status_t (AXIS2_CALL *
01265                 set_options )(
01266                     axis2_msg_ctx_t *msg_ctx,
01267                     const axis2_env_t *env,
01268                     struct axis2_options *options);
01269         
01277         axis2_status_t (AXIS2_CALL *
01278                 set_flow )(
01279                     axis2_msg_ctx_t *msg_ctx,
01280                     const axis2_env_t *env,
01281                     int flow);
01282 
01289         int (AXIS2_CALL *
01290                 get_flow )(
01291                     const axis2_msg_ctx_t *msg_ctx,
01292                     const axis2_env_t *env);
01293 
01304         axis2_status_t (AXIS2_CALL *
01305                 set_execution_chain)(
01306                     axis2_msg_ctx_t *msg_ctx,
01307                     const axis2_env_t *env,
01308                     axis2_array_list_t *execution_chain);
01309 
01319         axis2_array_list_t *(AXIS2_CALL *
01320                 get_execution_chain)(
01321                     const axis2_msg_ctx_t *msg_ctx,
01322                     const axis2_env_t *env);
01323 
01332         axis2_status_t (AXIS2_CALL *
01333                 set_current_handler_index)(
01334                     axis2_msg_ctx_t *msg_ctx,
01335                     const axis2_env_t *env,
01336                     const int index);
01337 
01345         int (AXIS2_CALL *
01346                 get_current_handler_index)(
01347                     const axis2_msg_ctx_t *msg_ctx,
01348                     const axis2_env_t *env);
01349 
01357         int (AXIS2_CALL *
01358                 get_paused_handler_index)(
01359                     const axis2_msg_ctx_t *msg_ctx,
01360                     const axis2_env_t *env);
01361 
01362 
01370         axis2_status_t (AXIS2_CALL *
01371                 set_current_phase_index)(
01372                     axis2_msg_ctx_t *msg_ctx,
01373                     const axis2_env_t *env,
01374                     const int index);
01375 
01382         int (AXIS2_CALL *
01383                 get_current_phase_index)(
01384                     const axis2_msg_ctx_t *msg_ctx,
01385                     const axis2_env_t *env);
01386 
01393         int (AXIS2_CALL *
01394                 get_paused_phase_index)(
01395                     const axis2_msg_ctx_t *msg_ctx,
01396                     const axis2_env_t *env);
01397     };
01398 
01402     struct axis2_msg_ctx
01403     {
01405         axis2_msg_ctx_ops_t *ops;
01406     };
01407 
01408 
01420     AXIS2_EXTERN axis2_msg_ctx_t *AXIS2_CALL
01421     axis2_msg_ctx_create (
01422         const axis2_env_t *env,
01423         struct axis2_conf_ctx *conf_ctx,
01424         struct axis2_transport_in_desc *transport_in_desc,
01425         struct axis2_transport_out_desc *transport_out_des);
01426 
01427 
01430 #define AXIS2_MSG_CTX_GET_BASE(msg_ctx, env) \
01431       ((msg_ctx)->ops->get_base(msg_ctx, env))
01432 
01435 #define AXIS2_MSG_CTX_GET_PARENT(msg_ctx, env) \
01436       ((msg_ctx)->ops->get_parent(msg_ctx, env))
01437 
01440 #define AXIS2_MSG_CTX_SET_PARENT(msg_ctx, env, parent) \
01441       ((msg_ctx)->ops->get_parent(msg_ctx, env, parent))
01442 
01445 #define AXIS2_MSG_CTX_FREE(msg_ctx, env) \
01446       ((msg_ctx)->ops->free(msg_ctx, env))
01447 
01450 #define AXIS2_MSG_CTX_INIT(msg_ctx, env, conf) \
01451       ((msg_ctx)->ops->init(msg_ctx, env, conf))
01452 
01455 #define AXIS2_MSG_CTX_GET_FAULT_TO(msg_ctx, env) \
01456       ((msg_ctx)->ops->get_fault_to(msg_ctx, env))
01457 
01460 #define AXIS2_MSG_CTX_GET_FROM(msg_ctx, env) \
01461       ((msg_ctx)->ops->get_from(msg_ctx, env))
01462 
01465 #define AXIS2_MSG_CTX_GET_IN_FAULT_FLOW(msg_ctx, env) \
01466       ((msg_ctx)->ops->get_in_fault_flow(msg_ctx, env))
01467 
01470 #define AXIS2_MSG_CTX_GET_SOAP_ENVELOPE(msg_ctx, env) \
01471       ((msg_ctx)->ops->get_soap_envelope(msg_ctx, env))
01472 
01475 #define AXIS2_MSG_CTX_GET_FAULT_SOAP_ENVELOPE(msg_ctx, env) \
01476       ((msg_ctx)->ops->get_fault_soap_envelope(msg_ctx, env))
01477 
01480 #define AXIS2_MSG_CTX_GET_MSG_ID(msg_ctx, env) \
01481       ((msg_ctx)->ops->get_msg_id(msg_ctx, env))
01482 
01485 #define AXIS2_MSG_CTX_GET_PROCESS_FAULT(msg_ctx, env) \
01486       ((msg_ctx)->ops->get_process_fault(msg_ctx, env))
01487 
01490 #define AXIS2_MSG_CTX_GET_RELATES_TO(msg_ctx, env) \
01491       ((msg_ctx)->ops->get_relates_to(msg_ctx, env))
01492 
01495 #define AXIS2_MSG_CTX_GET_REPLY_TO(msg_ctx, env) \
01496       ((msg_ctx)->ops->get_reply_to(msg_ctx, env))
01497 
01500 #define AXIS2_MSG_CTX_GET_RESPONSE_WRITTEN(msg_ctx, env) \
01501       ((msg_ctx)->ops->get_response_written(msg_ctx, env))
01502 
01506 #define AXIS2_MSG_CTX_GET_SERVER_SIDE(msg_ctx, env) \
01507       ((msg_ctx)->ops->get_server_side(msg_ctx, env))
01508 
01511 #define AXIS2_MSG_CTX_GET_TO(msg_ctx, env) \
01512       ((msg_ctx)->ops->get_to(msg_ctx, env))
01513 
01516 #define AXIS2_MSG_CTX_SET_FAULT_TO(msg_ctx, env, reference) \
01517       ((msg_ctx)->ops->set_fault_to(msg_ctx, env, reference))
01518 
01521 #define AXIS2_MSG_CTX_SET_FROM(msg_ctx, env, reference) \
01522       ((msg_ctx)->ops->set_from(msg_ctx, env, reference))
01523 
01526 #define AXIS2_MSG_CTX_SET_IN_FAULT_FLOW(msg_ctx, env, in_fault_flow) \
01527       ((msg_ctx)->ops->get_in_fault_flow(msg_ctx, env, in_fault_flow))
01528 
01531 #define AXIS2_MSG_CTX_SET_SOAP_ENVELOPE(msg_ctx, env, soap_envelope) \
01532       ((msg_ctx)->ops->set_soap_envelope(msg_ctx, env, soap_envelope))
01533 
01536 #define AXIS2_MSG_CTX_SET_FAULT_SOAP_ENVELOPE(msg_ctx, env, soap_envelope) \
01537       ((msg_ctx)->ops->set_fault_soap_envelope(msg_ctx, env, soap_envelope))
01538 
01541 #define AXIS2_MSG_CTX_SET_MESSAGE_ID(msg_ctx, env, message_id) \
01542       ((msg_ctx)->ops->set_message_id(msg_ctx, env, message_id))
01543 
01546 #define AXIS2_MSG_CTX_SET_PROCESS_FAULT(msg_ctx, env, process_fault) \
01547       ((msg_ctx)->ops->set_process_fault(msg_ctx, env, process_fault))
01548 
01551 #define AXIS2_MSG_CTX_SET_RELATES_TO(msg_ctx, env, reference) \
01552       ((msg_ctx)->ops->set_relates_to(msg_ctx, env, reference))
01553 
01556 #define AXIS2_MSG_CTX_SET_REPLY_TO(msg_ctx, env, reference) \
01557       ((msg_ctx)->ops->set_reply_to(msg_ctx, env, reference))
01558 
01561 #define AXIS2_MSG_CTX_SET_RESPONSE_WRITTEN(msg_ctx, env, response_written) \
01562       ((msg_ctx)->ops->set_response_written(msg_ctx, env, response_written))
01563 
01567 #define AXIS2_MSG_CTX_SET_SERVER_SIDE(msg_ctx, env, server_side) \
01568       ((msg_ctx)->ops->set_server_side(msg_ctx, env, server_side))
01569 
01572 #define AXIS2_MSG_CTX_SET_TO(msg_ctx, env, reference) \
01573       ((msg_ctx)->ops->set_to(msg_ctx, env, reference))
01574 
01577 #define AXIS2_MSG_CTX_GET_NEW_THREAD_REQUIRED(msg_ctx, env) \
01578       ((msg_ctx)->ops->set_response_written(msg_ctx, env))
01579 
01582 #define AXIS2_MSG_CTX_SET_NEW_THREAD_REQUIRED(msg_ctx, env, new_thread_required) \
01583       ((msg_ctx)->ops->set_response_written(msg_ctx, env, new_thread_required))
01584 
01587 #define AXIS2_MSG_CTX_SET_WSA_ACTION(msg_ctx, env, action_uri) \
01588       ((msg_ctx)->ops->set_wsa_action(msg_ctx, env, action_uri))
01589 
01592 #define AXIS2_MSG_CTX_GET_WSA_ACTION(msg_ctx, env) \
01593       ((msg_ctx)->ops->get_wsa_action(msg_ctx, env))
01594 
01597 #define AXIS2_MSG_CTX_SET_WSA_MESSAGE_ID(msg_ctx, env, message_id) \
01598       ((msg_ctx)->ops->set_wsa_message_id(msg_ctx, env, message_id))
01599 
01602 #define AXIS2_MSG_CTX_GET_WSA_MESSAGE_ID(msg_ctx, env) \
01603       ((msg_ctx)->ops->get_wsa_message_id(msg_ctx, env))
01604 
01607 #define AXIS2_MSG_CTX_GET_MSG_INFO_HEADERS(msg_ctx, env) \
01608       ((msg_ctx)->ops->get_msg_info_headers(msg_ctx, env))
01609 
01612 #define AXIS2_MSG_CTX_GET_PAUSED(msg_ctx, env) \
01613       ((msg_ctx)->ops->get_paused(msg_ctx, env))
01614 
01617 #define AXIS2_MSG_CTX_SET_PAUSED(msg_ctx, env, paused) \
01618       ((msg_ctx)->ops->set_paused(msg_ctx, env, paused))
01619 
01622 #define AXIS2_MSG_CTX_IS_KEEP_ALIVE(msg_ctx, env) \
01623       ((msg_ctx)->ops->is_keep_alive(msg_ctx, env))
01624 
01627 #define AXIS2_MSG_CTX_SET_KEEP_ALIVE(msg_ctx, env, keep_alive) \
01628       ((msg_ctx)->ops->set_keep_alive(msg_ctx, env, keep_alive))
01629 
01630 
01633 #define AXIS2_MSG_CTX_GET_TRANSPORT_IN_DESC(msg_ctx, env) \
01634       ((msg_ctx)->ops->get_transport_in_desc(msg_ctx, env))
01635 
01638 #define AXIS2_MSG_CTX_GET_TRANSPORT_OUT_DESC(msg_ctx, env) \
01639       ((msg_ctx)->ops->get_transport_out_desc(msg_ctx, env))
01640 
01643 #define AXIS2_MSG_CTX_SET_TRANSPORT_IN_DESC(msg_ctx, env, transport_in_desc) \
01644       ((msg_ctx)->ops->set_transport_in_desc(msg_ctx, env, transport_in_desc))
01645 
01648 #define AXIS2_MSG_CTX_SET_TRANSPORT_OUT_DESC(msg_ctx, env, transport_out_desc) \
01649       ((msg_ctx)->ops->set_transport_out_desc(msg_ctx, env, transport_out_desc))
01650 
01653 #define AXIS2_MSG_CTX_GET_OP_CTX(msg_ctx, env) \
01654       ((msg_ctx)->ops->get_op_ctx(msg_ctx, env))
01655 
01658 #define AXIS2_MSG_CTX_SET_OP_CTX(msg_ctx, env, op_ctx) \
01659       ((msg_ctx)->ops->set_op_ctx(msg_ctx, env, op_ctx))
01660 
01663 #define AXIS2_MSG_CTX_GET_OUTPUT_WRITTEN(msg_ctx, env) \
01664       ((msg_ctx)->ops->get_output_written(msg_ctx, env))
01665 
01668 #define AXIS2_MSG_CTX_SET_OUTPUT_WRITTEN(msg_ctx, env, output_written) \
01669       ((msg_ctx)->ops->set_output_written(msg_ctx, env, output_written))
01670 
01673 #define AXIS2_MSG_CTX_GET_SVC_CTX_ID(msg_ctx, env) \
01674       ((msg_ctx)->ops->get_svc_ctx_id(msg_ctx, env))
01675 
01678 #define AXIS2_MSG_CTX_SET_SVC_CTX_ID(msg_ctx, env, svc_ctx_id) \
01679       ((msg_ctx)->ops->set_svc_ctx_id(msg_ctx, env, svc_ctx_id))
01680 
01683 #define AXIS2_MSG_CTX_GET_CONF_CTX(msg_ctx, env) \
01684       ((msg_ctx)->ops->get_conf_ctx(msg_ctx, env))
01685 
01688 #define AXIS2_MSG_CTX_SET_CONF_CTX(msg_ctx, env, conf_ctx) \
01689       ((msg_ctx)->ops->set_conf_ctx(msg_ctx, env, conf_ctx))
01690 
01693 #define AXIS2_MSG_CTX_GET_SVC_CTX(msg_ctx, env) \
01694       ((msg_ctx)->ops->get_svc_ctx(msg_ctx, env))
01695 
01698 #define AXIS2_MSG_CTX_SET_SVC_CTX(msg_ctx, env, svc_ctx) \
01699       ((msg_ctx)->ops->set_svc_ctx(msg_ctx, env, svc_ctx))
01700 
01703 #define AXIS2_MSG_CTX_SET_MSG_INFO_HEADERS(msg_ctx, env, msg_info_headers) \
01704       ((msg_ctx)->ops->set_msg_info_headers(msg_ctx, env, msg_info_headers))
01705 
01708 #define AXIS2_MSG_CTX_GET_PARAMETER(msg_ctx, env, key) \
01709       ((msg_ctx)->ops->get_parameter(msg_ctx, env, key))
01710 
01714 #define AXIS2_MSG_CTX_GET_MODULE_PARAMETER(msg_ctx, env, key, module_name, handler_desc) \
01715       ((msg_ctx)->ops->get_module_parameter(msg_ctx, env, key, module_name, handler_desc))
01716 
01719 #define AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env, key, persistent) \
01720       ((msg_ctx)->ops->get_property(msg_ctx, env, key, persistent))
01721 
01724 #define AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, key, value, persistent) \
01725       ((msg_ctx)->ops->set_property(msg_ctx, env, key, value, persistent))
01726 
01729 #define AXIS2_MSG_CTX_GET_PAUSED_HANDLER_NAME(msg_ctx, env) \
01730       ((msg_ctx)->ops->get_paused_handler_name(msg_ctx, env))
01731 
01734 #define AXIS2_MSG_CTX_GET_PAUSED_PHASE_NAME(msg_ctx, env) \
01735       ((msg_ctx)->ops->get_paused_phase_name(msg_ctx, env))
01736 
01739 #define AXIS2_MSG_CTX_SET_PAUSED_PHASE_NAME(msg_ctx, env, paused_phase_name) \
01740       ((msg_ctx)->ops->set_paused_phase_name(msg_ctx, env, paused_phase_name))
01741 
01744 #define AXIS2_MSG_CTX_GET_SOAP_ACTION(msg_ctx, env) \
01745       ((msg_ctx)->ops->get_soap_action(msg_ctx, env))
01746 
01749 #define AXIS2_MSG_CTX_SET_SOAP_ACTION(msg_ctx, env, soap_action) \
01750       ((msg_ctx)->ops->set_soap_action(msg_ctx, env, soap_action))
01751 
01754 #define AXIS2_MSG_CTX_GET_DOING_MTOM(msg_ctx, env) \
01755       ((msg_ctx)->ops->get_doing_mtom(msg_ctx, env))
01756 
01759 #define AXIS2_MSG_CTX_SET_DOING_MTOM(msg_ctx, env, doing_mtom) \
01760       ((msg_ctx)->ops->set_doing_mtom(msg_ctx, env, doing_mtom))
01761 
01764 #define AXIS2_MSG_CTX_GET_DOING_REST(msg_ctx, env) \
01765       ((msg_ctx)->ops->get_doing_rest(msg_ctx, env))
01766 
01769 #define AXIS2_MSG_CTX_SET_DOING_REST(msg_ctx, env, doing_rest) \
01770       ((msg_ctx)->ops->set_doing_rest(msg_ctx, env, doing_rest))
01771 
01774 #define AXIS2_MSG_CTX_SET_DO_REST_THROUGH_POST(msg_ctx, env, do_rest_through_post) \
01775       ((msg_ctx)->ops->set_do_rest_through_post(msg_ctx, env, do_rest_through_post))
01776 
01779 #define AXIS2_MSG_CTX_GET_IS_SOAP_11(msg_ctx, env) \
01780       ((msg_ctx)->ops->get_is_soap_11(msg_ctx, env))
01781 
01784 #define AXIS2_MSG_CTX_SET_IS_SOAP_11(msg_ctx, env, is_soap11) \
01785       ((msg_ctx)->ops->set_is_soap_11(msg_ctx, env, is_soap11))
01786 
01789 #define AXIS2_MSG_CTX_GET_SVC_GRP_CTX(msg_ctx, env) \
01790       ((msg_ctx)->ops->get_svc_grp_ctx(msg_ctx, env))
01791 
01794 #define AXIS2_MSG_CTX_SET_SVC_GRP_CTX(msg_ctx, env, svc_grp_ctx) \
01795       ((msg_ctx)->ops->set_svc_grp_ctx(msg_ctx, env, svc_grp_ctx))
01796 
01799 #define AXIS2_MSG_CTX_GET_OP(msg_ctx, env) \
01800       ((msg_ctx)->ops->get_op(msg_ctx, env))
01801 
01804 #define AXIS2_MSG_CTX_SET_OP(msg_ctx, env, op) \
01805       ((msg_ctx)->ops->set_op(msg_ctx, env, op))
01806 
01809 #define AXIS2_MSG_CTX_GET_SVC(msg_ctx, env) \
01810       ((msg_ctx)->ops->get_svc(msg_ctx, env))
01811 
01814 #define AXIS2_MSG_CTX_SET_SVC(msg_ctx, env, svc) \
01815       ((msg_ctx)->ops->set_svc(msg_ctx, env, svc))
01816 
01819 #define AXIS2_MSG_CTX_GET_SVC_GRP(msg_ctx, env) \
01820       ((msg_ctx)->ops->get_svc_grp(msg_ctx, env))
01821 
01824 #define AXIS2_MSG_CTX_SET_SVC_GRP(msg_ctx, env, svc_grp) \
01825       ((msg_ctx)->ops->set_svc_grp(msg_ctx, env, svc_grp))
01826 
01829 #define AXIS2_MSG_CTX_GET_SVC_GRP_CTX_ID(msg_ctx, env) \
01830       ((msg_ctx)->ops->get_svc_grp_ctx_id(msg_ctx, env))
01831 
01834 #define AXIS2_MSG_CTX_SET_SVC_GRP_CTX_ID(msg_ctx, env, svc_grp_ctx_id) \
01835       ((msg_ctx)->ops->set_svc_grp_ctx_id(msg_ctx, env, svc_grp_ctx_id))
01836 
01839 #define AXIS2_MSG_CTX_IS_PAUSED(msg_ctx, env) \
01840       ((msg_ctx)->ops->is_paused(msg_ctx, env))
01841 
01844 #define AXIS2_MSG_CTX_FIND_SVC(msg_ctx, env) \
01845       ((msg_ctx)->ops->find_svc(msg_ctx, env))
01846 
01849 #define AXIS2_MSG_CTX_FIND_OP(msg_ctx, env, svc) \
01850       ((msg_ctx)->ops->find_op(msg_ctx, env, svc))
01851 
01854 #define AXIS2_MSG_CTX_SET_OPTIONS(msg_ctx, env, options) \
01855       ((msg_ctx)->ops->set_options(msg_ctx, env, options))
01856 
01859 #define AXIS2_MSG_CTX_SET_FLOW(msg_ctx, env, flow) \
01860       ((msg_ctx)->ops->set_flow(msg_ctx, env, flow))
01861 
01864 #define AXIS2_MSG_CTX_GET_FLOW(msg_ctx, env) \
01865       ((msg_ctx)->ops->get_flow(msg_ctx, env))
01866 
01869 #define AXIS2_MSG_CTX_SET_EXECUTION_CHAIN(msg_ctx, env, chain) \
01870       ((msg_ctx)->ops->set_execution_chain(msg_ctx, env, chain))
01871 
01874 #define AXIS2_MSG_CTX_GET_EXECUTION_CHAIN(msg_ctx, env) \
01875       ((msg_ctx)->ops->get_execution_chain(msg_ctx, env))
01876 
01879 #define AXIS2_MSG_CTX_SET_CURRENT_HANDLER_INDEX(msg_ctx, env, index) \
01880       ((msg_ctx)->ops->set_current_handler_index(msg_ctx, env, index))
01881 
01884 #define AXIS2_MSG_CTX_GET_CURRENT_HANDLER_INDEX(msg_ctx, env) \
01885       ((msg_ctx)->ops->get_current_handler_index(msg_ctx, env))
01886 
01889 #define AXIS2_MSG_CTX_GET_PAUSED_HANDLER_INDEX(msg_ctx, env) \
01890       ((msg_ctx)->ops->get_paused_handler_index(msg_ctx, env))
01891 
01894 #define AXIS2_MSG_CTX_SET_CURRENT_PHASE_INDEX(msg_ctx, env, index) \
01895       ((msg_ctx)->ops->set_current_phase_index(msg_ctx, env, index))
01896 
01899 #define AXIS2_MSG_CTX_GET_CURRENT_PHASE_INDEX(msg_ctx, env) \
01900       ((msg_ctx)->ops->get_current_phase_index(msg_ctx, env))
01901 
01904 #define AXIS2_MSG_CTX_GET_PAUSED_PHASE_INDEX(msg_ctx, env) \
01905       ((msg_ctx)->ops->get_paused_phase_index(msg_ctx, env))
01906 
01908 #ifdef __cplusplus
01909 }
01910 #endif
01911 
01912 #endif                          /* AXIS2_MSG_CTX_H */

Generated on Wed Dec 20 20:34:50 2006 for Axis2/C by  doxygen 1.5.1