diff options
| author | Adrian Kummerlaender | 2014-07-08 14:06:47 +0200 | 
|---|---|---|
| committer | Adrian Kummerlaender | 2014-07-08 14:06:47 +0200 | 
| commit | 716958c6acb77f4f63cc6f99d741fe0a901a25ba (patch) | |
| tree | 00eab42295e3e719d59b3c29389931b95108d7e1 /src/function | |
| parent | 8f05c7de54336daefb214a754de35367098b6510 (diff) | |
| download | InputXSLT-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.cc | 6 | ||||
| -rw-r--r-- | src/function/read_directory.cc | 6 | ||||
| -rw-r--r-- | src/function/read_file.cc | 6 | ||||
| -rw-r--r-- | src/function/transform.cc | 6 | ||||
| -rw-r--r-- | src/function/write_file.cc | 6 | 
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 ) { | 
