diff options
author | Georges-Henri Baron <georges-henrix.baron@intel.com> | 2012-06-28 12:05:09 +0200 |
---|---|---|
committer | David Wagner <david.wagner@intel.com> | 2014-02-12 17:03:13 +0100 |
commit | 326a31df0dd401283de6170ed09bcf605f61ef7d (patch) | |
tree | 8b41618325db75380a53df102e2f0e62451a3b2b /xmlserializer/XmlComposer.cpp | |
parent | dc32d63f2ed740af1bfc0b3f8fd2337cba46d895 (diff) | |
download | external_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 'xmlserializer/XmlComposer.cpp')
-rw-r--r-- | xmlserializer/XmlComposer.cpp | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/xmlserializer/XmlComposer.cpp b/xmlserializer/XmlComposer.cpp deleted file mode 100644 index d00a21e..0000000 --- a/xmlserializer/XmlComposer.cpp +++ /dev/null @@ -1,105 +0,0 @@ -/* - * INTEL CONFIDENTIAL - * Copyright © 2011 Intel - * Corporation All Rights Reserved. - * - * The source code contained or described herein and all documents related to - * the source code ("Material") are owned by Intel Corporation or its suppliers - * or licensors. Title to the Material remains with Intel Corporation or its - * suppliers and licensors. The Material contains trade secrets and proprietary - * and confidential information of Intel or its suppliers and licensors. The - * Material is protected by worldwide copyright and trade secret laws and - * treaty provisions. No part of the Material may be used, copied, reproduced, - * modified, published, uploaded, posted, transmitted, distributed, or - * disclosed in any way without Intel’s prior express written permission. - * - * No license under any patent, copyright, trade secret or other intellectual - * property right is granted to or conferred upon you by disclosure or delivery - * of the Materials, either expressly, by implication, inducement, estoppel or - * otherwise. Any license under such intellectual property rights must be - * express and approved by Intel in writing. - * - * CREATED: 2011-06-01 - * UPDATED: 2011-07-27 - */ -#include "XmlComposer.h" -#include <libxml/parser.h> -#include <libxml/tree.h> -#include <sys/time.h> - -#define base CXmlSerializer - -#ifndef LIBXML_TREE_ENABLED -#warning "LIBXML_TREE_ENABLED undefined. XML file exporting feature won't be supported!" -#endif - -CXmlComposer::CXmlComposer(const string& strXmlInstanceFile, const string& strXmlSchemaFile, const string& strRootElementType, CXmlSerializingContext& serializingContext) : - base(strXmlInstanceFile, strXmlSchemaFile, strRootElementType, serializingContext) -{ -} - -CXmlComposer::~CXmlComposer() -{ -} - -// open / close -bool CXmlComposer::open() -{ -#ifdef LIBXML_TREE_ENABLED - // Create document from scratch - _pDoc = xmlNewDoc(BAD_CAST "1.0"); - - // Create root node - _pRootNode = xmlNewNode(NULL, BAD_CAST _strRootElementType.c_str()); - - // Assign it to document - xmlDocSetRootElement(_pDoc, _pRootNode); -#else - _serializingContext.setError("XML file exporting feature unsupported on this image. This easiest way to activate it is to do a global recompilation with LIBXML_TREE_ENABLED compiler switch set"); -#endif - return base::open(); -} - -bool CXmlComposer::close() -{ - // Write file (formatted) - if (xmlSaveFormatFileEnc(_strXmlInstanceFile.c_str(), _pDoc, "UTF-8", 1) == -1) { - - _serializingContext.setError("Could not write file " + _strXmlInstanceFile); - - return false; - } - - return base::close(); -} - -// Composing contents -void CXmlComposer::compose(const IXmlSource* pXmlSource, const string& strProduct, const string& strVersion) -{ - // Compose document - CXmlElement docElement(_pRootNode); - - // Schema namespace - docElement.setAttributeString("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); - - // Schema location - docElement.setAttributeString("xsi:noNamespaceSchemaLocation", _strXmlSchemaFile); - - // Comment for date/time - docElement.setComment(string(" Exported on ") + getTimeAsString() + " from " + strProduct + " version " + strVersion + " "); - - pXmlSource->toXml(docElement, _serializingContext); -} - -string CXmlComposer::getTimeAsString() -{ - char acBuf[200]; - time_t t; - struct tm *tmp; - t = time(NULL); - tmp = localtime(&t); - - strftime(acBuf, sizeof(acBuf), "%F, %T", tmp); - - return acBuf; -} |