Repository :
http://git.fedorahosted.org/cgit/cura-tools.git
On branch : master
---------------------------------------------------------------
commit 88b2311c9eba4b234c5b7a3ad2bfbc00b8a50a41
Author: Peter Hatina <phatina(a)redhat.com>
Date: Mon Aug 5 14:07:57 2013 +0200
introduce reversed constant values
---------------------------------------------------------------
cli/lmi/shell/LMIConstantValues.py | 16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletions(-)
diff --git a/cli/lmi/shell/LMIConstantValues.py b/cli/lmi/shell/LMIConstantValues.py
index 79449e4..6e564ac 100644
--- a/cli/lmi/shell/LMIConstantValues.py
+++ b/cli/lmi/shell/LMIConstantValues.py
@@ -41,9 +41,14 @@ class LMIConstantValues(LMIBaseObject):
cim_obj.qualifiers["Values"].value)
values = cim_obj.qualifiers["ValueMap"].value
self._value_map = {}
+ self._value_map_inv = {}
+ # Fill two dictionaries for bidirectional access to constant values.
for i in range(0, len(keys)):
try:
- self._value_map[keys[i]] = lmi_cast_to_cim(self._cast_type, values[i])
+ key = keys[i]
+ val = lmi_cast_to_cim(self._cast_type, values[i])
+ self._value_map[key] = val
+ self._value_map_inv[val] = key
except ValueError, e:
# Can not cast such value as interval. Can be found in
# DMTFReserved, VendorReserved values.
@@ -102,6 +107,15 @@ class LMIConstantValues(LMIBaseObject):
"""
return getattr(self, value_name)
+ def value_name(self, value):
+ """
+ Returns string representing constant value.
+
+ Arguments:
+ value -- numeric constant value
+ """
+ return self._value_map_inv[value]
+
class LMIConstantValuesParamProp(LMIConstantValues):
"""
Derived class used for constant values of CIMProperty and CIMParameter.