# axis2_http_client.h

Go to the documentation of this file.

    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_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                          /* AXIS2_HTTP_CLIENT_H */