00001 #ifndef _IT_WSDL_WSDL_BINDING_OPERATION_H_
00002 #define _IT_WSDL_WSDL_BINDING_OPERATION_H_
00003
00004
00005
00006
00007 #include <it_dsa/vector.h>
00008 #include <it_wsdl/api_defines.h>
00009
00010 #include <it_wsdl/wsdl_error_handler.h>
00011 #include <it_wsdl/wsdl_binding_input.h>
00012 #include <it_wsdl/wsdl_binding_output.h>
00013 #include <it_wsdl/wsdl_binding_fault.h>
00014
00015 #include <it_wsdl/wsdl_node.h>
00016 #include <it_wsdl/wsdl_extension_element.h>
00017
00018 namespace IT_WSDL
00019 {
00020 class WSDLBinding;
00021
00025 typedef IT_Vector<WSDLBindingFault *> WSDLBindingFaultVector;
00026
00031 class IT_WSDL_API WSDLBindingOperation : virtual public WSDLExtensibleNode
00032 {
00033 public:
00041 virtual WSDLBinding &
00042 get_binding() = 0;
00043
00051 virtual const WSDLBinding &
00052 get_binding() const = 0;
00053
00061 virtual WSDLBindingInput *
00062 get_input() = 0;
00063
00071 virtual const WSDLBindingInput *
00072 get_input() const = 0;
00073
00081 virtual WSDLBindingOutput *
00082 get_output() = 0;
00083
00091 virtual const WSDLBindingOutput *
00092 get_output() const = 0;
00093
00102 virtual WSDLBindingFaultVector &
00103 get_faults() = 0;
00104
00113 virtual const WSDLBindingFaultVector &
00114 get_faults() const = 0;
00115
00122 virtual const IT_Bus::String &
00123 get_name() const = 0;
00124
00125 protected:
00126 WSDLBindingOperation() {}
00127
00128 private:
00129
00130 WSDLBindingOperation(const WSDLBindingOperation&);
00131 void operator=(const WSDLBindingOperation&);
00132 };
00133 }
00134
00135 #endif