diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2008-09-24 06:48:27 +0000 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2008-09-24 06:48:27 +0000 |
commit | e63c462f31bc34c5b19d243492c7644f423d55d0 (patch) | |
tree | 438b98e2a8895dcd9ffda75cf63c46041266c112 /ipalib/frontend.py | |
parent | 4215da30ad9de6467abe2c56f7a56f73001060b3 (diff) | |
download | freeipa-e63c462f31bc34c5b19d243492c7644f423d55d0.tar.gz freeipa-e63c462f31bc34c5b19d243492c7644f423d55d0.tar.xz freeipa-e63c462f31bc34c5b19d243492c7644f423d55d0.zip |
335: If Command.__convert_scalar() is called with None, it now returns None instead of raising TypeError
Diffstat (limited to 'ipalib/frontend.py')
-rw-r--r-- | ipalib/frontend.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/ipalib/frontend.py b/ipalib/frontend.py index d53a7d4d..7d75fa17 100644 --- a/ipalib/frontend.py +++ b/ipalib/frontend.py @@ -106,6 +106,8 @@ class Param(plugable.ReadOnly): lock(self) def __dispatch(self, value, scalar): + if value is None: + return None if self.multivalue: if type(value) in (tuple, list): if len(value) == 0: @@ -146,7 +148,7 @@ class Param(plugable.ReadOnly): def __convert_scalar(self, value, index=None): if value is None: - raise TypeError('value cannot be None') + return None converted = self.type(value) if converted is None: raise errors.ConversionError( @@ -155,9 +157,12 @@ class Param(plugable.ReadOnly): return converted def convert(self, value): - return self.__dispatch(value, self.__convert_scalar) - + """ + Convert/coerce ``value`` to Python type for this parameter. + :param value: A proposed value for this parameter. + """ + return self.__dispatch(value, self.__convert_scalar) def __validate_scalar(self, value, index=None): if type(value) is not self.type.type: |