axis2_op_ctx.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_OP_CTX_H
00020 #define AXIS2_OP_CTX_H
00021 
00040 #include <axis2_defines.h>
00041 #include <axutil_hash.h>
00042 #include <axutil_env.h>
00043 #include <axis2_msg_ctx.h>
00044 #include <axis2_op.h>
00045 
00046 #ifdef __cplusplus
00047 extern "C"
00048 {
00049 #endif
00050 
00052     typedef struct axis2_op_ctx axis2_op_ctx_t;
00053 
00054     struct axis2_svc_ctx;
00055 
00064     AXIS2_EXTERN axis2_op_ctx_t *AXIS2_CALL
00065     axis2_op_ctx_create(
00066         const axutil_env_t * env,
00067         struct axis2_op *op,
00068         struct axis2_svc_ctx *svc_ctx);
00069 
00076     AXIS2_EXTERN axis2_ctx_t *AXIS2_CALL
00077     axis2_op_ctx_get_base(
00078         const axis2_op_ctx_t * op_ctx,
00079         const axutil_env_t * env);
00080 
00087     AXIS2_EXTERN void AXIS2_CALL
00088     axis2_op_ctx_free(
00089         struct axis2_op_ctx *op_ctx,
00090         const axutil_env_t * env);
00091 
00100     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00101     axis2_op_ctx_init(
00102         struct axis2_op_ctx *op_ctx,
00103         const axutil_env_t * env,
00104         struct axis2_conf *conf);
00105 
00112     AXIS2_EXTERN struct axis2_op *AXIS2_CALL
00113     axis2_op_ctx_get_op(
00114         const axis2_op_ctx_t * op_ctx,
00115         const axutil_env_t * env);
00116 
00124     AXIS2_EXTERN struct axis2_svc_ctx *AXIS2_CALL
00125     axis2_op_ctx_get_parent(
00126         const axis2_op_ctx_t * op_ctx,
00127         const axutil_env_t * env);
00128 
00137     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00138     axis2_op_ctx_add_msg_ctx(
00139         struct axis2_op_ctx *op_ctx,
00140         const axutil_env_t * env,
00141         axis2_msg_ctx_t * msg_ctx);
00142 
00150     AXIS2_EXTERN axis2_msg_ctx_t *AXIS2_CALL
00151     axis2_op_ctx_get_msg_ctx(
00152         const axis2_op_ctx_t * op_ctx,
00153         const axutil_env_t * env,
00154         const axis2_wsdl_msg_labels_t message_id);
00155 
00164     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00165     axis2_op_ctx_get_is_complete(
00166         const axis2_op_ctx_t * op_ctx,
00167         const axutil_env_t * env);
00168 
00179     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00180     axis2_op_ctx_set_complete(
00181         struct axis2_op_ctx *op_ctx,
00182         const axutil_env_t * env,
00183         axis2_bool_t is_complete);
00184 
00192     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00193     axis2_op_ctx_cleanup(
00194         struct axis2_op_ctx *op_ctx,
00195         const axutil_env_t * env);
00196 
00205     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00206     axis2_op_ctx_set_parent(
00207         struct axis2_op_ctx *op_ctx,
00208         const axutil_env_t * env,
00209         struct axis2_svc_ctx *svc_ctx);
00210 
00217     AXIS2_EXTERN axis2_msg_ctx_t **AXIS2_CALL
00218     axis2_op_ctx_get_msg_ctx_map(
00219         const axis2_op_ctx_t * op_ctx,
00220         const axutil_env_t * env);
00221 
00230     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00231     axis2_op_ctx_set_response_written(
00232         axis2_op_ctx_t * op_ctx,
00233         const axutil_env_t * env,
00234         const axis2_bool_t response_written);
00235 
00242     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00243     axis2_op_ctx_get_response_written(
00244         const axis2_op_ctx_t * op_ctx,
00245         const axutil_env_t * env);
00246 
00253     AXIS2_EXTERN void AXIS2_CALL
00254     axis2_op_ctx_destroy_mutex(
00255         struct axis2_op_ctx *op_ctx,
00256         const axutil_env_t * env);
00257 
00266     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00267     axis2_op_ctx_is_in_use(
00268         const axis2_op_ctx_t * op_ctx,
00269         const axutil_env_t * env);
00270 
00280     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00281     axis2_op_ctx_set_in_use(
00282         struct axis2_op_ctx *op_ctx,
00283         const axutil_env_t * env,
00284         axis2_bool_t is_in_use);
00285 
00294     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00295     axis2_op_ctx_increment_ref(
00296         axis2_op_ctx_t * op_ctx,
00297         const axutil_env_t * env);
00298 
00301 #ifdef __cplusplus
00302 }
00303 #endif
00304 
00305 #endif                          /* AXIS2_OP_CTX_H */

Generated on Sat May 3 10:44:34 2008 for Axis2/C by  doxygen 1.5.5