def __init__( self, task: Task, state_handlers: Iterable[Callable] = None, flow_result: Result = None, ): self.context = prefect.context.to_dict() self.task = task # Use result from task over the one provided off the parent Flow object if task.result: self.result = task.result else: self.result = Result().copy() if flow_result is None else flow_result.copy() self.flow_result = flow_result super().__init__(state_handlers=state_handlers)
def __init__( self, task: Task, state_handlers: Iterable[Callable] = None, result: Result = None, default_result: Result = None, ): self.context = prefect.context.to_dict() self.task = task # if the result was provided off the parent Flow object # we want to use the task's target as the target location if task.result: self.result = task.result else: self.result = Result().copy() if result is None else result.copy() if self.task.target: self.result.location = self.task.target self.default_result = default_result or Result() super().__init__(state_handlers=state_handlers)