def dict(self): status = self.getStatus() return {"name": self.name, "status": status, "active": self.isActive(status), "done": self.isDone(status), "after": [t.name for t in self.afterSet], "before": [t.name for t in self.beforeSet], "output": self.getOutput(), "result": "%s" % self.getResult(), "started": util.datestr(self.started) if self.started else None, "finished": util.datestr(self.finished) if self.finished else None, "duration": util.timediffstr(self.started, self.finished if self.finished else time.time()) if self.started else None, }
def dict(self, details): status = self.getStatus() res = {"id": self.id, "status": status, "active": self.isActive(status), "done": self.isDone(status), "name": self.name, "started": util.datestr(self.started) if self.started else None, "finished": util.datestr(self.finished) if self.finished else None, "duration": util.timediffstr(self.started, self.finished if self.finished else time.time()) if self.started else None, "tasks":[], "tasks_total": len(self.tasks)} active = 0 done = 0 for task in self.tasks: d = task.dict() if details: res["tasks"].append(d) if d["active"]: active += 1 if d["done"]: done += 1 res["tasks_active"] = active res["tasks_done"] = done return res