axis2_phase_resolver.h

Go to the documentation of this file.
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_PHASE_RESOLVER_H
00020 #define AXIS2_PHASE_RESOLVER_H
00021 
00064 #include <axis2_const.h>
00065 #include <axutil_error.h>
00066 #include <axis2_defines.h>
00067 #include <axutil_env.h>
00068 #include <axutil_allocator.h>
00069 #include <axutil_qname.h>
00070 #include <axutil_array_list.h>
00071 #include <axutil_hash.h>
00072 #include <axis2_handler_desc.h>
00073 #include <axis2_phase.h>
00074 #include <axis2_phase_rule.h>
00075 #include <axis2_handler.h>
00076 #include <axis2_handler_desc.h>
00077 #include <axis2_flow.h>
00078 #include <axis2_module_desc.h>
00079 #include <axis2_phase_holder.h>
00080 
00081 #ifdef __cplusplus
00082 extern "C"
00083 {
00084 #endif
00085 
00087     typedef struct axis2_phase_resolver axis2_phase_resolver_t;
00088 
00089     struct axis2_phase;
00090     struct axis2_handler_desc;
00091     struct axis2_module_desc;
00092     struct axis2_handler;
00093     struct axis2_phase_rule;
00094     struct axis2_svc;
00095     struct axis2_conf;
00096     struct axis2_op;
00097     struct axis2_phase_holder;
00098 
00105     AXIS2_EXTERN void AXIS2_CALL
00106     axis2_phase_resolver_free(
00107         axis2_phase_resolver_t * phase_resolver,
00108         const axutil_env_t * env);
00109 
00119     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00120 
00121     axis2_phase_resolver_engage_module_globally(
00122         axis2_phase_resolver_t * phase_resolver,
00123         const axutil_env_t * env,
00124         struct axis2_module_desc *module);
00125 
00136     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00137 
00138     axis2_phase_resolver_engage_module_to_svc(
00139         axis2_phase_resolver_t * phase_resolver,
00140         const axutil_env_t * env,
00141         struct axis2_svc *svc,
00142         struct axis2_module_desc *module_desc);
00143 
00152     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00153     axis2_phase_resolver_engage_module_to_op(
00154         axis2_phase_resolver_t * phase_resolver,
00155         const axutil_env_t * env,
00156         struct axis2_op *axis_op,
00157         struct axis2_module_desc *module_desc);
00158 
00167     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00168     axis2_phase_resolver_build_execution_chains_for_svc(
00169         axis2_phase_resolver_t * phase_resolver,
00170         const axutil_env_t * env);
00171 
00179     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00180 
00181     axis2_phase_resolver_build_execution_chains_for_module_op(
00182         axis2_phase_resolver_t * phase_resolver,
00183         const axutil_env_t * env,
00184         struct axis2_op *op);
00185 
00196     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00197     axis2_phase_resolver_disengage_module_from_svc(
00198         axis2_phase_resolver_t * phase_resolver,
00199         const axutil_env_t * env,
00200         struct axis2_svc *svc,
00201         struct axis2_module_desc *module_desc);
00202 
00211     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00212     axis2_phase_resolver_disengage_module_from_op(
00213         axis2_phase_resolver_t * phase_resolver,
00214         const axutil_env_t * env,
00215         struct axis2_op *axis_op,
00216         struct axis2_module_desc *module_desc);
00217 
00226     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00227     axis2_phase_resolver_build_transport_chains(
00228         axis2_phase_resolver_t * phase_resolver,
00229         const axutil_env_t * env);
00230 
00236     AXIS2_EXTERN axis2_phase_resolver_t *AXIS2_CALL
00237 
00238     axis2_phase_resolver_create(
00239         const axutil_env_t * env);
00240 
00248     AXIS2_EXTERN axis2_phase_resolver_t *AXIS2_CALL
00249 
00250     axis2_phase_resolver_create_with_config(
00251         const axutil_env_t * env,
00252         struct axis2_conf *axis2_config);
00253 
00263     AXIS2_EXTERN axis2_phase_resolver_t *AXIS2_CALL
00264 
00265     axis2_phase_resolver_create_with_config_and_svc(
00266         const axutil_env_t * env,
00267         struct axis2_conf *axis2_config,
00268         struct axis2_svc *svc);
00269 
00272 #ifdef __cplusplus
00273 }
00274 #endif
00275 #endif                          /* AXIS2_PHASE_RESOLVER_H */

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