Extract and specialize domain import- and export-specific contexts
Import and Export of ConfigurableDomains have different context needs: e.g. the
value representation is only used for export; auto-validation is only
meaningful for import whereas the "with settings" context is common to both.
We create two new classes, derived from XmlDomainSerializingContext and move
most of its content to each class it belongs to.
Change-Id: I56589cdb3a8ea417e11d2ed98ccd055d7cdead67
Signed-off-by: David Wagner <david.wagner@intel.com>
diff --git a/parameter/XmlDomainSerializingContext.h b/parameter/XmlDomainSerializingContext.h
index 88d2b5f..955d939 100644
--- a/parameter/XmlDomainSerializingContext.h
+++ b/parameter/XmlDomainSerializingContext.h
@@ -33,41 +33,21 @@
#include <string>
-class CParameterBlackboard;
-class CSelectionCriteriaDefinition;
-
class CXmlDomainSerializingContext : public CXmlElementSerializingContext
{
public:
- CXmlDomainSerializingContext(std::string& strError, bool bWithSettings);
+ CXmlDomainSerializingContext(std::string& strError, bool bWithSettings):
+ base(strError), _bWithSettings(bWithSettings) {}
// Settings to be serialized or not
- bool withSettings() const;
+ bool withSettings() const
+ {
+ return _bWithSettings;
+ }
- // Value interpretation as Real or Raw
- void setValueSpaceRaw(bool bIsRaw);
- bool valueSpaceIsRaw() const;
-
- // Output Raw Format for user get value interpretation
- void setOutputRawFormat(bool bIsHex);
- bool outputRawFormatIsHex();
-
- // Criteria defintion
- void setSelectionCriteriaDefinition(const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition);
- const CSelectionCriteriaDefinition* getSelectionCriteriaDefinition() const;
-
- // Auto validation of configurations
- void setAutoValidationRequired(bool bAutoValidationRequired);
- bool autoValidationRequired() const;
private:
+ typedef CXmlElementSerializingContext base;
+
// Indicate wheter or not to import settings
bool _bWithSettings;
- // Value Space
- bool _bValueSpaceIsRaw;
- // Output Raw Format
- bool _bOutputRawFormatIsHex;
- // Criteria defintion
- const CSelectionCriteriaDefinition* _pSelectionCriteriaDefinition;
- // Auto validation of configurations
- bool _bAutoValidationRequired;
};