aboutsummaryrefslogtreecommitdiffstats
path: root/parameter/ArrayParameter.cpp
diff options
context:
space:
mode:
authorPatrick Benavoli <patrickx.benavoli@intel.com>2011-10-27 14:18:00 +0200
committerDavid Wagner <david.wagner@intel.com>2014-02-10 17:14:57 +0100
commit4bed9212041d94d52e55e624bd081fcbf01ee04e (patch)
tree038feec5bb0749ff31674eb7198dbdafe8cb1cf9 /parameter/ArrayParameter.cpp
parent63499d4763e42d76bfd39b79871f611381d2d164 (diff)
downloadexternal_parameter-framework-4bed9212041d94d52e55e624bd081fcbf01ee04e.zip
external_parameter-framework-4bed9212041d94d52e55e624bd081fcbf01ee04e.tar.gz
external_parameter-framework-4bed9212041d94d52e55e624bd081fcbf01ee04e.tar.bz2
PFW: Dynamic parameter access
BZ: 13272 Added dynamic parameter setting / getting interface for hosting platforms This new API allows: - getting any parameter - setting any parameter as long as it is rogue (attached to no domains) Passed parameter values are in the form of strings. Change-Id: I01a34597fcb4dafb225519cbc01dfffb22b5d52a Signed-off-by: Patrick Benavoli <patrickx.benavoli@intel.com> Reviewed-on: http://android.intel.com:8080/22629 Reviewed-by: Centelles, Sylvain <sylvain.centelles@intel.com> Tested-by: Barthes, FabienX <fabienx.barthes@intel.com> Reviewed-by: buildbot <buildbot@intel.com> Tested-by: buildbot <buildbot@intel.com> Reviewed-on: http://android.intel.com:8080/26781 Reviewed-by: Barthes, FabienX <fabienx.barthes@intel.com>
Diffstat (limited to 'parameter/ArrayParameter.cpp')
-rw-r--r--parameter/ArrayParameter.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/parameter/ArrayParameter.cpp b/parameter/ArrayParameter.cpp
index e8d351d..e777c61 100644
--- a/parameter/ArrayParameter.cpp
+++ b/parameter/ArrayParameter.cpp
@@ -104,6 +104,12 @@ bool CArrayParameter::setValue(CPathNavigator& pathNavigator, const string& strV
return false;
}
+ // Check for dynamic access
+ if (!checkForDynamicAccess(parameterContext)) {
+
+ return false;
+ }
+
if (uiStartIndex == (uint32_t)-1) {
// No index provided, start with 0
@@ -136,6 +142,13 @@ bool CArrayParameter::getValue(CPathNavigator& pathNavigator, string& strValue,
return false;
}
+
+ // Check for dynamic access
+ if (!checkForDynamicAccess(parameterContext)) {
+
+ return false;
+ }
+
if (uiIndex == (uint32_t)-1) {
// Whole array requested
@@ -275,6 +288,8 @@ void CArrayParameter::getValues(uint32_t uiBaseOffset, string& strValues, CParam
uint32_t uiOffset = getOffset() - uiBaseOffset;
uint32_t uiArrayLength = getArrayLength();
+ strValues.clear();
+
bool bFirst = true;
for (uiValueIndex = 0; uiValueIndex < uiArrayLength; uiValueIndex++) {