axis2_msg_recv.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_MSG_RECV_H
00020 #define AXIS2_MSG_RECV_H
00021 
00041 #ifdef __cplusplus
00042 extern "C"
00043 {
00044 #endif
00045 
00046 #include <axis2_defines.h>
00047 #include <axis2_const.h>
00048 #include <axis2_svc_skeleton.h>
00049 #include <axis2_msg_ctx.h>
00050 #include <axis2_op_ctx.h>
00051 #include <axis2_svr_callback.h>
00052 
00053     struct axis2_msg_ctx;
00054 
00056     typedef struct axis2_msg_recv axis2_msg_recv_t;
00057 
00058     typedef axis2_status_t(
00059         AXIS2_CALL
00060         * AXIS2_MSG_RECV_INVOKE_BUSINESS_LOGIC) (
00061             axis2_msg_recv_t * msg_recv,
00062             const axutil_env_t * env,
00063             struct axis2_msg_ctx * in_msg_ctx,
00064             struct axis2_msg_ctx * out_msg_ctx);
00065 
00066     typedef axis2_status_t(
00067         AXIS2_CALL
00068         * AXIS2_MSG_RECV_RECEIVE) (
00069             axis2_msg_recv_t * msg_recv,
00070             const axutil_env_t * env,
00071             struct axis2_msg_ctx * in_msg_ctx,
00072             void *callback_recv_param);
00073 
00080     AXIS2_EXTERN void AXIS2_CALL
00081     axis2_msg_recv_free(
00082         axis2_msg_recv_t * msg_recv,
00083         const axutil_env_t * env);
00084 
00098     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00099     axis2_msg_recv_receive(
00100         axis2_msg_recv_t * msg_recv,
00101         const axutil_env_t * env,
00102         struct axis2_msg_ctx *in_msg_ctx,
00103         void *callback_recv_param);
00104 
00113     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00114 
00115     axis2_msg_recv_invoke_business_logic(
00116         axis2_msg_recv_t * msg_recv,
00117         const axutil_env_t * env,
00118         struct axis2_msg_ctx *in_msg_ctx,
00119         struct axis2_msg_ctx *out_msg_ctx);
00120 
00128     AXIS2_EXTERN axis2_svc_skeleton_t *AXIS2_CALL
00129 
00130     axis2_msg_recv_make_new_svc_obj(
00131         axis2_msg_recv_t * msg_recv,
00132         const axutil_env_t * env,
00133         struct axis2_msg_ctx *msg_ctx);
00134 
00142     AXIS2_EXTERN axis2_svc_skeleton_t *AXIS2_CALL
00143 
00144     axis2_msg_recv_get_impl_obj(
00145         axis2_msg_recv_t * msg_recv,
00146         const axutil_env_t * env,
00147         struct axis2_msg_ctx *msg_ctx);
00148 
00156     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00157     axis2_msg_recv_set_scope(
00158         axis2_msg_recv_t * msg_recv,
00159         const axutil_env_t * env,
00160         const axis2_char_t * scope);
00161 
00168     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00169     axis2_msg_recv_get_scope(
00170         axis2_msg_recv_t * msg_recv,
00171         const axutil_env_t * env);
00172 
00180     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00181     axis2_msg_recv_delete_svc_obj(
00182         axis2_msg_recv_t * msg_recv,
00183         const axutil_env_t * env,
00184         axis2_msg_ctx_t * msg_ctx);
00185 
00186     AXIS2_EXPORT axis2_status_t AXIS2_CALL
00187 
00188     axis2_msg_recv_set_invoke_business_logic(
00189         axis2_msg_recv_t * msg_recv,
00190         const axutil_env_t * env,
00191         AXIS2_MSG_RECV_INVOKE_BUSINESS_LOGIC func);
00192 
00193     AXIS2_EXPORT axis2_status_t AXIS2_CALL
00194     axis2_msg_recv_set_derived(
00195         axis2_msg_recv_t * msg_recv,
00196         const axutil_env_t * env,
00197         void *derived);
00198 
00199     AXIS2_EXPORT void *AXIS2_CALL
00200     axis2_msg_recv_get_derived(
00201         const axis2_msg_recv_t * msg_recv,
00202         const axutil_env_t * env);
00203 
00204     AXIS2_EXPORT axis2_status_t AXIS2_CALL
00205     axis2_msg_recv_set_receive(
00206         axis2_msg_recv_t * msg_recv,
00207         const axutil_env_t * env,
00208         AXIS2_MSG_RECV_RECEIVE func);
00209 
00217     AXIS2_EXTERN axis2_msg_recv_t *AXIS2_CALL
00218     axis2_msg_recv_create(
00219         const axutil_env_t * env);
00220 
00222 #ifdef __cplusplus
00223 }
00224 #endif
00225 
00226 #endif                          /* AXIS2_MSG_RECV_H */

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