summaryrefslogtreecommitdiffstats
path: root/parameter/include
diff options
context:
space:
mode:
authorKevin Rocard <kevinx.rocard@intel.com>2013-07-10 18:28:10 +0200
committerDavid Wagner <david.wagner@intel.com>2014-02-12 17:04:07 +0100
commitecf9310061f47da0fd9f3d604e8b20f4fcb5749c (patch)
tree6c92949c898ffbc9f53b5e9be0beea64f47d9ceb /parameter/include
parent6be8035935a21661833bddd3803e279652e81416 (diff)
downloadexternal_parameter-framework-ecf9310061f47da0fd9f3d604e8b20f4fcb5749c.zip
external_parameter-framework-ecf9310061f47da0fd9f3d604e8b20f4fcb5749c.tar.gz
external_parameter-framework-ecf9310061f47da0fd9f3d604e8b20f4fcb5749c.tar.bz2
Add missing subsystem policy
BZ: 122982 When the PFW starts it loads subsystems using there corresponding plugin. If the requested plugin is not found, the start fails. This is a problem, as for host, the plugins are not compiled. Add a command in the public API to ignore missing subsystem. Change-Id: I7597e3fef33466638191ff70b76e7faa9f979418 Signed-off-by: Kevin Rocard <kevinx.rocard@intel.com> Reviewed-on: http://android.intel.com:8080/118039 Reviewed-by: Centelles, Sylvain <sylvain.centelles@intel.com> Tested-by: Barthes, FabienX <fabienx.barthes@intel.com> Reviewed-by: cactus <cactus@intel.com> Tested-by: cactus <cactus@intel.com>
Diffstat (limited to 'parameter/include')
-rw-r--r--parameter/include/ParameterMgrPlatformConnector.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/parameter/include/ParameterMgrPlatformConnector.h b/parameter/include/ParameterMgrPlatformConnector.h
index ae3e216..50c1212 100644
--- a/parameter/include/ParameterMgrPlatformConnector.h
+++ b/parameter/include/ParameterMgrPlatformConnector.h
@@ -21,7 +21,6 @@
*/
#pragma once
-#include <list>
#include "SelectionCriterionTypeInterface.h"
#include "SelectionCriterionInterface.h"
#include "ParameterHandle.h"
@@ -51,7 +50,7 @@ public:
ISelectionCriterionTypeInterface* createSelectionCriterionType(bool bIsInclusive = false);
ISelectionCriterionInterface* createSelectionCriterion(const std::string& strName, const ISelectionCriterionTypeInterface* pSelectionCriterionType);
// Selection criterion retrieval
- ISelectionCriterionInterface* getSelectionCriterion(const std::string& strName);
+ ISelectionCriterionInterface* getSelectionCriterion(const std::string& strName) const;
// Logging
// Should be called before start
@@ -71,6 +70,24 @@ public:
// Must be cassed after successfull start
CParameterHandle* createParameterHandle(const std::string& strPath, std::string& strError) const;
+ /** Should start fail in case of missing subsystems.
+ *
+ * Will fail if called on started instance.
+ * @param[in] bFail: If set to true, parameterMgr start will fail on missing subsystems
+ * If set to false, missing subsystems will fallbacks on virtual subsystem
+ * @param[out] strError a string describing the error if the function failed,
+ unmodified otherwise.
+ *
+ * @return false if unable to set, true otherwise.
+ */
+ bool setFailureOnMissingSubsystem(bool bFail, std::string& strError);
+
+ /** Would start fail in case of missing subsystems.
+ *
+ * @return if the subsystem load will fail on missing subsystem.
+ */
+ bool getFailureOnMissingSubsystem();
+
private:
CParameterMgrPlatformConnector(const CParameterMgrPlatformConnector&);
CParameterMgrPlatformConnector& operator=(const CParameterMgrPlatformConnector&);