00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_HTTP_OUT_TRANSPORT_INFO_H
00019 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_H
00020
00033 #include <axis2_const.h>
00034 #include <axis2_defines.h>
00035 #include <axutil_env.h>
00036 #include <axis2_http_simple_response.h>
00037
00038
00039 #ifdef __cplusplus
00040 extern "C"
00041 {
00042 #endif
00043
00045 typedef struct axis2_http_out_transport_info axis2_http_out_transport_info_t;
00046
00047 struct axis2_http_out_transport_info
00048 {
00049 axis2_http_simple_response_t *response;
00050 axis2_char_t *encoding;
00051
00052 axis2_status_t (AXIS2_CALL *
00053 set_content_type)(axis2_http_out_transport_info_t *info,
00054 const axutil_env_t *env,
00055 const axis2_char_t *content_type);
00056
00057 axis2_status_t (AXIS2_CALL *
00058 set_char_encoding)(axis2_http_out_transport_info_t *info,
00059 const axutil_env_t *env,
00060 const axis2_char_t *encoding);
00061
00062 void (AXIS2_CALL *
00063 free_function)(axis2_http_out_transport_info_t *info,
00064 const axutil_env_t *env);
00065 };
00071 AXIS2_EXTERN int AXIS2_CALL
00072 axis2_http_out_transport_info_set_content_type(axis2_http_out_transport_info_t *info,
00073 const axutil_env_t *env,
00074 const axis2_char_t *content_type);
00075
00082 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00083 axis2_http_out_transport_info_set_char_encoding(axis2_http_out_transport_info_t *info,
00084 const axutil_env_t *env,
00085 const axis2_char_t *encoding);
00086
00092 AXIS2_EXTERN void AXIS2_CALL
00093 axis2_http_out_transport_info_free(axis2_http_out_transport_info_t *out_transport_info,
00094 const axutil_env_t *env);
00095
00100 AXIS2_EXTERN axis2_http_out_transport_info_t *AXIS2_CALL
00101 axis2_http_out_transport_info_create(const axutil_env_t *env,
00102 axis2_http_simple_response_t *response);
00103
00111 AXIS2_EXTERN void AXIS2_CALL
00112 axis2_http_out_transport_info_free_void_arg(void *transport_info,
00113 const axutil_env_t *env);
00114
00115 AXIS2_EXTERN void AXIS2_CALL
00116 axis2_http_out_transport_info_set_char_encoding_func(
00117 axis2_http_out_transport_info_t *out_transport_info,
00118 const axutil_env_t *env,
00119 axis2_status_t (AXIS2_CALL *set_encoding)
00120 (axis2_http_out_transport_info_t *, const axutil_env_t *,const axis2_char_t *));
00121
00122 AXIS2_EXTERN void AXIS2_CALL
00123 axis2_http_out_transport_info_set_content_type_func(
00124 axis2_http_out_transport_info_t *out_transport_info,
00125 const axutil_env_t *env,
00126 axis2_status_t (AXIS2_CALL *set_content_type)(
00127 axis2_http_out_transport_info_t *,
00128 const axutil_env_t*, const axis2_char_t *));
00129
00130 AXIS2_EXTERN void AXIS2_CALL
00131 axis2_http_out_transport_info_set_free_func(
00132 axis2_http_out_transport_info_t *out_transport_info,
00133 const axutil_env_t *env,
00134 void (AXIS2_CALL *free_function)(
00135 axis2_http_out_transport_info_t *,
00136 const axutil_env_t*));
00137
00138
00140 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_SET_CONTENT_TYPE(out_transport_info, \
00141 env, content_type) axis2_http_out_transport_info_set_content_type (out_transport_info, env, content_type)
00142
00144 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_SET_CHAR_ENCODING(out_transport_info,\
00145 env, encoding) axis2_http_out_transport_info_set_char_encoding(out_transport_info, env, encoding)
00146
00148 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_FREE(out_transport_info, env)\
00149 axis2_http_out_transport_info_free(out_transport_info, env)
00150
00152 #ifdef __cplusplus
00153 }
00154 #endif
00155 #endif