use of org.gradle.internal.nativeintegration.console.ConsoleDetector in project gradle by gradle.
the class Pmd method stdOutIsAttachedToTerminal.
public boolean stdOutIsAttachedToTerminal() {
ConsoleDetector consoleDetector = NativeServices.getInstance().get(ConsoleDetector.class);
ConsoleMetaData consoleMetaData = consoleDetector.getConsole();
return consoleMetaData != null && consoleMetaData.isStdOut();
}
use of org.gradle.internal.nativeintegration.console.ConsoleDetector in project gradle by gradle.
the class ConsoleConfigureAction method execute.
public void execute(OutputEventRenderer renderer, ConsoleOutput consoleOutput) {
if (consoleOutput == ConsoleOutput.Plain) {
return;
}
ConsoleDetector consoleDetector = NativeServices.getInstance().get(ConsoleDetector.class);
ConsoleMetaData consoleMetaData = consoleDetector.getConsole();
boolean force = false;
if (consoleMetaData == null) {
if (consoleOutput == ConsoleOutput.Auto) {
return;
}
assert consoleOutput == ConsoleOutput.Rich;
consoleMetaData = new FallbackConsoleMetaData();
force = true;
}
boolean stdOutIsTerminal = consoleMetaData.isStdOut();
boolean stdErrIsTerminal = consoleMetaData.isStdErr();
int numWorkersToDisplay = ConsoleLayoutCalculator.calculateNumWorkersForConsoleDisplay(consoleMetaData);
if (stdOutIsTerminal) {
OutputStream originalStdOut = renderer.getOriginalStdOut();
OutputStreamWriter outStr = new OutputStreamWriter(force ? originalStdOut : AnsiConsoleUtil.wrapOutputStream(originalStdOut));
Console console = new AnsiConsole(outStr, outStr, renderer.getColourMap(), consoleMetaData, numWorkersToDisplay, force);
renderer.addConsole(console, true, stdErrIsTerminal, consoleMetaData);
} else if (stdErrIsTerminal) {
// Only stderr is connected to a terminal
OutputStream originalStdErr = renderer.getOriginalStdErr();
OutputStreamWriter errStr = new OutputStreamWriter(force ? originalStdErr : AnsiConsoleUtil.wrapOutputStream(originalStdErr));
Console console = new AnsiConsole(errStr, errStr, renderer.getColourMap(), consoleMetaData, numWorkersToDisplay, force);
renderer.addConsole(console, false, true, consoleMetaData);
}
}
use of org.gradle.internal.nativeintegration.console.ConsoleDetector in project gradle by gradle.
the class ConsoleConfigureAction method configureRichConsole.
private static void configureRichConsole(OutputEventRenderer renderer, boolean verbose) {
ConsoleDetector consoleDetector = NativeServices.getInstance().get(ConsoleDetector.class);
ConsoleMetaData consoleMetaData = consoleDetector.getConsole();
configureRichConsole(renderer, consoleMetaData, consoleMetaData == null, verbose);
}
use of org.gradle.internal.nativeintegration.console.ConsoleDetector in project gradle by gradle.
the class ConsoleConfigureAction method configureAutoConsole.
private static void configureAutoConsole(OutputEventRenderer renderer) {
ConsoleDetector consoleDetector = NativeServices.getInstance().get(ConsoleDetector.class);
ConsoleMetaData consoleMetaData = consoleDetector.getConsole();
if (consoleMetaData != null) {
configureRichConsole(renderer, consoleMetaData, false, false);
} else {
configurePlainConsole(renderer);
}
}
Aggregations