axiom_output.h

00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 #ifndef AXIOM_OUTPUT_H
00019 #define AXIOM_OUTPUT_H
00020 
00021 #include <axutil_utils_defines.h>
00022 #include <axutil_utils.h>
00023 #include <axutil_env.h>
00024 #include <axiom_node.h>
00025 #include <axiom_xml_writer.h>
00026 
00027 #ifdef __cplusplus
00028 extern "C"
00029 {
00030 #endif
00031 
00042     typedef struct axiom_output axiom_output_t;
00043     struct axiom_text;
00044 
00051     AXIS2_EXTERN axiom_output_t *AXIS2_CALL
00052     axiom_output_create(const axutil_env_t *env,
00053         axiom_xml_writer_t *xml_writer);
00054 
00064     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00065     axiom_output_write(axiom_output_t * om_output,
00066         const axutil_env_t *env,
00067         axiom_types_t type,
00068         int no_of_args, ...);
00069 
00070     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00071     axiom_output_write_optimized(axiom_output_t *om_output,
00072         const axutil_env_t *env,
00073         struct axiom_text *om_text);
00074 
00082     AXIS2_EXTERN void AXIS2_CALL
00083     axiom_output_free(axiom_output_t *om_output,
00084         const axutil_env_t *env);
00085 
00092     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00093     axiom_output_is_soap11(axiom_output_t *om_output,
00094         const axutil_env_t *env);
00095 
00099     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00100     axiom_output_is_ignore_xml_declaration(axiom_output_t *om_output,
00101         const axutil_env_t *env);
00102 
00106     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00107     axiom_output_set_ignore_xml_declaration(axiom_output_t *om_output,
00108         const axutil_env_t *env,
00109         axis2_bool_t ignore_xml_dec);
00110 
00114     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00115     axiom_output_set_soap11(axiom_output_t *om_output,
00116         const axutil_env_t *env,
00117         axis2_bool_t soap11);
00118 
00122     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00123     axiom_output_set_xml_version(axiom_output_t *om_output,
00124         const axutil_env_t *env,
00125         axis2_char_t *xml_version);
00126 
00130     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00131     axiom_output_get_xml_version(axiom_output_t *om_output,
00132         const axutil_env_t *env);
00133 
00137     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00138     axiom_output_set_char_set_encoding(axiom_output_t *om_output,
00139         const axutil_env_t *env,
00140         axis2_char_t *char_set_encoding);
00141 
00145     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00146     axiom_output_get_char_set_encoding(axiom_output_t *om_output,
00147         const axutil_env_t *env);
00148 
00152     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00153     axiom_output_set_do_optimize(axiom_output_t *om_output,
00154         const axutil_env_t *env,
00155         axis2_bool_t optimize);
00156 
00160     AXIS2_EXTERN axiom_xml_writer_t *AXIS2_CALL
00161     axiom_output_get_xml_writer(axiom_output_t *om_output,
00162         const axutil_env_t *env);
00163 
00171     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00172     axiom_output_get_content_type(axiom_output_t *om_output,
00173         const axutil_env_t *env);
00174 
00178     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00179     axiom_output_write_xml_version_encoding(axiom_output_t *om_output,
00180         const axutil_env_t *env);
00181 
00185     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00186     axiom_output_is_optimized(axiom_output_t *om_output,
00187         const axutil_env_t *env);
00188 
00192     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00193     axiom_output_get_next_content_id(axiom_output_t *om_output,
00194         const axutil_env_t *env);
00195 
00199     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00200     axiom_output_get_root_content_id(axiom_output_t *om_output,
00201         const axutil_env_t *env);
00202 
00203 
00204     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00205     axiom_output_get_mime_boundry(axiom_output_t *om_output,
00206         const axutil_env_t *env);
00207 
00208     AXIS2_EXTERN axis2_byte_t *AXIS2_CALL
00209     axiom_output_flush(axiom_output_t *om_output,
00210         const axutil_env_t *env,
00211         axis2_byte_t **output_stream,
00212         int *output_stream_size);
00213 
00216 #ifdef __cplusplus
00217 }
00218 #endif
00219 
00220 #endif                          /* AXIOM_OUTPUT_H */

Generated on Thu May 3 12:31:01 2007 for Axis2/C by  doxygen 1.4.6