exitCode = $exitCode; parent::__construct($message, $data); } /** * @param string $message * @param array $data * * @return \Robo\ResultData */ public static function message($message, $data = []) { return new self(self::EXITCODE_OK, $message, $data); } /** * @param string $message * @param array $data * * @return \Robo\ResultData */ public static function cancelled($message = '', $data = []) { return new ResultData(self::EXITCODE_USER_CANCEL, $message, $data); } /** * @return int */ public function getExitCode() { return $this->exitCode; } /** * @return null|string */ public function getOutputData() { if (!empty($this->message) && !isset($this['already-printed']) && isset($this['provide-outputdata'])) { return $this->message; } } /** * Indicate that the message in this data has already been displayed. */ public function alreadyPrinted() { $this['already-printed'] = true; } /** * Opt-in to providing the result message as the output data */ public function provideOutputdata() { $this['provide-outputdata'] = true; } /** * @return bool */ public function wasSuccessful() { return $this->exitCode === self::EXITCODE_OK; } /** * @return bool */ public function wasCancelled() { return $this->exitCode == self::EXITCODE_USER_CANCEL; } }