summaryrefslogtreecommitdiffstats
path: root/parameter/XmlFileIncluderElement.cpp
diff options
context:
space:
mode:
authorGeorges-Henri Baron <georges-henrix.baron@intel.com>2012-06-28 12:05:09 +0200
committerDavid Wagner <david.wagner@intel.com>2014-02-12 17:03:13 +0100
commit326a31df0dd401283de6170ed09bcf605f61ef7d (patch)
tree8b41618325db75380a53df102e2f0e62451a3b2b /parameter/XmlFileIncluderElement.cpp
parentdc32d63f2ed740af1bfc0b3f8fd2337cba46d895 (diff)
downloadexternal_parameter-framework-326a31df0dd401283de6170ed09bcf605f61ef7d.zip
external_parameter-framework-326a31df0dd401283de6170ed09bcf605f61ef7d.tar.gz
external_parameter-framework-326a31df0dd401283de6170ed09bcf605f61ef7d.tar.bz2
PFW: Add two commands to print xml settings and structure
BZ: 44910 Creates two commands that can be called through the command line of the parameter-framework. First command getDomainXML returns a string containing the xml structure of the domains, configurations and settings. Second command getSystemClassXML returns a string containing the xml structure of all the instantiated parameter with their attributes. Change-Id: I9a35333802049a2177b8fc416754fdb67e6efff0 Signed-off-by: Georges-Henri Baron <georges-henrix.baron@intel.com> Reviewed-on: http://android.intel.com:8080/55155 Reviewed-by: Rocard, KevinX <kevinx.rocard@intel.com> Reviewed-by: Centelles, Sylvain <sylvain.centelles@intel.com> Tested-by: Mendi, EduardoX <eduardox.mendi@intel.com> Reviewed-by: buildbot <buildbot@intel.com> Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'parameter/XmlFileIncluderElement.cpp')
-rw-r--r--parameter/XmlFileIncluderElement.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/parameter/XmlFileIncluderElement.cpp b/parameter/XmlFileIncluderElement.cpp
index 6e93721..89e5c14 100644
--- a/parameter/XmlFileIncluderElement.cpp
+++ b/parameter/XmlFileIncluderElement.cpp
@@ -23,7 +23,8 @@
* UPDATED: 2011-07-27
*/
#include "XmlFileIncluderElement.h"
-#include "XmlParser.h"
+#include "XmlFileDocSource.h"
+#include "XmlMemoryDocSink.h"
#include "XmlElementSerializingContext.h"
#include "ElementLibrary.h"
#include <assert.h>
@@ -52,17 +53,13 @@ bool CXmlFileIncluderElement::fromXml(const CXmlElement& xmlElement, CXmlSeriali
// Instantiate parser
string strIncludedElementType = getIncludedElementType();
- CXmlParser parser(strPath, elementSerializingContext.getXmlSchemaPathFolder() + "/" + strIncludedElementType + ".xsd", strIncludedElementType, elementSerializingContext);
-
- if (!parser.open()) {
-
- return false;
- }
+ // Use a doc source that load data from a file
+ CXmlFileDocSource fileDocSource(strPath, elementSerializingContext.getXmlSchemaPathFolder() + "/" + strIncludedElementType + ".xsd", strIncludedElementType);
// Get top level element
CXmlElement childElement;
- parser.getRootElement(childElement);
+ fileDocSource.getRootElement(childElement);
// Create child element
CElement* pChild = elementSerializingContext.getElementLibrary()->createElement(childElement);
@@ -78,7 +75,10 @@ bool CXmlFileIncluderElement::fromXml(const CXmlElement& xmlElement, CXmlSeriali
return false;
}
- if (!parser.parse(pChild)) {
+ // Use a doc sink that instantiate the structure from the doc source
+ CXmlMemoryDocSink memorySink(pChild);
+
+ if (!memorySink.process(fileDocSource, elementSerializingContext)) {
return false;
}