00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_WSDL4C_SOAP_H
00019 #define AXIS2_WSDL4C_SOAP_H
00020
00025 #include <axis2_array_list.h>
00026 #include <axis2_allocator.h>
00027 #include <axis2_env.h>
00028 #include <axis2_error.h>
00029 #ifdef __cplusplus
00030 extern "C"
00031 {
00032 #endif
00033
00039 #define AXIS2_WSDL4C_HTTP_TRANSPORT "http://schemas.xmlsoap.org/soap/http"
00040 #define AXIS2_WSDL4C_HTTP_BINDING "http://schemas.xmlsoap.org/wsdl/http/"
00041 #define AXIS2_WSDL4C_SOAP_ENC_URI "http://schemas.xmlsoap.org/soap/encoding/"
00042 #define AXIS2_WSDL4C_SOAP_ENV_URI "http://schemas.xmlsoap.org/soap/envelope/"
00043 #define AXIS2_WSDL4C_SOAP_BINDING_URI "http://schemas.xmlsoap.org/wsdl/soap/"
00044 typedef enum
00045 {
00046 AXIS2_WSDL4C_LITERAL,
00047 AXIS2_WSDL4C_ENCODED
00048 } axis2_wsdl4c_encoding_t;
00049
00050 typedef enum
00051 {
00052 AXIS2_WSDL4C_RPC,
00053 AXIS2_WSDL4C_DOC
00054 } axis2_wsdl4c_style_t;
00055
00056 typedef enum
00057 {
00058 AXIS2_WSDL4C_NONE,
00059 AXIS2_WSDL4C_HTTP,
00060 AXIS2_WSDL4C_SMTP
00061 } axis2_wsdl4c_transport_t;
00062
00063 void *
00064 axis2_wsdl4c_soap_create(axis2_char_t *schema_path);
00065
00066 void
00067 axis2_wsdl4c_soap_destroy(void *soap);
00068
00072 void
00073 axis2_wsdl4c_soap_set_schema_path(void *soap,
00074 axis2_char_t *schema_path);
00075
00076 axis2_wsdl4c_transport_t
00077 axis2_wsdl4c_soap_get_transport_method(void *soap);
00078
00079 axis2_wsdl4c_style_t
00080 axis2_wsdl4c_soap_get_style(void *soap);
00081
00086 axis2_char_t *
00087 axis2_wsdl4c_soap_get_namespace(void *soap);
00088
00089 void
00090 axis2_wsdl4c_soap_set_namespace_prefix(void *soap,
00091 axis2_char_t *prefix);
00092
00093 axis2_char_t *
00094 axis2_wsdl4c_soap_get_namespace_prefix(void *soap);
00095
00096
00097 axis2_bool_t
00098 axis2_wsdl4c_soap_is_namespace_handler(void *soap,
00099 axis2_char_t *ns);
00100
00101
00102 axis2_char_t *
00103 axis2_wsdl4c_soap_get_extensibility_schema(void *soap);
00104
00105
00106 axis2_char_t *
00107 axis2_wsdl4c_soap_get_encoding_schema(void *soap);
00108
00109
00110 void
00111 axis2_wsdl4c_soap_set_schema_parser(void *soap,
00112 void *schema_parser);
00113
00114
00119 int
00120 axis2_wsdl4c_soap_handle_element(void *soap,
00121 int parent,
00122 void *xml_pull_parser);
00123
00124
00128 int
00129 axis2_wsdl4c_soap_handle_attribute(void *soap,
00130 int parent,
00131 axis2_char_t *att_name,
00132 void *xml_pull_parser);
00133
00137 int
00138 axis2_wsdl4c_soap_get_element_name(void *soap,
00139 int id);
00140
00141 int
00142 axis2_wsdl4c_soap_get_elem_attribute(void *soap,
00143 int id,
00144 int att_num);
00145
00146 int
00147 axis2_wsdl4c_soap_get_elem_attribute_value(void *soap,
00148 int id,
00149 int att_num);
00150
00151
00155 int
00156 axis2_wsdl4c_soap_get_attribute_name(void *soap, int id);
00157
00158
00163 void
00164 axis2_wsdl4c_soap_set_start_id(void *soap,
00165 int id);
00166
00167
00168 int
00169 axis2_wsdl4c_soap_get_start_id(void *soap);
00170
00171
00172 void
00173 axis2_wsdl4c_soap_set_wsdl_parser(void *soap,
00174 void *wp);
00175
00176 void *
00177 axis2_wsdl4c_soap_wsdl_parser(void *soap);
00178
00179 axis2_bool_t
00180 axis2_wsdl4c_soap_was_used(void *soap);
00181
00182 void
00183 axis2_wsdl4c_soap_get_operation_info(void *soap,
00184 int elem_id,
00185 axis2_char_t **soap_action,
00186 axis2_wsdl4c_style_t *style);
00187
00188 void
00189 axis2_wsdl4c_soap_get_body_info(void *soap,
00190 int elem_id,
00191 axis2_char_t **ns,
00192 axis2_wsdl4c_encoding_t *use,
00193 axis2_char_t **encoding_style);
00194
00195 void
00196 axis2_wsdl4c_soap_get_header_info(void *soap,
00197 int elem_id,
00198 int *part_id,
00199 void **message);
00200
00201 axis2_bool_t
00202 axis2_wsdl4c_soap_get_service_location(void *soap,
00203 int elem_id,
00204 axis2_char_t **location);
00205
00207 axis2_bool_t
00208 axis2_wsdl4c_soap_is_soap_body(void *soap,
00209 int id);
00210
00211 axis2_bool_t
00212 axis2_wsdl4c_soap_is_soap_header(void *soap,
00213 int id);
00214
00215
00218 #ifdef __cplusplus
00219 }
00220 #endif
00221 #endif