aboutsummaryrefslogtreecommitdiff
path: root/src/function/transform.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/function/transform.cc')
-rw-r--r--src/function/transform.cc18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/function/transform.cc b/src/function/transform.cc
index cf6ff09..fd28b34 100644
--- a/src/function/transform.cc
+++ b/src/function/transform.cc
@@ -6,6 +6,7 @@
#include "transformation_facade.h"
#include "support/xerces_string_guard.h"
+#include "support/dom/result_node_facade.h"
namespace InputXSLT {
@@ -43,22 +44,11 @@ xercesc::DOMDocument* FunctionTransform::constructDocument(
);
if ( transformation.generate(targetPath, parameterObject) == 0 ) {
- xercesc::DOMElement* const resultNode(
- domDocument->createElement(*XercesStringGuard<XMLCh>("result"))
- );
+ ResultNodeFacade result(domDocument, rootNode, "result");
- resultNode->setAttribute(
- *XercesStringGuard<XMLCh>("name"),
- *XercesStringGuard<XMLCh>(targetPath)
- );
-
- rootNode->appendChild(resultNode);
+ result.setAttribute("name", targetPath);
} else {
- xercesc::DOMElement* const resultNode(
- domDocument->createElement(*XercesStringGuard<XMLCh>("error"))
- );
-
- rootNode->appendChild(resultNode);
+ ResultNodeFacade result(domDocument, rootNode, "error");
}
return domDocument;