aboutsummaryrefslogtreecommitdiff
path: root/src/function
diff options
context:
space:
mode:
authorAdrian Kummerlaender2014-07-08 14:06:47 +0200
committerAdrian Kummerlaender2014-07-08 14:06:47 +0200
commit716958c6acb77f4f63cc6f99d741fe0a901a25ba (patch)
tree00eab42295e3e719d59b3c29389931b95108d7e1 /src/function
parent8f05c7de54336daefb214a754de35367098b6510 (diff)
downloadInputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.tar
InputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.tar.gz
InputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.tar.bz2
InputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.tar.lz
InputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.tar.xz
InputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.tar.zst
InputXSLT-716958c6acb77f4f63cc6f99d741fe0a901a25ba.zip
Added ResultNodeFacade constructor overload for root nodes
* the common use case of ResultNodeFacade inside external function implementations is managing the result root node ** this root node can be fetched through the xercesc::DOMDocument instance ** the new alias overload automatically fetches the root node pointer and as such doesn't require a root node parameter * changed external function implementations accordingly
Diffstat (limited to 'src/function')
-rw-r--r--src/function/external_text_formatter.cc6
-rw-r--r--src/function/read_directory.cc6
-rw-r--r--src/function/read_file.cc6
-rw-r--r--src/function/transform.cc6
-rw-r--r--src/function/write_file.cc6
5 files changed, 5 insertions, 25 deletions
diff --git a/src/function/external_text_formatter.cc b/src/function/external_text_formatter.cc
index a86c71b..de8a296 100644
--- a/src/function/external_text_formatter.cc
+++ b/src/function/external_text_formatter.cc
@@ -47,10 +47,6 @@ DomDocumentCache::document_ptr FunctionExternalTextFormatter::constructDocument(
DomDocumentCache::createDocument()
);
- xercesc::DOMNode* const rootNode(
- domDocument->getDocumentElement()
- );
-
boost::process::context context;
context.stdout_behavior = boost::process::capture_stream();
context.stdin_behavior = boost::process::capture_stream();
@@ -71,7 +67,7 @@ DomDocumentCache::document_ptr FunctionExternalTextFormatter::constructDocument(
boost::process::status status = formatterProcess.wait();
- ResultNodeFacade result(domDocument.get(), rootNode, "output");
+ ResultNodeFacade result(domDocument.get(), "output");
result.setAttribute("formatter", formatterPath.filename().string());
result.setAttribute("code", std::to_string(status.exit_status()));
diff --git a/src/function/read_directory.cc b/src/function/read_directory.cc
index ad82217..cbc64e0 100644
--- a/src/function/read_directory.cc
+++ b/src/function/read_directory.cc
@@ -11,11 +11,7 @@ DomDocumentCache::document_ptr FunctionReadDirectory::constructDocument(
DomDocumentCache::createDocument()
);
- xercesc::DOMNode* const rootNode(
- domDocument->getDocumentElement()
- );
-
- ResultNodeFacade result(domDocument.get(), rootNode, "directory");
+ ResultNodeFacade result(domDocument.get(), "directory");
result.setAttribute("path", directoryPath.string());
if ( boost::filesystem::is_directory(directoryPath) ) {
diff --git a/src/function/read_file.cc b/src/function/read_file.cc
index cb1e57f..dcd32b7 100644
--- a/src/function/read_file.cc
+++ b/src/function/read_file.cc
@@ -65,11 +65,7 @@ DomDocumentCache::document_ptr FunctionReadFile::constructDocument(
DomDocumentCache::createDocument()
);
- xercesc::DOMNode* const rootNode(
- domDocument->getDocumentElement()
- );
-
- ResultNodeFacade result(domDocument.get(), rootNode, "file");
+ ResultNodeFacade result(domDocument.get(), "file");
result.setAttribute("path", filePath.string());
if ( boost::filesystem::is_regular_file(filePath) ) {
diff --git a/src/function/transform.cc b/src/function/transform.cc
index c97897e..d7aae94 100644
--- a/src/function/transform.cc
+++ b/src/function/transform.cc
@@ -34,11 +34,7 @@ DomDocumentCache::document_ptr FunctionTransform::constructDocument(
DomDocumentCache::createDocument()
);
- xercesc::DOMElement* const rootElement(
- domDocument->getDocumentElement()
- );
-
- ResultNodeFacade result(domDocument.get(), rootElement, "transformation");
+ ResultNodeFacade result(domDocument.get(), "transformation");
TransformerFacade transformer(this->include_resolver_);
try {
diff --git a/src/function/write_file.cc b/src/function/write_file.cc
index 872160b..0ad68bf 100644
--- a/src/function/write_file.cc
+++ b/src/function/write_file.cc
@@ -65,11 +65,7 @@ DomDocumentCache::document_ptr FunctionWriteFile::constructDocument(
DomDocumentCache::createDocument()
);
- xercesc::DOMNode* const rootNode(
- domDocument->getDocumentElement()
- );
-
- ResultNodeFacade result(domDocument.get(), rootNode, "file");
+ ResultNodeFacade result(domDocument.get(), "file");
result.setAttribute("path", filePath.string());
if ( contentNode != nullptr ) {