/** * @param ProcessId $processId * @param TaskListPosition $parentTaskListPosition * @param TaskList $taskList * @param array $config * @param bool $syncLogMessages * @throws \InvalidArgumentException * @return static */ public static function asSubProcess(ProcessId $processId, TaskListPosition $parentTaskListPosition, TaskList $taskList, array $config, $syncLogMessages) { if (!is_bool($syncLogMessages)) { throw new \InvalidArgumentException("Argument syncLogMessages must be of type boolean"); } $instance = self::occur($processId->toString(), ['config' => $config, 'parent_task_list_Position' => $parentTaskListPosition->toString(), 'task_list' => $taskList->getArrayCopy(), 'sync_log_messages' => $syncLogMessages]); $instance->processId = $processId; $instance->parentTaskListPosition = $parentTaskListPosition; return $instance; }
/** * @param TaskList $newTaskList * @param ProcessId $processId * @return TaskListWasRescheduled */ public static function with(TaskList $newTaskList, ProcessId $processId) { $event = self::occur($processId->toString(), ['new_task_list' => $newTaskList->getArrayCopy()]); $event->newTaskList = $newTaskList; return $event; }