diff --git a/src/app/CFGParameterValue.cpp b/src/app/CFGParameterValue.cpp index a8e0593..c124106 100644 --- a/src/app/CFGParameterValue.cpp +++ b/src/app/CFGParameterValue.cpp @@ -4,6 +4,7 @@ CFGParameterValue::CFGParameterValue():DictionaryInterface(),_parameter(NULL), _ { } + CFGParameterValue::CFGParameterValue(const char *parameter, const char *value, boolean quotedParameter, boolean quotedValue):_quotedParameter(quotedParameter), _quotedValue(quotedValue) { _parameter = (char *) malloc((strlen(parameter) * sizeof(char)) + 1); //+1 for the string terminating character @@ -12,6 +13,7 @@ CFGParameterValue::CFGParameterValue(const char *parameter, const char *value, b strcpy(_parameter, parameter); strcpy(_value, value); } + CFGParameterValue::CFGParameterValue(const char *parameter, const char *value):CFGParameterValue() { _parameter = (char *) malloc((strlen(parameter) * sizeof(char)) + 1); //+1 for the string terminating character @@ -20,6 +22,7 @@ CFGParameterValue::CFGParameterValue(const char *parameter, const char *value):C strcpy(_parameter, parameter); strcpy(_value, value); } + CFGParameterValue::CFGParameterValue(const CFGParameterValue &Object) { _parameter = (char *) malloc((strlen(Object._parameter) * sizeof(char)) + 1); //+1 for the string terminating character @@ -31,6 +34,7 @@ CFGParameterValue::CFGParameterValue(const CFGParameterValue &Object) _quotedParameter = Object._quotedParameter; _quotedValue = Object._quotedValue; } + CFGParameterValue::~CFGParameterValue() { free(_parameter); @@ -38,3 +42,12 @@ CFGParameterValue::~CFGParameterValue() free(_value); _value = NULL; } + +void CFGParameterValue::setValue(const char *value, bool isQuoted) +{ + _quotedValue = isQuoted; + + free(_value);_value = NULL; + _value = (char *) malloc((strlen(value) * sizeof(char)) + 1); //+1 for the string terminating character + strcpy(_value, value); +} diff --git a/src/app/CFGParameterValue.h b/src/app/CFGParameterValue.h index 2b49f5b..486d1ee 100644 --- a/src/app/CFGParameterValue.h +++ b/src/app/CFGParameterValue.h @@ -29,10 +29,11 @@ public: const char *getParameter() const{return _parameter == NULL ? "" : _parameter;} const bool isQuotedParameter()const{return _quotedParameter;} const bool isQuotedValue()const{return _quotedValue;} - virtual const char *toString() + virtual const char *toString() { return _value; } + void setValue(const char *value, bool isQuoted); protected: private: char *_parameter;