aboutsummaryrefslogtreecommitdiffstats
path: root/src/parameterFactory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parameterFactory.cpp')
-rw-r--r--src/parameterFactory.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/parameterFactory.cpp b/src/parameterFactory.cpp
index 77450409..a5a7a81c 100644
--- a/src/parameterFactory.cpp
+++ b/src/parameterFactory.cpp
@@ -73,4 +73,27 @@ parameter* parameterFactory::create
}
+parameter* parameterFactory::create(const string& name, const component& value)
+{
+ const string lcName = utility::stringUtils::toLower(name);
+
+ NameMap::const_iterator pos = m_nameMap.find(lcName);
+ parameter* param = NULL;
+
+ if (pos != m_nameMap.end())
+ {
+ param = ((*pos).second)();
+ }
+ else
+ {
+ param = registerer <defaultParameter>::creator();
+ }
+
+ param->m_name = name;
+ param->setValue(value);
+
+ return (param);
+}
+
+
} // vmime