it_bus_pdk/xml_sax_handler.h

00001 #ifndef _IT_BUS_PDK_XML_SAX_HANDLER_H_
00002 #define _IT_BUS_PDK_XML_SAX_HANDLER_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/types.h>
00008 #include <it_bus/qname.h>
00009 
00010 #include <it_bus/api_defines.h>
00011 
00012 namespace IT_Bus
00013 {
00014     class IT_BUS_XML_API XMLSaxHandler
00015     {
00016       public:
00017         XMLSaxHandler() {}
00018         virtual ~XMLSaxHandler();
00019 
00020         virtual void
00021         sax_accept_namespace_declaration(
00022             char * prefix,
00023             char * namespace_uri
00024         ) = 0;
00025 
00026         virtual bool
00027         sax_accept_attribute(
00028             char * raw_name,
00029             char * namespace_uri,
00030             const String& value
00031         ) = 0;
00032 
00033         virtual XMLSaxHandler *
00034         sax_start_element(
00035             const char * raw_name,
00036             const char * namespace_uri,
00037             const char * target_namespace
00038         ) = 0;
00039 
00040         virtual XMLSaxHandler *
00041         sax_end_element() = 0;
00042 
00049         virtual void
00050         sax_accept_characters(
00051             const String::UChar* uchars,
00052             size_t               n = String::npos
00053         ) = 0;
00054 
00055         virtual void
00056         set_encoding(
00057             const String& encoding_name
00058         ) = 0;
00059 
00060         virtual 
00061         const String&
00062         get_xml_encoding(
00063         ) = 0;
00064     };
00065 }
00066 
00067 #endif  

Generated on Thu Sep 7 11:39:37 2006 for Artix by  doxygen 1.4.7