00001 #ifndef _IT_WSDL_WSDL_MESSAGE_H_
00002 #define _IT_WSDL_WSDL_MESSAGE_H_
00003
00004
00005
00006
00007 #include <it_wsdl/api_defines.h>
00008
00009 #include <it_bus/qname.h>
00010
00011 #include <it_wsdl/wsdl_part.h>
00012 #include <it_wsdl/wsdl_extension_element.h>
00013
00014
00015 namespace IT_WSDL
00016 {
00017 class WSDLDefinitions;
00018
00022 typedef IT_Vector<WSDLPart *> WSDLPartVector;
00023
00028 class IT_WSDL_API WSDLMessage : virtual public WSDLExtensibleNode
00029 {
00030 public:
00038 virtual WSDLDefinitions &
00039 get_definitions() = 0;
00040
00048 virtual const WSDLDefinitions &
00049 get_definitions() const = 0;
00050
00059 virtual const WSDLPart *
00060 get_part(
00061 const IT_Bus::String & part_name
00062 ) const = 0;
00063
00072 virtual const WSDLPartVector &
00073 get_parts() const = 0;
00074
00083 virtual WSDLPartVector &
00084 get_parts() = 0;
00085
00091 virtual const IT_Bus::QName &
00092 get_name() const = 0;
00093
00094 protected:
00095 WSDLMessage() {}
00096
00097 private:
00098
00099 WSDLMessage(const WSDLMessage&);
00100 void operator=(const WSDLMessage&);
00101 };
00102 }
00103
00104 #endif