parameter-framework: Changed criterion interface

BZ: 9561

- separated selection criterion change event indication form configuration application requests in different APIs
- added a way to retrieve selection criterion from its name
- updated version number 0.2.1

Change-Id: Icf4560fe67001655a171401f106296b9aa09afb3
Orig-Change-Id: I8dfb05ba1e704888c5c1ff9268a2a2e9a46af9bb
Signed-off-by: Patrick Benavoli <patrickx.benavoli@intel.com>
Reviewed-on: http://android.intel.com:8080/20208
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>
diff --git a/parameter/SelectionCriterion.cpp b/parameter/SelectionCriterion.cpp
index 9640b3b..d3e561b 100644
--- a/parameter/SelectionCriterion.cpp
+++ b/parameter/SelectionCriterion.cpp
@@ -29,10 +29,11 @@
  * </auto_header>
  */
 #include "SelectionCriterion.h"
+#include "AutoLog.h"
 
 #define base CElement
 
-CSelectionCriterion::CSelectionCriterion(const string& strName, const CSelectionCriterionType* pType) : base(strName), _iState(0), _pType(pType), _pObserver(NULL)
+CSelectionCriterion::CSelectionCriterion(const string& strName, const CSelectionCriterionType* pType) : base(strName), _iState(0), _pType(pType)
 {
 }
 
@@ -43,18 +44,14 @@
 
 /// From ISelectionCriterionInterface
 // State
-void CSelectionCriterion::setCriterionState(int iState, bool bUpdate)
+void CSelectionCriterion::setCriterionState(int iState)
 {
     // Check for a change
     if (_iState != iState) {
 
+        CAutoLog autoLog(this, "Selection criterion changed event: " + getFormattedDescription(false));
+
         _iState = iState;
-
-        // Update if required
-        if (bUpdate && _pObserver) {
-
-            _pObserver->selectionCriterionChanged(this);
-        }
     }
 }
 
@@ -75,12 +72,6 @@
     return _pType;
 }
 
-/// Observer
-void CSelectionCriterion::setObserver(ISelectionCriterionObserver* pSelectionCriterionObserver)
-{
-    _pObserver = pSelectionCriterionObserver;
-}
-
 /// Match methods
 bool CSelectionCriterion::is(int iState) const
 {