00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIS2_HTTP_SIMPLE_REQUEST_H
00020 #define AXIS2_HTTP_SIMPLE_REQUEST_H
00021
00033 #include <axis2_const.h>
00034 #include <axis2_defines.h>
00035 #include <axutil_env.h>
00036 #include <axis2_http_request_line.h>
00037 #include <axis2_http_header.h>
00038 #include <axutil_stream.h>
00039 #include <axutil_array_list.h>
00040
00041 #ifdef __cplusplus
00042 extern "C"
00043 {
00044 #endif
00045
00047 typedef struct axis2_http_simple_request axis2_http_simple_request_t;
00048
00053 AXIS2_EXTERN axis2_http_request_line_t *AXIS2_CALL
00054
00055 axis2_http_simple_request_get_request_line(
00056 const axis2_http_simple_request_t * simple_request,
00057 const axutil_env_t * env);
00058
00065 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00066
00067 axis2_http_simple_request_set_request_line(
00068 axis2_http_simple_request_t * simple_request,
00069 const axutil_env_t * env,
00070 axis2_http_request_line_t * request_line);
00071
00077 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00078
00079 axis2_http_simple_request_contains_header(
00080 axis2_http_simple_request_t * simple_request,
00081 const axutil_env_t * env,
00082 const axis2_char_t * name);
00083
00088 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00089
00090 axis2_http_simple_request_get_headers(
00091 const axis2_http_simple_request_t * simple_request,
00092 const axutil_env_t * env);
00093
00099 AXIS2_EXTERN axis2_http_header_t *AXIS2_CALL
00100
00101 axis2_http_simple_request_get_first_header(
00102 const axis2_http_simple_request_t * simple_request,
00103 const axutil_env_t * env,
00104 const axis2_char_t * str);
00105
00112 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00113
00114 axis2_http_simple_request_remove_headers(
00115 axis2_http_simple_request_t * simple_request,
00116 const axutil_env_t * env,
00117 const axis2_char_t * str);
00118
00125 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00126
00127 axis2_http_simple_request_add_header(
00128 axis2_http_simple_request_t * simple_request,
00129 const axutil_env_t * env,
00130 axis2_http_header_t * header);
00131
00136 AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00137
00138 axis2_http_simple_request_get_content_type(
00139 const axis2_http_simple_request_t * simple_request,
00140 const axutil_env_t * env);
00141
00146 AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00147
00148 axis2_http_simple_request_get_charset(
00149 const axis2_http_simple_request_t * simple_request,
00150 const axutil_env_t * env);
00151
00156 AXIS2_EXTERN axis2_ssize_t AXIS2_CALL
00157
00158 axis2_http_simple_request_get_content_length(
00159 const axis2_http_simple_request_t * simple_request,
00160 const axutil_env_t * env);
00161
00166 AXIS2_EXTERN axutil_stream_t *AXIS2_CALL
00167
00168 axis2_http_simple_request_get_body(
00169 const axis2_http_simple_request_t * simple_request,
00170 const axutil_env_t * env);
00171
00177 AXIS2_EXTERN axis2_ssize_t AXIS2_CALL
00178
00179 axis2_http_simple_request_get_body_bytes(
00180 const axis2_http_simple_request_t * simple_request,
00181 const axutil_env_t * env,
00182 char **buf);
00183
00190 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00191
00192 axis2_http_simple_request_set_body_string(
00193 axis2_http_simple_request_t * simple_request,
00194 const axutil_env_t * env,
00195 void *str,
00196 unsigned int str_len);
00197
00203 AXIS2_EXTERN void AXIS2_CALL
00204 axis2_http_simple_request_free(
00205 axis2_http_simple_request_t * simple_request,
00206 const axutil_env_t * env);
00207
00215 AXIS2_EXTERN axis2_http_simple_request_t *AXIS2_CALL
00216
00217 axis2_http_simple_request_create(
00218 const axutil_env_t * env,
00219 axis2_http_request_line_t * request_line,
00220 axis2_http_header_t ** http_headers,
00221 axis2_ssize_t http_hdr_count,
00222 axutil_stream_t * content);
00223
00225 #ifdef __cplusplus
00226 }
00227 #endif
00228
00229 #endif