axis2_http_out_transport_info.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_OUT_TRANSPORT_INFO_H
00020 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_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_out_transport_info.h>
00039 
00040 #ifdef __cplusplus
00041 extern "C"
00042 {
00043 #endif
00044 
00046     typedef struct axis2_http_out_transport_info
00047                 axis2_http_out_transport_info_t;
00048 
00049     struct axis2_http_out_transport_info
00050     {
00051         axis2_out_transport_info_t out_transport;
00052         axis2_http_simple_response_t *response;
00053         axis2_char_t *encoding;
00054 
00055         axis2_status_t(
00056             AXIS2_CALL
00057             * set_content_type)(
00058                 axis2_http_out_transport_info_t * info,
00059                 const axutil_env_t * env,
00060                 const axis2_char_t * content_type);
00061 
00062         axis2_status_t(
00063             AXIS2_CALL
00064             * set_char_encoding)(
00065                 axis2_http_out_transport_info_t * info,
00066                 const axutil_env_t * env,
00067                 const axis2_char_t * encoding);
00068 
00069         void(
00070             AXIS2_CALL
00071             * free_function)(
00072                 axis2_http_out_transport_info_t * info,
00073                 const axutil_env_t * env);
00074     };
00075 
00081     AXIS2_EXTERN int AXIS2_CALL
00082 
00083     axis2_http_out_transport_info_set_content_type(
00084         axis2_http_out_transport_info_t * info,
00085         const axutil_env_t * env,
00086         const axis2_char_t * content_type);
00087 
00094     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00095 
00096     axis2_http_out_transport_info_set_char_encoding(
00097         axis2_http_out_transport_info_t * info,
00098         const axutil_env_t * env,
00099         const axis2_char_t * encoding);
00100 
00106     AXIS2_EXTERN void AXIS2_CALL
00107     axis2_http_out_transport_info_free(
00108         axis2_http_out_transport_info_t * out_transport_info,
00109         const axutil_env_t * env);
00110 
00115     AXIS2_EXTERN axis2_http_out_transport_info_t *AXIS2_CALL
00116 
00117     axis2_http_out_transport_info_create(
00118         const axutil_env_t * env,
00119         axis2_http_simple_response_t * response);
00120 
00128     AXIS2_EXTERN void AXIS2_CALL
00129     axis2_http_out_transport_info_free_void_arg(
00130         void *transport_info,
00131         const axutil_env_t * env);
00132 
00133     AXIS2_EXTERN void AXIS2_CALL
00134 
00135     axis2_http_out_transport_info_set_char_encoding_func(
00136         axis2_http_out_transport_info_t * out_transport_info,
00137         const axutil_env_t * env,
00138         axis2_status_t(AXIS2_CALL
00139                 * set_encoding)
00140         (axis2_http_out_transport_info_t *,
00141                 const axutil_env_t *,
00142                 const axis2_char_t *));
00143 
00144     AXIS2_EXTERN void AXIS2_CALL
00145 
00146     axis2_http_out_transport_info_set_content_type_func(
00147         axis2_http_out_transport_info_t * out_transport_info,
00148         const axutil_env_t * env,
00149         axis2_status_t(AXIS2_CALL
00150                 *
00151                 set_content_type)(axis2_http_out_transport_info_t *,
00152                         const axutil_env_t *,
00153                         const axis2_char_t *));
00154 
00155     AXIS2_EXTERN void AXIS2_CALL
00156     axis2_http_out_transport_info_set_free_func(
00157         axis2_http_out_transport_info_t * out_transport_info,
00158         const axutil_env_t * env,
00159         void(AXIS2_CALL
00160                 * free_function)(axis2_http_out_transport_info_t *,
00161                         const axutil_env_t *));
00162 
00164 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_SET_CONTENT_TYPE(out_transport_info, \
00165                env, content_type) axis2_http_out_transport_info_set_content_type (out_transport_info, env, content_type)
00166 
00168 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_SET_CHAR_ENCODING(out_transport_info,\
00169                env, encoding) axis2_http_out_transport_info_set_char_encoding(out_transport_info, env, encoding)
00170 
00172 #define AXIS2_HTTP_OUT_TRANSPORT_INFO_FREE(out_transport_info, env)\
00173                     axis2_http_out_transport_info_free(out_transport_info, env)
00174 
00176 #ifdef __cplusplus
00177 }
00178 #endif
00179 #endif                          /* AXIS2_HTTP_OUT_TRANSPORT_INFO_H */

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