it_bus_config/tuxedo_wsdl_extension_element.h

00001 #ifndef _IT_BUS_CONFIG_TUXEDO_WSDL_EXTENSION_ELEMENT_H_
00002 #define _IT_BUS_CONFIG_TUXEDO_WSDL_EXTENSION_ELEMENT_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/element_list_t.h>
00008 #include <it_bus/complex_type_reader.h>
00009 #include <it_bus/complex_type_writer.h>
00010 #include <it_bus_pdk/xml_node.h>
00011 #include <it_wsdl/wsdl_extension_element.h>
00012 
00013 // Since there's only one extension element, not following typical
00014 // pattern of base class for extension element and specialized
00015 // classes for each extensor FYI
00016 //
00017 namespace IT_Bus
00018 {
00022     class TuxedoWSDLExtensionElement : 
00023         public IT_WSDL::WSDLExtensionElement, 
00024         public virtual IT_Bus::XMLNode
00025     {
00026     public:
00027 
00028         TuxedoWSDLExtensionElement(
00029             IT_WSDL::WSDLExtensibleNode& parent
00030         );
00031 
00032         virtual ~TuxedoWSDLExtensionElement();
00033 
00052         virtual const IT_Bus::QName &
00053         get_element_name() const;
00054 
00061         virtual const IT_Bus::String &
00062         get_target_namespace() const;
00063 
00064         virtual
00065         IT_WSDL::WSDLExtensionFactory &
00066         get_extension_factory();
00067 
00068         virtual void
00069         write(
00070             IT_Bus::XMLOutputStream & stream
00071         ) const throw((IT_Bus::IOException));
00072 
00073         virtual void
00074         write(
00075             const IT_Bus::QName&       /*element_name*/,
00076             IT_Bus::ComplexTypeWriter& /*writer*/
00077         ) const throw((IT_Bus::SerializationException))
00078         {
00079             // complete
00080         }
00081 
00087         virtual 
00088         IT_Bus::AnyType&
00089         copy(
00090             const IT_Bus::AnyType& /*rhs*/
00091         )
00092         {
00093             return *this;
00094         }
00095 
00096     private:
00097 
00098         TuxedoWSDLExtensionElement(
00099             const TuxedoWSDLExtensionElement& rhs
00100         );
00101 
00102         TuxedoWSDLExtensionElement & 
00103         operator = (
00104             const TuxedoWSDLExtensionElement& rhs
00105         );
00106     };
00107 }
00108 
00109 #endif  

Generated on Tue Mar 20 15:27:45 2007 for Artix by  doxygen 1.5.1-p1