def addTask(self, wmTask): """ _addTask_ Add a Task instance either naked or wrapped in a helper """ task = wmTask if isinstance(wmTask, WMTaskHelper): task = wmTask.data helper = wmTask else: helper = WMTaskHelper(wmTask) taskName = helper.name() pathName = "/%s/%s" % (self.name(), taskName) helper.setPathName(pathName) if taskName in self.listAllTaskNodes(): msg = "Duplicate task name: %s\n" % taskName msg += "Known tasks: %s\n" % self.listAllTaskNodes() raise RuntimeError, msg self.data.tasks.tasklist.append(taskName) setattr(self.data.tasks, taskName, task) return