aboutsummaryrefslogtreecommitdiff
path: root/src/support/dom
diff options
context:
space:
mode:
Diffstat (limited to 'src/support/dom')
-rw-r--r--src/support/dom/document_cache.cc4
-rw-r--r--src/support/dom/document_cache.h9
2 files changed, 9 insertions, 4 deletions
diff --git a/src/support/dom/document_cache.cc b/src/support/dom/document_cache.cc
index c4c57d3..81d90aa 100644
--- a/src/support/dom/document_cache.cc
+++ b/src/support/dom/document_cache.cc
@@ -14,7 +14,7 @@ DomDocumentCache::optional_item DomDocumentCache::get(const std::string& key) {
if ( itemIter == this->map_.end() ) {
return optional_item(false, nullptr);
} else {
- return optional_item(true, (*itemIter).second.get());
+ return optional_item(true, (*itemIter).second->getXalanDocument());
}
}
@@ -29,7 +29,7 @@ DomDocumentCache::optional_item DomDocumentCache::create(
);
if ( result.second ) {
- return optional_item(true, (*(result.first)).second.get());
+ return optional_item(true, (*(result.first)).second->getXalanDocument());
} else {
return optional_item(false, nullptr);
}
diff --git a/src/support/dom/document_cache.h b/src/support/dom/document_cache.h
index af99102..cbac5c7 100644
--- a/src/support/dom/document_cache.h
+++ b/src/support/dom/document_cache.h
@@ -1,6 +1,8 @@
#ifndef INPUTXSLT_SRC_SUPPORT_DOM_DOCUMENT_CACHE_H_
#define INPUTXSLT_SRC_SUPPORT_DOM_DOCUMENT_CACHE_H_
+#include <xalanc/XalanDOM/XalanDocument.hpp>
+
#include <xercesc/dom/DOMDocument.hpp>
#include <string>
@@ -8,12 +10,13 @@
#include <unordered_map>
#include <memory>
+#include "common.h"
+
namespace InputXSLT {
class DomDocumentCache {
public:
- class item;
- typedef std::pair<bool, item*> optional_item;
+ typedef std::pair<bool, xalan::XalanDocument*> optional_item;
DomDocumentCache();
@@ -21,6 +24,8 @@ class DomDocumentCache {
optional_item create(const std::string&, xercesc::DOMDocument*);
private:
+ class item;
+
std::mutex write_mutex_;
std::unordered_map<std::string, std::unique_ptr<item>> map_;