# axis2_http_simple_request.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_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                          /* AXIS2_HTTP_SIMPLE_REQUEST_H */