axis2_http_transport_utils.h

Go to the documentation of this file.
00001 
00002 /*
00003  * Licensedo 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_TRANSPORT_UTILS_H
00020 #define AXIS2_HTTP_TRANSPORT_UTILS_H
00021 
00032 #include <axis2_const.h>
00033 #include <axis2_defines.h>
00034 #include <axutil_env.h>
00035 #include <axiom_stax_builder.h>
00036 #include <axis2_msg_ctx.h>
00037 #include <axis2_conf_ctx.h>
00038 #include <axutil_hash.h>
00039 #include <axiom_element.h>
00040 #include <axutil_stream.h>
00041 #include <axiom_soap_envelope.h>
00042 #include <axutil_http_chunked_stream.h>
00043 #include <axutil_url.h>
00044 
00045 #ifdef __cplusplus
00046 extern "C"
00047 {
00048 #endif
00049 
00050     /*
00051      * struct to hold the callback information
00052      */
00053     /*struct axis2_callback_info
00054     {
00055         const axutil_env_t *env;
00056         void *in_stream;
00057         int content_length;
00058         int unread_len;
00059         axutil_http_chunked_stream_t *chunked_stream;
00060     };
00061     typedef struct axis2_callback_info axis2_callback_info_t;
00062     */
00063 
00064     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00065 
00066     axis2_http_transport_utils_process_http_post_request(
00067         const axutil_env_t * env,
00068         axis2_msg_ctx_t * msg_ctx,
00069         axutil_stream_t * in_stream,
00070         axutil_stream_t * out_stream,
00071         const axis2_char_t * content_type,
00072         const int content_length,
00073         axutil_string_t * soap_action_header,
00074         const axis2_char_t * request_uri);
00075 
00076     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00077 
00078     axis2_http_transport_utils_process_http_put_request(
00079         const axutil_env_t * env,
00080         axis2_msg_ctx_t * msg_ctx,
00081         axutil_stream_t * in_stream,
00082         axutil_stream_t * out_stream,
00083         const axis2_char_t * content_type,
00084         const int content_length,
00085         axutil_string_t * soap_action_header,
00086         const axis2_char_t * request_uri);
00087 
00088     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00089 
00090     axis2_http_transport_utils_process_http_get_request(
00091         const axutil_env_t * env,
00092         axis2_msg_ctx_t * msg_ctx,
00093         axutil_stream_t * in_stream,
00094         axutil_stream_t * out_stream,
00095         const axis2_char_t * content_type,
00096         axutil_string_t * soap_action_header,
00097         const axis2_char_t * request_uri,
00098         axis2_conf_ctx_t * conf_ctx,
00099         axutil_hash_t * request_params);
00100 
00101     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00102 
00103     axis2_http_transport_utils_process_http_head_request(
00104         const axutil_env_t * env,
00105         axis2_msg_ctx_t * msg_ctx,
00106         axutil_stream_t * in_stream,
00107         axutil_stream_t * out_stream,
00108         const axis2_char_t * content_type,
00109         axutil_string_t * soap_action_header,
00110         const axis2_char_t * request_uri,
00111         axis2_conf_ctx_t * conf_ctx,
00112         axutil_hash_t * request_params);
00113 
00114     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00115 
00116     axis2_http_transport_utils_process_http_delete_request(
00117         const axutil_env_t * env,
00118         axis2_msg_ctx_t * msg_ctx,
00119         axutil_stream_t * in_stream,
00120         axutil_stream_t * out_stream,
00121         const axis2_char_t * content_type,
00122         axutil_string_t * soap_action_header,
00123         const axis2_char_t * request_uri,
00124         axis2_conf_ctx_t * conf_ctx,
00125         axutil_hash_t * request_params);
00126 
00127     AXIS2_EXTERN axiom_stax_builder_t *AXIS2_CALL
00128 
00129     axis2_http_transport_utils_select_builder_for_mime(
00130         const axutil_env_t * env,
00131         axis2_char_t * request_uri,
00132         axis2_msg_ctx_t * msg_ctx,
00133         axutil_stream_t * in_stream,
00134         axis2_char_t * content_type);
00135 
00136     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00137 
00138     axis2_http_transport_utils_do_write_mtom(
00139         const axutil_env_t * env,
00140         axis2_msg_ctx_t * msg_ctx);
00141 
00142     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00143 
00144     axis2_http_transport_utils_get_request_params(
00145         const axutil_env_t * env,
00146         axis2_char_t * request_uri);
00147 
00148     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00149     axis2_http_transport_utils_get_not_found(
00150         const axutil_env_t * env,
00151         axis2_conf_ctx_t * conf_ctx);
00152 
00153     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00154     axis2_http_transport_utils_get_not_implemented(
00155         const axutil_env_t * env,
00156         axis2_conf_ctx_t * conf_ctx);
00157 
00158     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00159     axis2_http_transport_utils_get_method_not_allowed(
00160         const axutil_env_t * env,
00161         axis2_conf_ctx_t * conf_ctx);
00162 
00163     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00164     axis2_http_transport_utils_get_not_acceptable(
00165         const axutil_env_t * env,
00166         axis2_conf_ctx_t * conf_ctx);
00167 
00168     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00169     axis2_http_transport_utils_get_bad_request(
00170         const axutil_env_t * env,
00171         axis2_conf_ctx_t * conf_ctx);
00172 
00173     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00174     axis2_http_transport_utils_get_request_timeout(
00175         const axutil_env_t * env,
00176         axis2_conf_ctx_t * conf_ctx);
00177 
00178     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00179     axis2_http_transport_utils_get_conflict(
00180         const axutil_env_t * env,
00181         axis2_conf_ctx_t * conf_ctx);
00182 
00183     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00184     axis2_http_transport_utils_get_gone(
00185         const axutil_env_t * env,
00186         axis2_conf_ctx_t * conf_ctx);
00187 
00188     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00189     axis2_http_transport_utils_get_precondition_failed(
00190         const axutil_env_t * env,
00191         axis2_conf_ctx_t * conf_ctx);
00192 
00193     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00194     axis2_http_transport_utils_get_request_entity_too_large(
00195         const axutil_env_t * env,
00196         axis2_conf_ctx_t * conf_ctx);
00197 
00198     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00199     axis2_http_transport_utils_get_service_unavailable(
00200         const axutil_env_t * env,
00201         axis2_conf_ctx_t * conf_ctx);
00202 
00203     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00204     axis2_http_transport_utils_get_internal_server_error(
00205         const axutil_env_t * env,
00206         axis2_conf_ctx_t * conf_ctx);
00207 
00208     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00209 
00210     axis2_http_transport_utils_get_services_html(
00211         const axutil_env_t * env,
00212         axis2_conf_ctx_t * conf_ctx);
00213 
00214     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00215 
00216     axis2_http_transport_utils_get_services_static_wsdl(
00217         const axutil_env_t * env,
00218         axis2_conf_ctx_t * conf_ctx,
00219         axis2_char_t * request_url);
00220 
00221     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00222 
00223     axis2_http_transport_utils_get_request_params(
00224         const axutil_env_t * env,
00225         axis2_char_t * request_uri);
00226 
00227     AXIS2_EXTERN axiom_soap_envelope_t *AXIS2_CALL
00228 
00229     axis2_http_transport_utils_create_soap_msg(
00230         const axutil_env_t * env,
00231         axis2_msg_ctx_t * msg_ctx,
00232         const axis2_char_t * soap_ns_uri);
00233 
00235 #ifdef __cplusplus
00236 }
00237 #endif
00238 
00239 #endif                          /* AXIS2_HTTP_TRANSPORT_UTILS_H */

Generated on Sat May 3 10:44:34 2008 for Axis2/C by  doxygen 1.5.5