From a4ec15d5d5e84fbee3faa46a66e7b1eb90816ce2 Mon Sep 17 00:00:00 2001 From: Guillaume Denneulin Date: Fri, 17 Feb 2012 14:38:14 +0100 Subject: PFW: Enhance subsytem libraries load mechanism BZ: 24093 If a subsystem library depends on another one, the libraries have to be loaded in a predefined order. the previous recovery mechanism on PFW was: When a subsystem library does not load because of a missing dependency, it tries to load all the other subsystems before trying one more time to load the failing library. Unfortunately, Android linker does not allow several try when loading a library. In consequence, this patch implements a new mechanism to load its subsystem libraries. For this new mechanism, the PFW will load the subsystem libraries in the order they are disposed in the file ParameterFrameworkConfiguration.xml Change-Id: I39b97e33c77a6b4392c3813cd3d780e10e3b60f8 Signed-off-by: Guillaume Denneulin Reviewed-on: http://android.intel.com:8080/35903 Reviewed-by: Barthes, FabienX Tested-by: Barthes, FabienX Reviewed-by: buildbot Tested-by: buildbot --- parameter/PluginLocation.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 parameter/PluginLocation.h (limited to 'parameter/PluginLocation.h') diff --git a/parameter/PluginLocation.h b/parameter/PluginLocation.h new file mode 100644 index 0000000..ceba681 --- /dev/null +++ b/parameter/PluginLocation.h @@ -0,0 +1,54 @@ +/* + * + * + * 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. + * + * AUTHOR: Patrick Benavoli (patrickx.benavoli@intel.com) + * CREATED: 2011-06-01 + * UPDATED: 2011-07-27 + * + * + * + */ +#pragma once +#include +#include "KindElement.h" + +class CPluginLocation : public CKindElement +{ + +public: + CPluginLocation(const string& strName, const string& strKind); + + // From IXmlSink + virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext); + + // Folder + const string& getFolder() const; + + // Plugin list + const list& getPluginList() const; + +private: + string _strFolder; + list _pluginList; + +}; -- cgit v1.1