aboutsummaryrefslogtreecommitdiffstats
path: root/parameter/ParameterMgr.cpp
diff options
context:
space:
mode:
authorKevin Rocard <kevinx.rocard@intel.com>2013-04-18 19:12:46 +0200
committerDavid Wagner <david.wagner@intel.com>2014-02-12 17:03:52 +0100
commit4eae8272c44ff786f5cec21c0af64bbd13792d4c (patch)
treed69835d57598637fe24f0e31785e89d221ae57f4 /parameter/ParameterMgr.cpp
parent0c2e065609758e718d37e1c0057aea46fb50fc8e (diff)
downloadexternal_parameter-framework-4eae8272c44ff786f5cec21c0af64bbd13792d4c.zip
external_parameter-framework-4eae8272c44ff786f5cec21c0af64bbd13792d4c.tar.gz
external_parameter-framework-4eae8272c44ff786f5cec21c0af64bbd13792d4c.tar.bz2
Add an optional csv flag to the listCriteria command
BZ: 101806 The listCriteria command output is very dificult to parse. The default output format contains a lot of useless formating character: $ listCriteria BandRinging: ============ Possible states (Exclusive): {NetworkGenerated, PhoneGenerated} Current state = <none> Add a optional csv flag. With this flag, each criterion info fits in one line, with each field separated by commas: $ listCriteria csv Criterion name: BandRinging, type kind: exclusive, current state: <none>, states: {NetworkGenerated, PhoneGenerated} Change-Id: I7f2b0a86405846b03cab7f4a3023503b69c6e29b Signed-off-by: Kevin Rocard <kevinx.rocard@intel.com> Reviewed-on: http://android.intel.com:8080/102724 Reviewed-by: cactus <cactus@intel.com> Reviewed-by: Denneulin, Guillaume <guillaume.denneulin@intel.com> Reviewed-by: Gonzalve, Sebastien <sebastien.gonzalve@intel.com> Tested-by: Dixon, CharlesX <charlesx.dixon@intel.com> Reviewed-by: buildbot <buildbot@intel.com> Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'parameter/ParameterMgr.cpp')
-rw-r--r--parameter/ParameterMgr.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/parameter/ParameterMgr.cpp b/parameter/ParameterMgr.cpp
index 24fd464..3af4c39 100644
--- a/parameter/ParameterMgr.cpp
+++ b/parameter/ParameterMgr.cpp
@@ -123,7 +123,7 @@ const CParameterMgr::SRemoteCommandParserItem CParameterMgr::gastRemoteCommandPa
{ "getAutoSync", &CParameterMgr::getAutoSyncCommmandProcess, 0, "", "Show Auto Sync state" },
{ "sync", &CParameterMgr::syncCommmandProcess, 0, "", "Synchronize current settings to hardware while in Tuning Mode and Auto Sync off" },
/// Criteria
- { "listCriteria", &CParameterMgr::listCriteriaCommmandProcess, 0, "", "List selection criteria" },
+ { "listCriteria", &CParameterMgr::listCriteriaCommmandProcess, 0, "[csv]", "List selection criteria" },
/// Domains
{ "listDomains", &CParameterMgr::listDomainsCommmandProcess, 0, "", "List configurable domains" },
{ "dumpDomains", &CParameterMgr::dumpDomainsCommmandProcess, 0, "", "Show all domains and configurations, including applicability conditions" },
@@ -831,9 +831,21 @@ CParameterMgr::CCommandHandler::CommandStatus CParameterMgr::listCriteriaCommman
{
(void)remoteCommand;
- list<string> lstrResult;
+ bool humanReadable = true;
+
+ // Look for optional arguments
+ if (remoteCommand.getArgumentCount() >= 1) {
+
+ // If csv is provided, format the criterion list in Commas Separated Value pairs
+ if (remoteCommand.getArgument(0) == "csv") {
+ humanReadable = false;
+ } else {
+ return CCommandHandler::EShowUsage;
+ }
+ }
- getSelectionCriteria()->listSelectionCriteria(lstrResult, true, true);
+ list<string> lstrResult;
+ getSelectionCriteria()->listSelectionCriteria(lstrResult, true, humanReadable);
// Concatenate the criterion list as the command result
CUtility::concatenate(lstrResult, strResult);