onEvent method

  1. @override
void onEvent(
  1. PipeEvent event
)
override

Implementation

@override
void onEvent(PipeEvent event) {
  switch (event) {
    case RunStarted started:
      for (String line in PipeFormat.title(started.info)) {
        _out.writeln(_color(line, Mansil.bold));
      }
      _out.writeln();
    case StepStarted started:
      _printStageTitle(started.step);
      _out.writeln("${_indent(started.step)}${PipeFormat.symbol(started.step, useColor: useColor)} ${started.step.step.label}");
    case StepStatusChanged changed:
      _out.writeln(_color("${_indent(changed.step)}    ${changed.text}", Mansil.dim));
    case StepWarned warned:
      _out.writeln(_color("${_indent(warned.step)}    ! ${warned.message}", Mansil.yellowFg));
    case CommandStarted started:
      if (printOutput) {
        _out.writeln(_color("${_indent(started.step)}    \$ ${started.commandLine}", Mansil.dim));
      }
    case CommandOutput output:
      if (printOutput) {
        _out.writeln("${_indent(output.step)}    ${PipeFormat.terminalLine(output.line)}");
      }
    case StepFinished finished:
      _printStageTitle(finished.step);
      _printFinished(finished.step);
    case RunFinished finished:
      _out.writeln();
      _out.writeln(
        finished.result.hasFailures ? _color("X ${PipeFormat.summary(finished.result)}", Mansil.redFg) : _color("√ ${PipeFormat.summary(finished.result)}", Mansil.greenFg),
      );
      if (logFilePath != null) {
        _out.writeln("Log: $logFilePath");
      }
    case StepLogged():
    case CommandFinished():
      // Only meant for the log file
      break;
  }
}