axis2_op.h

00001 
00002 /*
00003  * Licensed to the Apache Software Foundation (ASF) under one or more
00004  * contributor license agreements.  See the NOTICE file distributed with
00005  * this work for additional information regarding copyright ownership.
00006  * The ASF licenses this file to You under the Apache License, Version 2.0
00007  * (the "License"); you may not use this file except in compliance with
00008  * the License.  You may obtain a copy of the License at
00009  *
00010  *      http://www.apache.org/licenses/LICENSE-2.0
00011  *
00012  * Unless required by applicable law or agreed to in writing, software
00013  * distributed under the License is distributed on an "AS IS" BASIS,
00014  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015  * See the License for the specific language governing permissions and
00016  * limitations under the License.
00017  */
00018 
00019 #ifndef AXIS2_OP_H
00020 #define AXIS2_OP_H
00021 
00040 #include <axutil_param_container.h>
00041 #include <axis2_svc.h>
00042 #include <axis2_msg_recv.h>
00043 #include <axutil_array_list.h>
00044 #include <axis2_module_desc.h>
00045 #include <axis2_description.h>
00046 #include <axis2_phase_meta.h>
00047 #include <axis2_relates_to.h>
00048 #include <axis2_msg_ctx.h>
00049 #include <axis2_op_ctx.h>
00050 #include <axis2_svc_ctx.h>
00051 
00052 #ifdef __cplusplus
00053 extern "C"
00054 {
00055 #endif
00056 
00058     typedef struct axis2_op axis2_op_t;
00059 
00060     struct axis2_svc;
00061     struct axis2_msg_recv;
00062     struct axutil_param_container;
00063     struct axis2_module_desc;
00064     struct axis2_op;
00065     struct axis2_relates_to;
00066     struct axis2_op_ctx;
00067     struct axis2_svc_ctx;
00068     struct axis2_msg_ctx;
00069     struct axis2_msg;
00070     struct axis2_conf;
00071 
00073 #define AXIS2_SOAP_ACTION "soapAction"
00074 
00080     AXIS2_EXTERN axis2_op_t *AXIS2_CALL
00081     axis2_op_create(
00082         const axutil_env_t * env);
00083 
00090     AXIS2_EXTERN void AXIS2_CALL
00091     axis2_op_free(
00092         axis2_op_t * op,
00093         const axutil_env_t * env);
00094 
00101     AXIS2_EXTERN void AXIS2_CALL
00102     axis2_op_free_void_arg(
00103         void *op,
00104         const axutil_env_t * env);
00105 
00114     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00115     axis2_op_add_param(
00116         axis2_op_t * op,
00117         const axutil_env_t * env,
00118         axutil_param_t * param);
00119 
00128     AXIS2_EXTERN axutil_param_t *AXIS2_CALL
00129     axis2_op_get_param(
00130         const axis2_op_t * op,
00131         const axutil_env_t * env,
00132         const axis2_char_t * name);
00133 
00141     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00142     axis2_op_get_all_params(
00143         const axis2_op_t * op,
00144         const axutil_env_t * env);
00145 
00153     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00154     axis2_op_is_param_locked(
00155         axis2_op_t * op,
00156         const axutil_env_t * env,
00157         const axis2_char_t * param_name);
00158 
00167     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00168     axis2_op_set_parent(
00169         axis2_op_t * op,
00170         const axutil_env_t * env,
00171         struct axis2_svc *svc);
00172 
00180     AXIS2_EXTERN struct axis2_svc *AXIS2_CALL
00181     axis2_op_get_parent(
00182         const axis2_op_t * op,
00183         const axutil_env_t * env);
00184 
00193     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00194     axis2_op_set_rest_http_method(
00195         axis2_op_t * op,
00196         const axutil_env_t * env,
00197         const axis2_char_t * rest_http_method);
00198 
00206     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00207     axis2_op_get_rest_http_method(
00208         const axis2_op_t * op,
00209         const axutil_env_t * env);
00210 
00219     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00220     axis2_op_set_rest_http_location(
00221         axis2_op_t * op,
00222         const axutil_env_t * env,
00223         const axis2_char_t * rest_http_location);
00224 
00232     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00233     axis2_op_get_rest_http_location(
00234         const axis2_op_t * op,
00235         const axutil_env_t * env);
00236 
00246     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00247     axis2_op_set_qname(
00248         axis2_op_t * op,
00249         const axutil_env_t * env,
00250         const axutil_qname_t * qname);
00251 
00258     AXIS2_EXTERN const axutil_qname_t *AXIS2_CALL
00259     axis2_op_get_qname(
00260         void *op,
00261         const axutil_env_t * env);
00262 
00270     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00271     axis2_op_set_msg_exchange_pattern(
00272         axis2_op_t * op,
00273         const axutil_env_t * env,
00274         const axis2_char_t * pattern);
00275 
00282     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00283 
00284     axis2_op_get_msg_exchange_pattern(
00285         const axis2_op_t * op,
00286         const axutil_env_t * env);
00287 
00297     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00298     axis2_op_set_msg_recv(
00299         axis2_op_t * op,
00300         const axutil_env_t * env,
00301         struct axis2_msg_recv *msg_recv);
00302 
00311     AXIS2_EXTERN struct axis2_msg_recv *AXIS2_CALL
00312                 axis2_op_get_msg_recv(
00313                     const axis2_op_t * op,
00314                     const axutil_env_t * env);
00315 
00323     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00324     axis2_op_get_style(
00325         const axis2_op_t * op,
00326         const axutil_env_t * env);
00327 
00336     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00337     axis2_op_set_style(
00338         axis2_op_t * op,
00339         const axutil_env_t * env,
00340         const axis2_char_t * style);
00341 
00352     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00353     axis2_op_engage_module(
00354         axis2_op_t * op,
00355         const axutil_env_t * env,
00356         struct axis2_module_desc *module_desc,
00357         struct axis2_conf *conf);
00358 
00367     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00368 
00369     axis2_op_add_to_engaged_module_list(
00370         axis2_op_t * op,
00371         const axutil_env_t * env,
00372         struct axis2_module_desc *module_dec);
00373 
00380     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00381     axis2_op_get_all_modules(
00382         const axis2_op_t * op,
00383         const axutil_env_t * env);
00384 
00392     AXIS2_EXTERN int AXIS2_CALL
00393     axis2_op_get_axis_specific_mep_const(
00394         axis2_op_t * op,
00395         const axutil_env_t * env);
00396 
00405     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00406     axis2_op_get_fault_in_flow(
00407         const axis2_op_t * op,
00408         const axutil_env_t * env);
00409 
00418     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00419     axis2_op_get_fault_out_flow(
00420         const axis2_op_t * op,
00421         const axutil_env_t * env);
00422 
00431     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00432     axis2_op_get_out_flow(
00433         const axis2_op_t * op,
00434         const axutil_env_t * env);
00435 
00444     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00445     axis2_op_get_in_flow(
00446         const axis2_op_t * op,
00447         const axutil_env_t * env);
00448 
00458     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00459     axis2_op_set_fault_in_flow(
00460         axis2_op_t * op,
00461         const axutil_env_t * env,
00462         axutil_array_list_t * list);
00463 
00473     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00474     axis2_op_set_fault_out_flow(
00475         axis2_op_t * op,
00476         const axutil_env_t * env,
00477         axutil_array_list_t * list);
00478 
00488     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00489     axis2_op_set_out_flow(
00490         axis2_op_t * op,
00491         const axutil_env_t * env,
00492         axutil_array_list_t * list);
00493 
00503     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00504     axis2_op_set_in_flow(
00505         axis2_op_t * op,
00506         const axutil_env_t * env,
00507         axutil_array_list_t * list);
00508 
00517     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00518     axis2_op_add_module_qname(
00519         axis2_op_t * op,
00520         const axutil_env_t * env,
00521         const axutil_qname_t * module_qname);
00522 
00530     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00531 
00532     axis2_op_get_all_module_qnames(
00533         const axis2_op_t * op,
00534         const axutil_env_t * env);
00535 
00547     AXIS2_EXTERN struct axis2_op_ctx *AXIS2_CALL
00548                 axis2_op_find_op_ctx(
00549                     axis2_op_t * op,
00550                     const axutil_env_t * env,
00551                     struct axis2_msg_ctx *msg_ctx,
00552                     struct axis2_svc_ctx *svc_ctx);
00553 
00565     AXIS2_EXTERN struct axis2_op_ctx *AXIS2_CALL
00566 
00567                 axis2_op_find_existing_op_ctx(
00568                     axis2_op_t * op,
00569                     const axutil_env_t * env,
00570                     const struct axis2_msg_ctx *msg_ctx);
00571 
00583     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00584     axis2_op_register_op_ctx(
00585         axis2_op_t * op,
00586         const axutil_env_t * env,
00587         struct axis2_msg_ctx *msg_ctx,
00588         struct axis2_op_ctx *op_ctx);
00589 
00597     AXIS2_EXTERN struct axis2_msg *AXIS2_CALL
00598                 axis2_op_get_msg(
00599                     const axis2_op_t * op,
00600                     const axutil_env_t * env,
00601                     const axis2_char_t * label);
00602 
00611     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00612     axis2_op_add_msg(
00613         axis2_op_t * op,
00614         const axutil_env_t * env,
00615         const axis2_char_t * label,
00616         const struct axis2_msg *msg);
00617 
00624     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00625     axis2_op_is_from_module(
00626         const axis2_op_t * op,
00627         const axutil_env_t * env);
00628 
00636     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00637     axis2_op_set_wsamapping_list(
00638         axis2_op_t * op,
00639         const axutil_env_t * env,
00640         axutil_array_list_t * mapping_list);
00641 
00648     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00649 
00650     axis2_op_get_wsamapping_list(
00651         axis2_op_t * op,
00652         const axutil_env_t * env);
00653 
00654     AXIS2_EXTERN axutil_param_container_t *AXIS2_CALL
00655 
00656     axis2_op_get_param_container(
00657         const axis2_op_t * op,
00658         const axutil_env_t * env);
00659 
00660     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00661 
00662     axis2_op_remove_from_engaged_module_list(
00663         axis2_op_t * op,
00664         const axutil_env_t * env,
00665         struct axis2_module_desc *module_desc);
00666 
00672     AXIS2_EXTERN axis2_op_t *AXIS2_CALL
00673     axis2_op_create_from_module(
00674         const axutil_env_t * env);
00675 
00682     AXIS2_EXTERN axis2_op_t *AXIS2_CALL
00683     axis2_op_create_with_qname(
00684         const axutil_env_t * env,
00685         const axutil_qname_t * name);
00686 
00694     AXIS2_EXTERN void AXIS2_CALL
00695     axis2_op_free_void_arg(
00696         void *op,
00697         const axutil_env_t * env);
00698 
00705     AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00706     axis2_op_get_base(
00707         const axis2_op_t * op,
00708         const axutil_env_t * env);
00709 
00711 #ifdef __cplusplus
00712 }
00713 #endif
00714 #endif                          /* AXIS2_OP_H */

Generated on Wed Feb 27 19:55:35 2008 for Axis2/C by  doxygen 1.5.5