00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIS2_HTTP_CLIENT_H
00020 #define AXIS2_HTTP_CLIENT_H
00021
00034 #include <axis2_const.h>
00035 #include <axis2_defines.h>
00036 #include <axutil_env.h>
00037 #include <axis2_http_simple_response.h>
00038 #include <axis2_http_simple_request.h>
00039 #include <axutil_url.h>
00040
00041
00042
00043 #ifdef __cplusplus
00044 extern "C"
00045 {
00046 #endif
00047
00049 typedef struct axis2_http_client axis2_http_client_t;
00050
00057 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00058 axis2_http_client_send(
00059 axis2_http_client_t * client,
00060 const axutil_env_t * env,
00061 axis2_http_simple_request_t * request,
00062 axis2_char_t * ssl_pp);
00063
00068 AXIS2_EXTERN int AXIS2_CALL
00069 axis2_http_client_recieve_header(
00070 axis2_http_client_t * client,
00071 const axutil_env_t * env);
00072
00077 AXIS2_EXTERN axis2_http_simple_response_t *AXIS2_CALL
00078
00079 axis2_http_client_get_response(
00080 const axis2_http_client_t * client,
00081 const axutil_env_t * env);
00082
00089 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00090 axis2_http_client_set_url(
00091 axis2_http_client_t * client,
00092 const axutil_env_t * env,
00093 axutil_url_t * url);
00094
00099 AXIS2_EXTERN axutil_url_t *AXIS2_CALL
00100 axis2_http_client_get_url(
00101 const axis2_http_client_t * client,
00102 const axutil_env_t * env);
00103
00110 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00111 axis2_http_client_set_timeout(
00112 axis2_http_client_t * client,
00113 const axutil_env_t * env,
00114 int timeout_ms);
00115
00120 AXIS2_EXTERN int AXIS2_CALL
00121 axis2_http_client_get_timeout(
00122 const axis2_http_client_t * client,
00123 const axutil_env_t * env);
00124
00132 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00133 axis2_http_client_set_proxy(
00134 axis2_http_client_t * client,
00135 const axutil_env_t * env,
00136 axis2_char_t * proxy_host,
00137 int proxy_port);
00138
00143 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00144 axis2_http_client_get_proxy(
00145 const axis2_http_client_t * client,
00146 const axutil_env_t * env);
00147
00148 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00149
00150 axis2_http_client_connect_ssl_host(
00151 axis2_http_client_t * client,
00152 const axutil_env_t * env,
00153 axis2_char_t * host,
00154 int port);
00155
00156 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00157
00158 axis2_http_client_set_dump_input_msg(
00159 axis2_http_client_t * client,
00160 const axutil_env_t * env,
00161 axis2_bool_t dump_input_msg);
00162
00169 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00170 axis2_http_client_set_server_cert(
00171 axis2_http_client_t * client,
00172 const axutil_env_t * env,
00173 axis2_char_t * server_cert);
00174
00179 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00180 axis2_http_client_get_server_cert(
00181 const axis2_http_client_t * client,
00182 const axutil_env_t * env);
00183
00190 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00191 axis2_http_client_set_key_file(
00192 axis2_http_client_t * client,
00193 const axutil_env_t * env,
00194 axis2_char_t * key_file);
00195
00200 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00201 axis2_http_client_get_key_file(
00202 const axis2_http_client_t * client,
00203 const axutil_env_t * env);
00204
00210 AXIS2_EXTERN void AXIS2_CALL
00211 axis2_http_client_free(
00212 axis2_http_client_t * client,
00213 const axutil_env_t * env);
00214
00219 AXIS2_EXTERN axis2_http_client_t *AXIS2_CALL
00220 axis2_http_client_create(
00221 const axutil_env_t * env,
00222 axutil_url_t * url);
00223
00231 AXIS2_EXTERN void AXIS2_CALL
00232 axis2_http_client_free_void_arg(
00233 void *client,
00234 const axutil_env_t * env);
00235
00236 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00237 axis2_http_client_set_mime_parts(
00238 axis2_http_client_t * client,
00239 const axutil_env_t * env,
00240 axutil_array_list_t *mime_parts);
00241
00242 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00243 axis2_http_client_get_mime_parts(
00244 const axis2_http_client_t * client,
00245 const axutil_env_t * env);
00246
00247 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00248 axis2_http_client_set_doing_mtom(
00249 axis2_http_client_t * client,
00250 const axutil_env_t * env,
00251 axis2_bool_t doing_mtom);
00252
00253 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00254 axis2_http_client_get_doing_mtom(
00255 const axis2_http_client_t * client,
00256 const axutil_env_t * env);
00257
00258 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00259 axis2_http_client_set_mtom_sending_callback_name(
00260 axis2_http_client_t * client,
00261 const axutil_env_t * env,
00262 axis2_char_t *callback_name);
00263
00264
00266 #ifdef __cplusplus
00267 }
00268 #endif
00269
00270 #endif