diff options
author | Adrian Kummerländer | 2014-04-26 11:21:10 +0200 |
---|---|---|
committer | Adrian Kummerländer | 2014-04-26 11:21:10 +0200 |
commit | 0b611b7bd28851fe8096b3d2c121c68e231ada11 (patch) | |
tree | 80352794dce96cec2b86659e5a8260fb9a7686c2 /src/support/dom_document_guard.h | |
parent | 938ed7622656c3494ae8fdb83bc2ad4b1f31d901 (diff) | |
download | InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.tar InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.tar.gz InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.tar.bz2 InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.tar.lz InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.tar.xz InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.tar.zst InputXSLT-0b611b7bd28851fe8096b3d2c121c68e231ada11.zip |
Implemented global DOM document cache
* the plan to return XML-nodes from each external function requires a better way to manage the lifetime of many xerces DOM document instances and their support class instances
** this is why DomDocumentCache and DomDocumentCache::item were implemented
** based on std::map so we can easily access the result of old function calls
* changed external read-directory function to return the children of the document node instead of the document node itself
** removes unnecessary cruft in function calls
** will make returning status codes alongside the function result more pleasing to the eye
* updated test transformation to reflect new features
Diffstat (limited to 'src/support/dom_document_guard.h')
-rw-r--r-- | src/support/dom_document_guard.h | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/src/support/dom_document_guard.h b/src/support/dom_document_guard.h deleted file mode 100644 index decca01..0000000 --- a/src/support/dom_document_guard.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef INPUTXSLT_SRC_SUPPORT_DOM_DOCUMENT_GUARD_H_ -#define INPUTXSLT_SRC_SUPPORT_DOM_DOCUMENT_GUARD_H_ - -#include <xalanc/XercesParserLiaison/XercesParserLiaison.hpp> -#include <xalanc/XercesParserLiaison/XercesDOMSupport.hpp> -#include <xalanc/XalanTransformer/XercesDOMWrapperParsedSource.hpp> - -#include <xercesc/dom/DOMDocument.hpp> - -#include <string> -#include <memory> - -#include "common.h" - -namespace InputXSLT { - -class DomDocumentGuard { - public: - DomDocumentGuard(const std::string&); - ~DomDocumentGuard(); - - xercesc::DOMDocument* operator->(); - xalan::XalanDocument* finalize(); - - private: - xalan::XercesParserLiaison parser_; - xalan::XercesDOMSupport dom_support_; - XMLCh* root_node_name_; - xercesc::DOMDocument* const document_; - std::unique_ptr<xalan::XercesDOMWrapperParsedSource> parsed_source_; - -}; - -} - -#endif // INPUTXSLT_SRC_SUPPORT_DOM_DOCUMENT_GUARD_H_ |