diff options
author | Guillaume Denneulin <guillaumex.denneulin@intel.com> | 2012-02-17 14:38:14 +0100 |
---|---|---|
committer | David Wagner <david.wagner@intel.com> | 2014-02-10 17:15:02 +0100 |
commit | a4ec15d5d5e84fbee3faa46a66e7b1eb90816ce2 (patch) | |
tree | f9337905614685a6cc18036c56d477a5a6f83450 /parameter/ParameterMgr.h | |
parent | 19bb62917f765c3fa11d1d4c5f88c445e22f227a (diff) | |
download | external_parameter-framework-a4ec15d5d5e84fbee3faa46a66e7b1eb90816ce2.zip external_parameter-framework-a4ec15d5d5e84fbee3faa46a66e7b1eb90816ce2.tar.gz external_parameter-framework-a4ec15d5d5e84fbee3faa46a66e7b1eb90816ce2.tar.bz2 |
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 <guillaumex.denneulin@intel.com>
Reviewed-on: http://android.intel.com:8080/35903
Reviewed-by: Barthes, FabienX <fabienx.barthes@intel.com>
Tested-by: Barthes, FabienX <fabienx.barthes@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'parameter/ParameterMgr.h')
-rw-r--r-- | parameter/ParameterMgr.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/parameter/ParameterMgr.h b/parameter/ParameterMgr.h index da4e43f..1a5ebf2 100644 --- a/parameter/ParameterMgr.h +++ b/parameter/ParameterMgr.h @@ -51,6 +51,7 @@ class CConfigurableDomains; class IRemoteProcessorServerInterface; class CBackSynchronizer; class CParameterHandle; +class CSubsystemPlugins; class CParameterMgr : private CElement { @@ -321,7 +322,7 @@ private: string _strSchemaFolderLocation; // Place where schemas stand // Subsystem plugin location - vector<string> _astrPluginFolderPaths; + const CSubsystemPlugins* _pSubsystemPlugins; // Whole system structure checksum uint8_t _uiStructureChecksum; |