00001 #ifndef _SOAP12_WSDL_OPERATION_H_
00002 #define _SOAP12_WSDL_OPERATION_H_
00003
00004
00005
00006
00007 #ifndef IT_MINIMISE_INCLUDES
00008 #include <it_wsdl/wsdl_binding_operation.h>
00009 #endif
00010 #include <it_bus/types.h>
00011 #include <it_bus_config/soap12_wsdl_extension_element.h>
00012
00013 namespace IT_Bus
00014 {
00019 class IT_SOAP12_API Soap12WSDLOperation :
00020 public Soap12WSDLExtensionElement
00021 {
00022 public:
00023 Soap12WSDLOperation(
00024 IT_WSDL::WSDLExtensibleNode* the_node
00025 );
00026
00027 virtual ~Soap12WSDLOperation();
00028
00029 bool
00030 parse(
00031 const XMLIterator& element_iterator,
00032 const XMLNode& element,
00033 IT_WSDL::WSDLErrorHandler& error_handler
00034 );
00035
00036 virtual void
00037 read(
00038 const QName& ,
00039 ComplexTypeReader&
00040 ) throw((DeserializationException));
00041
00042 virtual void
00043 write(
00044 const QName& ,
00045 ComplexTypeWriter&
00046 ) const throw((SerializationException));
00047
00048 virtual void
00049 write(
00050 XMLOutputStream& stream
00051 ) const throw((IOException));
00052
00075 const String&
00076 get_soap_action() const;
00077
00100 bool
00101 get_soap_action_required() const;
00102
00125 const String&
00126 get_soap_style() const;
00127
00131 virtual void
00132 write_attributes(
00133 XMLOutputStream& stream
00134 ) const throw((IOException));
00135
00139 virtual AnyType&
00140 operator=(
00141 const AnyType&
00142 );
00143
00144 protected:
00145 bool
00146 accept_attribute(
00147 const char* raw_name,
00148 const char* namespace_uri,
00149 const char* value
00150 );
00151
00152 private:
00153 Soap12WSDLOperation(
00154 const Soap12WSDLOperation& rhs
00155 );
00156
00157 Soap12WSDLOperation&
00158 operator=(
00159 const Soap12WSDLOperation& rhs
00160 );
00161
00162 String m_soap_action;
00163 bool m_soap_action_required;
00164 String m_soap_style;
00165
00166 };
00167 }
00168
00169
00170 #endif