File indexing completed on 2025-01-30 10:27:02
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #if !defined(XERCESC_INCLUDE_GUARD_DOMXPATHNSRESOLVERIMPL_HPP)
0023 #define XERCESC_INCLUDE_GUARD_DOMXPATHNSRESOLVERIMPL_HPP
0024
0025 #include <xercesc/util/XercesDefs.hpp>
0026 #include <xercesc/util/XMemory.hpp>
0027 #include <xercesc/util/PlatformUtils.hpp>
0028 #include <xercesc/dom/DOMXPathNSResolver.hpp>
0029 #include <xercesc/util/KVStringPair.hpp>
0030
0031 XERCES_CPP_NAMESPACE_BEGIN
0032
0033 class DOMNode;
0034
0035 class CDOM_EXPORT DOMXPathNSResolverImpl : public XMemory,
0036 public DOMXPathNSResolver
0037 {
0038 public:
0039 DOMXPathNSResolverImpl(const DOMNode* nodeResolver = 0, MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager);
0040 ~DOMXPathNSResolverImpl();
0041
0042 virtual const XMLCh* lookupNamespaceURI(const XMLCh* prefix) const;
0043 virtual const XMLCh* lookupPrefix(const XMLCh* URI) const;
0044 virtual void addNamespaceBinding(const XMLCh* prefix, const XMLCh* uri);
0045
0046 virtual void release();
0047
0048 protected:
0049 RefHashTableOf<KVStringPair>* fNamespaceBindings;
0050 const DOMNode* fResolverNode;
0051 MemoryManager* fManager;
0052 };
0053
0054 XERCES_CPP_NAMESPACE_END
0055
0056 #endif
0057
0058