it_bus_pdk/namespace_uri_prefix_map.h

00001 #ifndef _IT_BUS_PDK_NAMESPACE_URI_PREFIX_MAP_H_
00002 #define _IT_BUS_PDK_NAMESPACE_URI_PREFIX_MAP_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/types.h>
00008 #include <it_bus/xml_output_stream.h>
00009 #include <it_schema_model/ns_util.h>
00010 
00011 namespace IT_Bus
00012 {
00013     class IT_BUS_XML_API NamespaceURIPrefixMap
00014     {
00015       public:
00016         NamespaceURIPrefixMap();
00017         
00018         ~NamespaceURIPrefixMap();
00019         
00020         void 
00021         write_current_namespace_scope(
00022             XMLOutputStream & os
00023         );
00024 
00025         String
00026         get_namespace_prefix(
00027             const String& namespace_uri
00028         );
00029         
00030         String
00031         add_namespace_prefix(
00032             const String& namespace_uri,
00033             const String& prefix
00034         );
00035 
00036         String
00037         add_namespace(
00038             const String& namespace_uri
00039         );
00040         
00041         void
00042         remove_namespace_scope();
00043 
00044         void
00045         add_namespace_scope();
00046 
00047         unsigned int
00048         checkpoint_prefix_index();
00049 
00050         unsigned int
00051         reset_prefix_index();
00052 
00053 
00054 
00055       private:
00056 
00057         NSStackMapped       m_ns_stack;
00058         unsigned int        m_idx;
00059         unsigned int        m_checkpoint;
00060         static const String EMPTY_STRING;
00061     };
00062 }
00063 
00064 #endif  

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