/usr/include/axis2-1.6.0/axis2_msg_recv.h is in libaxis2c-dev 1.6.0-6.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 | /*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef AXIS2_MSG_RECV_H
#define AXIS2_MSG_RECV_H
/**
* @defgroup axis2_receivers receivers
* @ingroup axis2
* @{
* @}
*/
/** @defgroup axis2_msg_recv message receiver
* @ingroup axis2_receivers
* Description.
* @{
*/
/**
* @file axis2_msg_recv.h
* @brief Axis Message Receiver interface. Message Receiver struct.
* This interface is extended by custom message receivers
*/
#ifdef __cplusplus
extern "C"
{
#endif
#include <axis2_defines.h>
#include <axis2_const.h>
#include <axis2_svc_skeleton.h>
#include <axis2_msg_ctx.h>
#include <axis2_op_ctx.h>
#include <axis2_svr_callback.h>
#include <axis2_svc.h>
struct axis2_msg_ctx;
/** Type name for struct axis2_msg_recv*/
typedef struct axis2_msg_recv axis2_msg_recv_t;
typedef axis2_status_t(
AXIS2_CALL
* AXIS2_MSG_RECV_INVOKE_BUSINESS_LOGIC) (
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
struct axis2_msg_ctx * in_msg_ctx,
struct axis2_msg_ctx * out_msg_ctx);
typedef axis2_status_t(
AXIS2_CALL
* AXIS2_MSG_RECV_RECEIVE) (
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
struct axis2_msg_ctx * in_msg_ctx,
void *callback_recv_param);
typedef axis2_status_t(
AXIS2_CALL * AXIS2_MSG_RECV_LOAD_AND_INIT_SVC)(
axis2_msg_recv_t *msg_recv,
const axutil_env_t *env,
struct axis2_svc *svc);
/**
* Deallocate memory
* @param msg_recv pinter to message receiver
* @param env pointer to environment struct
* @return void
*/
AXIS2_EXTERN void AXIS2_CALL
axis2_msg_recv_free(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env);
/**
* This method is called from axis2_engine_receive method. This method's
* actual implementation is decided from the create method of the
* extended message receiver object. There depending on the synchronous or
* asynchronous type, receive method is assigned with the synchronous or
* asynchronous implementation of receive.
* @see raw_xml_in_out_msg_recv_create method where receive is assigned
* to receive_sync
* @param msg_recv pointer to message receiver
* @param env pointer to environment struct
* @param in_msg_ctx pointer to in message context
* @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
*/
AXIS2_EXTERN axis2_status_t AXIS2_CALL
axis2_msg_recv_receive(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
struct axis2_msg_ctx *in_msg_ctx,
void *callback_recv_param);
/**
* This contain in out synchronous business invoke logic
* @param msg_recv pointer to message receiver
* @param env pointer to environment struct
* @param in_msg_ctx pointer to in message context
* @param out_msg_ctx pointer to out message context
* @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
*/
AXIS2_EXTERN axis2_status_t AXIS2_CALL
axis2_msg_recv_invoke_business_logic(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
struct axis2_msg_ctx *in_msg_ctx,
struct axis2_msg_ctx *out_msg_ctx);
/**
* this will create a new service skeleton object
* @param msg_recv pointer to message receiver
* @param env pointer to environment struct
* @param msg_ctx pointer to message context
* @return service skeleton object
*/
AXIS2_EXTERN axis2_svc_skeleton_t *AXIS2_CALL
axis2_msg_recv_make_new_svc_obj(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
struct axis2_msg_ctx *msg_ctx);
/**
* This will return the service skeleton object
* @param msg_recv pointer to message receiver
* @param env pointer to environment struct
* @param msg_ctx pointer to message context
* @return service skeleton object
*/
AXIS2_EXTERN axis2_svc_skeleton_t *AXIS2_CALL
axis2_msg_recv_get_impl_obj(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
struct axis2_msg_ctx *msg_ctx);
/**
* Set the application scope
* @param msg_recv pointer to message receiver
* @param env pointer to environment struct
* @param scope pointer to scope
* @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
*/
AXIS2_EXTERN axis2_status_t AXIS2_CALL
axis2_msg_recv_set_scope(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
const axis2_char_t * scope);
/**
* Get the application scope
* @param msg_recv pointer to message receiver
* @env pointer to environment struct
* @return scope
*/
AXIS2_EXTERN axis2_char_t *AXIS2_CALL
axis2_msg_recv_get_scope(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env);
/**
* Delete the service skeleton object created by make_new_svc_obj
* @param msg_recv pointer to message receiver
* @env pointer to environment struct
* @param msg_ctx pointer to message context
* @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
*/
AXIS2_EXTERN axis2_status_t AXIS2_CALL
axis2_msg_recv_delete_svc_obj(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
axis2_msg_ctx_t * msg_ctx);
AXIS2_EXPORT axis2_status_t AXIS2_CALL
axis2_msg_recv_set_invoke_business_logic(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
AXIS2_MSG_RECV_INVOKE_BUSINESS_LOGIC func);
AXIS2_EXPORT axis2_status_t AXIS2_CALL
axis2_msg_recv_set_derived(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
void *derived);
AXIS2_EXPORT void *AXIS2_CALL
axis2_msg_recv_get_derived(
const axis2_msg_recv_t * msg_recv,
const axutil_env_t * env);
AXIS2_EXPORT axis2_status_t AXIS2_CALL
axis2_msg_recv_set_receive(
axis2_msg_recv_t * msg_recv,
const axutil_env_t * env,
AXIS2_MSG_RECV_RECEIVE func);
AXIS2_EXPORT axis2_status_t AXIS2_CALL
axis2_msg_recv_set_load_and_init_svc(
axis2_msg_recv_t *msg_recv,
const axutil_env_t *env,
AXIS2_MSG_RECV_LOAD_AND_INIT_SVC func);
AXIS2_EXPORT axis2_status_t AXIS2_CALL
axis2_msg_recv_load_and_init_svc(
axis2_msg_recv_t *msg_recv,
const axutil_env_t *env,
struct axis2_svc *svc);
/**
* Create new message receiver object. usually this will be called from the
* extended message receiver object.
* @see create method of raw_xml_in_out_msg_recv
* @param env pointer to environment struct
* @return newly created message receiver object
**/
AXIS2_EXTERN axis2_msg_recv_t *AXIS2_CALL
axis2_msg_recv_create(
const axutil_env_t * env);
/** @} */
#ifdef __cplusplus
}
#endif
#endif /* AXIS2_MSG_RECV_H */
|