summaryrefslogtreecommitdiffstats
path: root/ipalib/parameters.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipalib/parameters.py')
-rw-r--r--ipalib/parameters.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/ipalib/parameters.py b/ipalib/parameters.py
index 2ecc6178d..c32272e57 100644
--- a/ipalib/parameters.py
+++ b/ipalib/parameters.py
@@ -251,9 +251,11 @@ class Param(ReadOnly):
self.password = False
# Merge in kw from parse_param_spec():
- if not ('required' in kw or 'multivalue' in kw):
- (name, kw_from_spec) = parse_param_spec(name)
- kw.update(kw_from_spec)
+ (name, kw_from_spec) = parse_param_spec(name)
+ if not 'required' in kw:
+ kw['required'] = kw_from_spec['required']
+ if not 'multivalue' in kw:
+ kw['multivalue'] = kw_from_spec['multivalue']
self.name = check_name(name)
self.nice = '%s(%r)' % (self.__class__.__name__, self.param_spec)
@@ -1175,9 +1177,7 @@ class List(Param):
yield [unicode(cell, 'utf-8') for cell in row]
def __init__(self, name, *rules, **kw):
- (name, kw_from_spec) = parse_param_spec(name)
- kw.update(kw_from_spec)
- kw.update(multivalue=True)
+ kw['multivalue'] = True
super(List, self).__init__(name, *rules, **kw)
def normalize(self, value):
@@ -1235,3 +1235,4 @@ def create_param(spec):
TYPE_ERROR % ('spec', (str, Param), spec, type(spec))
)
return Str(spec)
+