summaryrefslogtreecommitdiffstats
path: root/Schemas
diff options
context:
space:
mode:
authorGuillaume Denneulin <guillaumex.denneulin@intel.com>2012-02-17 14:38:14 +0100
committerDavid Wagner <david.wagner@intel.com>2014-02-10 17:15:02 +0100
commita4ec15d5d5e84fbee3faa46a66e7b1eb90816ce2 (patch)
treef9337905614685a6cc18036c56d477a5a6f83450 /Schemas
parent19bb62917f765c3fa11d1d4c5f88c445e22f227a (diff)
downloadexternal_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 'Schemas')
-rw-r--r--Schemas/ParameterFrameworkConfiguration.xsd17
1 files changed, 13 insertions, 4 deletions
diff --git a/Schemas/ParameterFrameworkConfiguration.xsd b/Schemas/ParameterFrameworkConfiguration.xsd
index d84d108..8ece70d 100644
--- a/Schemas/ParameterFrameworkConfiguration.xsd
+++ b/Schemas/ParameterFrameworkConfiguration.xsd
@@ -3,11 +3,20 @@
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="ConfigurationFilePath">
<xs:attribute name="Path" type="xs:anyURI" use="required"/>
- </xs:complexType>
- <xs:element name="SubsystemPluginFolders">
+ </xs:complexType>
+ <xs:complexType name="PluginFile">
+ <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="PluginLocation">
+ <xs:sequence>
+ <xs:element name="Plugin" type="PluginFile" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="Folder" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ <xs:element name="SubsystemPlugins">
<xs:complexType>
<xs:sequence>
- <xs:element name="PluginFolderLocation" type="ConfigurationFilePath" maxOccurs="unbounded"/>
+ <xs:element name="Location" type="PluginLocation" maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -20,7 +29,7 @@
<xs:element name="ParameterFrameworkConfiguration">
<xs:complexType>
<xs:sequence>
- <xs:element ref="SubsystemPluginFolders"/>
+ <xs:element ref="SubsystemPlugins" />
<xs:element name="StructureDescriptionFileLocation" type="ConfigurationFilePath"/>
<xs:element name="SettingsConfiguration" type="SettingsConfigurationType" minOccurs="0"/>
</xs:sequence>