def __call__(self, h_j): msg("Calling:\t%s" % (str(self),)) # Get the handler linked to the 'self' job handler = h_j.obj1_lookup(self) # onstart_job event handler.onstart_job() self.runner() if len(self.children) > 0: # onstart_children event handler.onstart_children() for child in self.children: try: # onstart_child event handler.onstart_child() child(h_j) # onstop_child event handler.onstop_child() except JobException as exc: exc_handled = self.exc_handler(exc) if (exc_handled is True) or (not exc_handled is None): raise exc_handled # onstop_children event handler.onstop_children() # onstop_job event handler.onstop_job()
def root_runner(self): msg("Root job executed")