it_bus_pdk/xml_stream_document.h

00001 #ifndef _IT_BUS_PDK_XML_STREAM_DOCUMENT_H_
00002 #define _IT_BUS_PDK_XML_STREAM_DOCUMENT_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/binary_buffer.h>
00008 #include <it_bus_pdk/xml_stream_node.h>
00009 #include <it_bus_pdk/xml_parse_exception.h>
00010 
00011 
00012 namespace IT_Bus
00013 {
00014     class IT_BUS_XML_API XMLStreamDocument : public XMLStreamNode
00015     {
00016       public:
00017 
00018         XMLStreamDocument();
00019 
00020         virtual ~XMLStreamDocument();
00021 
00022         void
00023         parse_from_url(
00024             const String& url
00025         ) throw((XMLParseException));
00026 
00027         void
00028         parse_from_file(
00029             const String& file_name
00030         ) throw((XMLParseException));
00031 
00032         void
00033         parse(
00034             const BinaryBuffer& input_buffer
00035         ) throw((XMLParseException));
00036 
00037         virtual XMLSaxHandler*
00038         sax_start_element(
00039             const char* raw_name,
00040             const char* namespace_uri,
00041             const char* target_namespace
00042         );
00043         
00044         void
00045         set_encoding(
00046             const String& encoding_name
00047         );
00048 
00049       private:
00050 
00051         XMLStreamDocument(
00052             const XMLStreamDocument& rhs
00053         );
00054 
00055         XMLStreamDocument&
00056         operator=(
00057             const XMLStreamDocument& rhs
00058         );
00059 
00060       protected:
00061 
00062         IdToXMLStreamNodeMap    m_id_element_map;
00063         bool                    m_processed_root_node;
00064         String                  m_encoding;
00065     };
00066 }
00067 
00068 #endif  

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