2
* Licensed to the Apache Software Foundation (ASF) under one or more
3
* contributor license agreements. See the NOTICE file distributed with
4
* this work for additional information regarding copyright ownership.
5
* The ASF licenses this file to You under the Apache License, Version 2.0
6
* (the "License"); you may not use this file except in compliance with
7
* the License. You may obtain a copy of the License at
9
* http://www.apache.org/licenses/LICENSE-2.0
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
18
#ifndef AXIOM_MIME_OUTPUT_H
19
#define AXIOM_MIME_OUTPUT_H
22
* @file axiom_mime_output.h
23
* @brief axis2 mime_output interface
26
#include <axutil_utils.h>
27
#include <axutil_error.h>
28
#include <axutil_utils_defines.h>
29
#include <axutil_env.h>
30
#include <axutil_allocator.h>
31
#include <axutil_string.h>
32
#include <axutil_array_list.h>
39
typedef char axiom_mime_output_t; /*this can be void. But in windows, we are getting a compilation error*/
41
/** @defgroup axiom_mime_output Flow
42
* @ingroup axiom_mime_output
46
AXIS2_EXTERN axis2_byte_t *AXIS2_CALL
47
axiom_mime_output_complete(
48
axiom_mime_output_t * mime_output,
49
const axutil_env_t * env,
50
axis2_byte_t ** output_stream,
51
int *output_stream_size,
52
axis2_char_t * soap_body_buffer,
53
axutil_array_list_t * binary_node_list,
54
axis2_char_t * boundary,
55
axis2_char_t * content_id,
56
axis2_char_t * char_set_encoding,
57
const axis2_char_t * soap_content_type);
59
AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
60
axiom_mime_output_get_content_type_for_mime(
61
axiom_mime_output_t * mime_output,
62
const axutil_env_t * env,
63
axis2_char_t * boundary,
64
axis2_char_t * content_id,
65
axis2_char_t * char_set_encoding,
66
const axis2_char_t * soap_content_type);
71
AXIS2_EXTERN void AXIS2_CALL
72
axiom_mime_output_free(
73
axiom_mime_output_t * mime_output,
74
const axutil_env_t * env);
77
* Creates mime_output struct
78
* @return pointer to newly created mime_output
80
AXIS2_EXTERN axiom_mime_output_t *AXIS2_CALL
81
axiom_mime_output_create(
82
const axutil_env_t * env);
89
#endif /* AXIOM_MIME_OUTPUT_H */