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 
00245     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00246     axis2_op_set_qname(
00247         axis2_op_t * op,
00248         const axutil_env_t * env,
00249         const axutil_qname_t * qname);
00250 
00257     AXIS2_EXTERN const axutil_qname_t *AXIS2_CALL
00258     axis2_op_get_qname(
00259         void *op,
00260         const axutil_env_t * env);
00261 
00269     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00270     axis2_op_set_msg_exchange_pattern(
00271         axis2_op_t * op,
00272         const axutil_env_t * env,
00273         const axis2_char_t * pattern);
00274 
00281     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00282 
00283     axis2_op_get_msg_exchange_pattern(
00284         const axis2_op_t * op,
00285         const axutil_env_t * env);
00286 
00296     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00297     axis2_op_set_msg_recv(
00298         axis2_op_t * op,
00299         const axutil_env_t * env,
00300         struct axis2_msg_recv *msg_recv);
00301 
00310     AXIS2_EXTERN struct axis2_msg_recv *AXIS2_CALL
00311                 axis2_op_get_msg_recv(
00312                     const axis2_op_t * op,
00313                     const axutil_env_t * env);
00314 
00322     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00323     axis2_op_get_style(
00324         const axis2_op_t * op,
00325         const axutil_env_t * env);
00326 
00335     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00336     axis2_op_set_style(
00337         axis2_op_t * op,
00338         const axutil_env_t * env,
00339         const axis2_char_t * style);
00340 
00351     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00352     axis2_op_engage_module(
00353         axis2_op_t * op,
00354         const axutil_env_t * env,
00355         struct axis2_module_desc *module_desc,
00356         struct axis2_conf *conf);
00357 
00366     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00367 
00368     axis2_op_add_to_engaged_module_list(
00369         axis2_op_t * op,
00370         const axutil_env_t * env,
00371         struct axis2_module_desc *module_dec);
00372 
00379     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00380     axis2_op_get_all_modules(
00381         const axis2_op_t * op,
00382         const axutil_env_t * env);
00383 
00391     AXIS2_EXTERN int AXIS2_CALL
00392     axis2_op_get_axis_specific_mep_const(
00393         axis2_op_t * op,
00394         const axutil_env_t * env);
00395 
00404     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00405     axis2_op_get_fault_in_flow(
00406         const axis2_op_t * op,
00407         const axutil_env_t * env);
00408 
00417     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00418     axis2_op_get_fault_out_flow(
00419         const axis2_op_t * op,
00420         const axutil_env_t * env);
00421 
00430     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00431     axis2_op_get_out_flow(
00432         const axis2_op_t * op,
00433         const axutil_env_t * env);
00434 
00443     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00444     axis2_op_get_in_flow(
00445         const axis2_op_t * op,
00446         const axutil_env_t * env);
00447 
00457     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00458     axis2_op_set_fault_in_flow(
00459         axis2_op_t * op,
00460         const axutil_env_t * env,
00461         axutil_array_list_t * list);
00462 
00472     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00473     axis2_op_set_fault_out_flow(
00474         axis2_op_t * op,
00475         const axutil_env_t * env,
00476         axutil_array_list_t * list);
00477 
00487     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00488     axis2_op_set_out_flow(
00489         axis2_op_t * op,
00490         const axutil_env_t * env,
00491         axutil_array_list_t * list);
00492 
00502     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00503     axis2_op_set_in_flow(
00504         axis2_op_t * op,
00505         const axutil_env_t * env,
00506         axutil_array_list_t * list);
00507 
00516     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00517     axis2_op_add_module_qname(
00518         axis2_op_t * op,
00519         const axutil_env_t * env,
00520         const axutil_qname_t * module_qname);
00521 
00529     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00530 
00531     axis2_op_get_all_module_qnames(
00532         const axis2_op_t * op,
00533         const axutil_env_t * env);
00534 
00546     AXIS2_EXTERN struct axis2_op_ctx *AXIS2_CALL
00547                 axis2_op_find_op_ctx(
00548                     axis2_op_t * op,
00549                     const axutil_env_t * env,
00550                     struct axis2_msg_ctx *msg_ctx,
00551                     struct axis2_svc_ctx *svc_ctx);
00552 
00564     AXIS2_EXTERN struct axis2_op_ctx *AXIS2_CALL
00565 
00566                 axis2_op_find_existing_op_ctx(
00567                     axis2_op_t * op,
00568                     const axutil_env_t * env,
00569                     const struct axis2_msg_ctx *msg_ctx);
00570 
00582     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00583     axis2_op_register_op_ctx(
00584         axis2_op_t * op,
00585         const axutil_env_t * env,
00586         struct axis2_msg_ctx *msg_ctx,
00587         struct axis2_op_ctx *op_ctx);
00588 
00596     AXIS2_EXTERN struct axis2_msg *AXIS2_CALL
00597                 axis2_op_get_msg(
00598                     const axis2_op_t * op,
00599                     const axutil_env_t * env,
00600                     const axis2_char_t * label);
00601 
00610     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00611     axis2_op_add_msg(
00612         axis2_op_t * op,
00613         const axutil_env_t * env,
00614         const axis2_char_t * label,
00615         const struct axis2_msg *msg);
00616 
00623     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00624     axis2_op_is_from_module(
00625         const axis2_op_t * op,
00626         const axutil_env_t * env);
00627 
00635     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00636     axis2_op_set_wsamapping_list(
00637         axis2_op_t * op,
00638         const axutil_env_t * env,
00639         axutil_array_list_t * mapping_list);
00640 
00647     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00648 
00649     axis2_op_get_wsamapping_list(
00650         axis2_op_t * op,
00651         const axutil_env_t * env);
00652 
00653     AXIS2_EXTERN axutil_param_container_t *AXIS2_CALL
00654 
00655     axis2_op_get_param_container(
00656         const axis2_op_t * op,
00657         const axutil_env_t * env);
00658 
00659     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00660 
00661     axis2_op_remove_from_engaged_module_list(
00662         axis2_op_t * op,
00663         const axutil_env_t * env,
00664         struct axis2_module_desc *module_desc);
00665 
00671     AXIS2_EXTERN axis2_op_t *AXIS2_CALL
00672     axis2_op_create_from_module(
00673         const axutil_env_t * env);
00674 
00681     AXIS2_EXTERN axis2_op_t *AXIS2_CALL
00682     axis2_op_create_with_qname(
00683         const axutil_env_t * env,
00684         const axutil_qname_t * name);
00685 
00693     AXIS2_EXTERN void AXIS2_CALL
00694     axis2_op_free_void_arg(
00695         void *op,
00696         const axutil_env_t * env);
00697 
00704     AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00705     axis2_op_get_base(
00706         const axis2_op_t * op,
00707         const axutil_env_t * env);
00708 
00710 #ifdef __cplusplus
00711 }
00712 #endif
00713 #endif                          /* AXIS2_OP_H */

Generated on Fri Apr 17 11:49:42 2009 for Axis2/C by  doxygen 1.5.3