# axis2_callback_recv.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_CALLBACK_RECV_H
    00020 #define AXIS2_CALLBACK_RECV_H
    00021
    00037 #include <axis2_defines.h>
    00038 #include <axutil_env.h>
    00039 #include <axis2_msg_recv.h>
    00040 #include <axis2_callback.h>
    00041
    00042 #ifdef __cplusplus
    00043 extern "C"
    00044 {
    00045 #endif
    00046
    00048     typedef struct axis2_callback_recv axis2_callback_recv_t;
    00049
    00056     AXIS2_EXTERN axis2_msg_recv_t *AXIS2_CALL
    00057     axis2_callback_recv_get_base(
    00058         axis2_callback_recv_t * callback_recv,
    00059         const axutil_env_t * env);
    00060
    00067     AXIS2_EXTERN void AXIS2_CALL
    00068     axis2_callback_recv_free(
    00069         axis2_callback_recv_t * callback_recv,
    00070         const axutil_env_t * env);
    00071
    00083     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00084     axis2_callback_recv_add_callback(
    00085         struct axis2_callback_recv *callback_recv,
    00086         const axutil_env_t * env,
    00087         const axis2_char_t * msg_id,
    00088         axis2_callback_t * callback);
    00089
    00096     AXIS2_EXTERN axis2_callback_recv_t *AXIS2_CALL
    00097     axis2_callback_recv_create(
    00098         const axutil_env_t * env);
    00099
    00101 #define AXIS2_CALLBACK_RECV_GET_BASE(callback_recv, env) \
    00102     axis2_callback_recv_get_base(callback_recv, env)
    00103
    00105 #define AXIS2_CALLBACK_RECV_FREE(callback_recv, env) \
    00106     axis2_callback_recv_free(callback_recv, env)
    00107
    00109 #define AXIS2_CALLBACK_RECV_ADD_CALLBACK(callback_recv, env, msg_id, callback)\
    00110     axis2_callback_recv_add_callback(callback_recv, env, msg_id, callback)
    00111
    00113 #ifdef __cplusplus
    00114 }
    00115 #endif
    00116
    00117 #endif                          /* AXIS2_CALLBACK_RECV_H */