summaryrefslogtreecommitdiffstats
path: root/parameter/ParameterMgr.h
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/ParameterMgr.h
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/ParameterMgr.h')
-rw-r--r--parameter/ParameterMgr.h27
1 files changed, 26 insertions, 1 deletions
diff --git a/parameter/ParameterMgr.h b/parameter/ParameterMgr.h
index 9677303..9145c4e 100644
--- a/parameter/ParameterMgr.h
+++ b/parameter/ParameterMgr.h
@@ -104,7 +104,13 @@ public:
// Logging
void setLogger(ILogger* pLogger);
- // Init
+ /** Load plugins, structures and settings from the config file given.
+ *
+ * @param[out] strError is a string describing the error if an error occurred
+ * undefined otherwise.
+ *
+ * @return true if no error occurred, false otherwise.
+ */
bool load(string& strError);
virtual bool init(string& strError);
@@ -131,6 +137,20 @@ public:
// Dynamic parameter handling
CParameterHandle* createParameterHandle(const string& strPath, string& strError);
+ /** 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 fallback on virtual subsystem
+ */
+ void setFailureOnMissingSubsystem(bool bFail);
+
+ /** Would start fail in case of missing subsystems.
+ *
+ * @return true if the subsystem will fail on missing subsystem, false otherwise.
+ */
+ bool getFailureOnMissingSubsystem() const;
+
//////////// Tuning /////////////
// Tuning mode
bool setTuningMode(bool bOn, string& strError);
@@ -458,5 +478,10 @@ private:
// Logging
ILogger* _pLogger;
mutable uint32_t _uiLogDepth;
+
+ /** If set to true, missing subsystem will abort parameterMgr start.
+ * If set to false, missing subsystem will fallback on virtual subsystem.
+ */
+ bool _bFailOnMissingSubsystem;
};