00001 #ifndef _IT_WSDL_WSDL_OPERATION_H_
00002 #define _IT_WSDL_WSDL_OPERATION_H_
00003
00004
00005
00006
00007 #include <it_dsa/vector.h>
00008 #include <it_wsdl/wsdl_input.h>
00009 #include <it_wsdl/wsdl_output.h>
00010 #include <it_wsdl/wsdl_extension_element.h>
00011
00012 #ifndef IT_MINIMISE_INCLUDES
00013 #include <it_wsdl/api_defines.h>
00014 #include <it_wsdl/wsdl_error_handler.h>
00015 #include <it_wsdl/wsdl_fault.h>
00016 #include <it_wsdl/wsdl_node.h>
00017 #endif
00018
00019
00020 namespace IT_WSDL
00021 {
00022 class WSDLPortType;
00023 class WSDLInput;
00024 class WSDLOutput;
00025 class WSDLFault;
00026
00030 typedef IT_Vector<WSDLFault *> WSDLFaultVector;
00031
00036 class IT_WSDL_API WSDLOperation : virtual public WSDLExtensibleNode
00037 {
00038 public:
00046 virtual const WSDLInput *
00047 get_input() const = 0;
00048
00056 virtual const WSDLOutput *
00057 get_output() const = 0;
00058
00068 virtual const WSDLFaultVector &
00069 get_faults() const = 0;
00070
00077 virtual const IT_Bus::String &
00078 get_name() const = 0;
00079
00087 virtual const WSDLPortType &
00088 get_port_type() const = 0;
00089
00096 virtual IT_Bus::Boolean
00097 is_oneway() const = 0;
00098
00099 protected:
00100 WSDLOperation() {}
00101
00102 private:
00103
00104 WSDLOperation(const WSDLOperation&);
00105 void operator=(const WSDLOperation&);
00106 };
00107 }
00108
00109 #endif