diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/runtime/ExperimentalEventHandler.java | 45 |
1 files changed, 35 insertions, 10 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalEventHandler.java b/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalEventHandler.java index 1c86ac0d14..c25768387f 100644 --- a/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalEventHandler.java +++ b/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalEventHandler.java @@ -75,6 +75,20 @@ public class ExperimentalEventHandler extends BlazeCommandEventHandler { stream.write(new byte[] {10, 13}); stream.flush(); break; + case ERROR: + case WARNING: + case INFO: + setEventKindColor(event.getKind()); + terminal.writeString(event.getKind() + ": "); + terminal.resetTerminal(); + if (event.getLocation() != null) { + terminal.writeString(event.getLocation() + ": "); + } + if (event.getMessage() != null) { + terminal.writeString(event.getMessage()); + } + crlf(); + break; } } addProgressBar(); @@ -84,6 +98,21 @@ public class ExperimentalEventHandler extends BlazeCommandEventHandler { } } + private void setEventKindColor(EventKind kind) throws IOException { + switch (kind) { + case ERROR: + terminal.textRed(); + terminal.textBold(); + break; + case WARNING: + terminal.textMagenta(); + break; + case INFO: + terminal.textGreen(); + break; + } + } + @Subscribe public void buildStarted(BuildStartingEvent event) { stateTracker.buildStarted(event); @@ -93,16 +122,7 @@ public class ExperimentalEventHandler extends BlazeCommandEventHandler { @Subscribe public void loadingComplete(LoadingPhaseCompleteEvent event) { stateTracker.loadingComplete(event); - try { - clearProgressBar(); - terminal.textGreen(); - terminal.writeString("INFO:"); - terminal.resetTerminal(); - terminal.writeString(" " + event.getTargets().size() + " Target(s)\n"); - addProgressBar(); - } catch (IOException e) { - LOG.warning("IO Error writing to output stream: " + e); - } + refresh(); } @Subscribe @@ -156,6 +176,11 @@ public class ExperimentalEventHandler extends BlazeCommandEventHandler { numLinesProgressBar = 0; } + private void crlf() throws IOException { + terminal.cr(); + terminal.writeString("\n"); + } + private void addProgressBar() throws IOException { LineCountingAnsiTerminalWriter terminalWriter = new LineCountingAnsiTerminalWriter(terminal); stateTracker.writeProgressBar(terminalWriter); |