isFinished; } public function isSuccess() { return $this->isFinished && $this->isSuccess; } public function getResult() { return $this->result; } public function getErrorMessage() { return $this->error; } /** * Marks the flow as successful and sets the result. * * @param mixed|null $result */ protected function succeed($result = null) { $this->isFinished = true; $this->isSuccess = true; $this->result = $result; } /** * Marks the flow as failed and sets the error message. * * @param string $error */ protected function fail($error = '') { $this->isFinished = true; $this->isSuccess = false; $this->error = $error; } }