axis2_callback.h

Go to the documentation of this file.
00001 /*
00002 * Licensed to the Apache Software Foundation (ASF) under one or more
00003 * contributor license agreements.  See the NOTICE file distributed with
00004 * this work for additional information regarding copyright ownership.
00005 * The ASF licenses this file to You under the Apache License, Version 2.0
00006 * (the "License"); you may not use this file except in compliance with
00007 * the License.  You may obtain a copy of the License at
00008 *
00009 *      http://www.apache.org/licenses/LICENSE-2.0
00010 *
00011 * Unless required by applicable law or agreed to in writing, software
00012 * distributed under the License is distributed on an "AS IS" BASIS,
00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014 * See the License for the specific language governing permissions and
00015 * limitations under the License.
00016 */
00017 
00018 #ifndef AXIS2_CALLBACK_H
00019 #define AXIS2_CALLBACK_H
00020 
00036 #include <axis2_defines.h>
00037 #include <axutil_env.h>
00038 #include <axis2_async_result.h>
00039 #include <axiom_soap_envelope.h>
00040 
00041 #ifdef __cplusplus
00042 extern "C"
00043 {
00044 #endif
00045 
00047     typedef struct axis2_callback axis2_callback_t;
00049     typedef axis2_status_t AXIS2_CALL
00050             axis2_on_complete_func_ptr(axis2_callback_t *,
00051                     const axutil_env_t *);
00053     typedef axis2_status_t AXIS2_CALL
00054             axis2_on_error_func_ptr(axis2_callback_t *,
00055                     const axutil_env_t *, int);
00056 
00065     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00066     axis2_callback_invoke_on_complete(axis2_callback_t *callback,
00067         const axutil_env_t *env,
00068         axis2_async_result_t *result);
00069 
00078     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00079     axis2_callback_report_error(axis2_callback_t *callback,
00080         const axutil_env_t *env,
00081         const int exception);
00082 
00100     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00101     axis2_callback_get_complete(const axis2_callback_t *callback,
00102         const axutil_env_t *env);
00103 
00111     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00112     axis2_callback_set_complete(axis2_callback_t *callback,
00113         const axutil_env_t *env,
00114         const axis2_bool_t complete);
00115 
00122     AXIS2_EXTERN axiom_soap_envelope_t *AXIS2_CALL
00123     axis2_callback_get_envelope(const axis2_callback_t *callback,
00124         const axutil_env_t *env);
00125 
00133     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00134     axis2_callback_set_envelope(axis2_callback_t *callback,
00135         const axutil_env_t *env,
00136         axiom_soap_envelope_t *envelope);
00137 
00144     AXIS2_EXTERN int AXIS2_CALL
00145     axis2_callback_get_error(const axis2_callback_t *callback,
00146         const axutil_env_t *env);
00147 
00155     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00156     axis2_callback_set_error(axis2_callback_t *callback,
00157         const axutil_env_t *env,
00158         const int error);
00159 
00166     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00167     axis2_callback_set_data(axis2_callback_t *callback,
00168         void *data);
00169 
00175     AXIS2_EXTERN void *AXIS2_CALL
00176     axis2_callback_get_data(const axis2_callback_t *callback);
00177 
00183     AXIS2_EXTERN void AXIS2_CALL
00184     axis2_callback_set_on_complete(axis2_callback_t *callback,
00185         axis2_on_complete_func_ptr f);
00186 
00192     AXIS2_EXTERN void AXIS2_CALL
00193     axis2_callback_set_on_error(axis2_callback_t *callback,
00194         axis2_on_error_func_ptr f);
00195 
00202     AXIS2_EXTERN void AXIS2_CALL
00203     axis2_callback_free(axis2_callback_t *callback,
00204         const axutil_env_t *env);
00205 
00211     AXIS2_EXTERN axis2_callback_t *AXIS2_CALL 
00212     axis2_callback_create(const axutil_env_t *env);
00213 
00214 
00216 #ifdef __cplusplus
00217 }
00218 #endif
00219 
00220 #endif                          /* AXIS2_CALLBACK_H */

Generated on Thu May 3 12:31:01 2007 for Axis2/C by  doxygen 1.4.6