Commit 600f1402 authored by wenjie.zheng's avatar wenjie.zheng

Worklist.py: improve function getVarMatch.

parent 11241fd9
...@@ -131,7 +131,7 @@ class Worklist(IdAsReferenceMixin("worklist_", "prefix"), XMLObject): ...@@ -131,7 +131,7 @@ class Worklist(IdAsReferenceMixin("worklist_", "prefix"), XMLObject):
def getVarMatch(self, id): def getVarMatch(self, id):
""" return value of matched keys""" """ return value of matched keys"""
#self.var_matches = {} self.var_matches = {}
matches = None matches = None
matches_ref_list = [] matches_ref_list = []
if id == 'portal_type': if id == 'portal_type':
...@@ -141,31 +141,27 @@ class Worklist(IdAsReferenceMixin("worklist_", "prefix"), XMLObject): ...@@ -141,31 +141,27 @@ class Worklist(IdAsReferenceMixin("worklist_", "prefix"), XMLObject):
else: else:
v = [ var.strip() for var in self.matched_portal_type ] v = [ var.strip() for var in self.matched_portal_type ]
matches = tuple(v) matches = tuple(v)
elif id == 'validation_state':
matches_id_list = self.getMatchedValidationStateList() if id in ['validation_state', 'simulation_state']:
for state_id in matches_id_list: if id == 'validation_state':
matches_ref_list.append(self.getParent()._getOb(state_id).getReference()) matches_id_list = self.getMatchedValidationStateList()
matches = tuple(matches_ref_list) elif id == 'simulation_state':
elif id == 'simulation_state': matches_id_list = self.getMatchedSimulationStateList()
matches_id_list = self.getMatchedSimulationStateList()
for state_id in matches_id_list: for state_id in matches_id_list:
matches_ref_list.append(self.getParent()._getOb(state_id).getReference()) matches_ref_list.append(self.getParent()._getOb(state_id).getReference())
matches = tuple(matches_ref_list) matches = matches_ref_list
elif id == 'causality_state':
if id == 'causality_state':
matches_id = self.getMatchedCausalityState() matches_id = self.getMatchedCausalityState()
if matches_id is None: if matches_id is None:
matches_id = '' matches_id = ''
matches_ref_list.append(matches_id) matches_ref_list.append(matches_id)
matches = tuple(matches_ref_list) matches = matches_ref_list
else:
raise NotImplementedError ("Cataloged variable '%s' matching error in Worklist.py"%id)
if matches is not None: if matches is not None:
"""
if not isinstance(matches, (tuple, Expression)): if not isinstance(matches, (tuple, Expression)):
# Old version, convert it. # Old version, convert it.
matches = (matches,) matches = (matches,)
self.var_matches[id] = str(matches)
"""
return matches return matches
else: else:
return () return ()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment