aboutsummaryrefslogtreecommitdiff
path: root/src/function/read_directory.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/function/read_directory.cc')
-rw-r--r--src/function/read_directory.cc13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/function/read_directory.cc b/src/function/read_directory.cc
index f4baff6..e54e146 100644
--- a/src/function/read_directory.cc
+++ b/src/function/read_directory.cc
@@ -29,11 +29,18 @@ xercesc::DOMDocument* FunctionReadDirectory::constructDocument(
domDocument->getDocumentElement()
);
+ ResultNodeFacade result(domDocument, rootNode, "directory");
+ result.setAttribute("path", directoryPath.string());
+
if ( boost::filesystem::is_directory(directoryPath) ) {
+ result.setAttribute("result", "success");
+
+ xercesc::DOMNode* const resultNode = result.getNode();
+
fsContext.iterate(
directoryPath,
- [&domDocument, &rootNode](const boost::filesystem::path& p) {
- ResultNodeFacade result(domDocument, rootNode, "result");
+ [&domDocument, &resultNode](const boost::filesystem::path& p) {
+ ResultNodeFacade result(domDocument, resultNode, "entry");
switch ( boost::filesystem::status(p).type() ) {
case boost::filesystem::regular_file: {
@@ -60,7 +67,7 @@ xercesc::DOMDocument* FunctionReadDirectory::constructDocument(
result.setValueNode("full", boost::filesystem::canonical(p).string());
});
} else {
- ResultNodeFacade result(domDocument, rootNode, "error");
+ result.setAttribute("result", "error");
}
return domDocument;