diff --git a/daliuge-translator/dlg/dropmake/pg_generator.py b/daliuge-translator/dlg/dropmake/pg_generator.py index 54db7a8a8..ae8d766bc 100644 --- a/daliuge-translator/dlg/dropmake/pg_generator.py +++ b/daliuge-translator/dlg/dropmake/pg_generator.py @@ -300,19 +300,32 @@ def is_start_listener(self): ) def is_group_start(self): - return ( - self.has_group() - and "group_start" in self.jd - and 1 == int(self.jd["group_start"]) - ) + result = False + if self.has_group() \ + and "group_start" in self.jd: + gs = self.jd["group_start"] + if type(gs) == type(True): + result = gs + elif type(gs == type(1)): + result = (1 == gs) + elif type(gs) == type("s"): + result = gs.lower() in ("true") + return result - def is_group_end(self): - return ( - self.has_group() - and "group_end" in self.jd - and 1 == int(self.jd["group_end"]) - ) + def is_group_end(self): + result = False + if self.has_group() \ + and "group_end" in self.jd: + ge = self.jd["group_end"] + if type(ge) == type(True): + result = ge + elif type(ge == type(1)): + result = (1 == ge) + elif type(ge) == type("s"): + result = ge.lower() in ("true") + return result + def is_group(self): return self._isgrp