00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIS2_OUT_TRANSPORT_INFO_H
00020 #define AXIS2_OUT_TRANSPORT_INFO_H
00021
00034 #include <axis2_const.h>
00035 #include <axis2_defines.h>
00036 #include <axutil_env.h>
00037
00038 #ifdef __cplusplus
00039 extern "C"
00040 {
00041 #endif
00042
00044 typedef struct axis2_out_transport_info axis2_out_transport_info_t;
00045
00046 typedef struct axis2_out_transport_info_ops axis2_out_transport_info_ops_t;
00047
00048 struct axis2_out_transport_info_ops
00049 {
00050 axis2_status_t(
00051 AXIS2_CALL
00052 * set_content_type)(
00053 axis2_out_transport_info_t * info,
00054 const axutil_env_t * env,
00055 const axis2_char_t * content_type);
00056
00057 axis2_status_t(
00058 AXIS2_CALL
00059 * set_char_encoding)(
00060 axis2_out_transport_info_t * info,
00061 const axutil_env_t * env,
00062 const axis2_char_t * encoding);
00063
00064 void(
00065 AXIS2_CALL
00066 * free)(
00067 axis2_out_transport_info_t * info,
00068 const axutil_env_t * env);
00069 };
00070
00071 struct axis2_out_transport_info
00072 {
00073 const axis2_out_transport_info_ops_t *ops;
00074 };
00075
00077 #define AXIS2_OUT_TRANSPORT_INFO_SET_CONTENT_TYPE(out_transport_info, \
00078 env, content_type) ((out_transport_info->ops)->set_content_type(out_transport_info, env, content_type))
00079
00081 #define AXIS2_OUT_TRANSPORT_INFO_SET_CHAR_ENCODING(out_transport_info, \
00082 env, encoding) ((out_transport_info->ops)->set_char_encoding(out_transport_info, env, encoding))
00083
00085 #define AXIS2_OUT_TRANSPORT_INFO_FREE(out_transport_info, env)\
00086 ((out_transport_info->ops)->free(out_transport_info, env))
00087
00089 #ifdef __cplusplus
00090 }
00091 #endif
00092 #endif