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

Generated on Fri Apr 17 11:49:42 2009 for Axis2/C by  doxygen 1.5.3