/** * Hook method that allows controlling whether or not output streams should be wrapped by * AnsiConsole.wrapOutputStream. Unfortunately, Eclipse consoles will look to the AnsiWrap * like they do not understand ansi, even if we were to implement support in Eclipse to' * handle it and the wrapped stream will not pass the ansi chars on to Eclipse). * * @param out The output stream * @return The output stream wrapped an as {@link AnsiConsole} */ protected OutputStream ansiWrap(OutputStream out) { return AnsiConsole.wrapOutputStream(out); }
private static boolean detectAnsiSupport() { OutputStream out = AnsiConsole.wrapOutputStream(new ByteArrayOutputStream()); try { out.close(); } catch (Exception e) { // ignore; } return out instanceof WindowsAnsiOutputStream; }
/** * Hook method that allows controlling whether or not output streams should be wrapped by * AnsiConsole.wrapOutputStream. Unfortunately, Eclipse consoles will look to the AnsiWrap * like they do not understand ansi, even if we were to implement support in Eclipse to' * handle it and the wrapped stream will not pass the ansi chars on to Eclipse). */ protected OutputStream ansiWrap(OutputStream out) { return AnsiConsole.wrapOutputStream(out); }
@Deprecated public static OutputStream wrapErrorOutputStream(final OutputStream stream) { try { return wrapOutputStream(stream, STDERR_FILENO); } catch (Throwable ignore) { return wrapOutputStream(stream, 2); } }
@Deprecated public static OutputStream wrapOutputStream(final OutputStream stream) { try { return wrapOutputStream(stream, STDOUT_FILENO); } catch (Throwable ignore) { return wrapOutputStream(stream, 1); } }
private static PrintStream wrap(PrintStream stream) { OutputStream o = AnsiConsole.wrapOutputStream(stream); if (o instanceof PrintStream) { return (PrintStream) o; } else { return new PrintStream(o); } }
private static PrintStream wrap(PrintStream stream) { OutputStream o = AnsiConsole.wrapOutputStream(stream); if (o instanceof PrintStream) { return ((PrintStream) o); } else { return new PrintStream(o); } }
private static PrintStream wrap(PrintStream stream) { OutputStream o = AnsiConsole.wrapOutputStream(stream); if (o instanceof PrintStream) { return ((PrintStream) o); } else { return new PrintStream(o); } }
private static PrintStream wrap(PrintStream stream) { OutputStream o = AnsiConsole.wrapOutputStream(stream); if (o instanceof PrintStream) { return ((PrintStream) o); } else { return new PrintStream(o); } }
private static PrintStream wrap(final PrintStream stream) { assert stream != null; return new PrintStream(AnsiConsole.wrapOutputStream(stream)); }
private static boolean detectAnsiSupport() { OutputStream out = AnsiConsole.wrapOutputStream(new ByteArrayOutputStream()); try { out.close(); } catch (Exception e) { // ignore; } return out instanceof WindowsAnsiOutputStream; }
private static boolean detectAnsiSupport() { OutputStream out = AnsiConsole.wrapOutputStream(new ByteArrayOutputStream()); try { out.close(); } catch (Exception e) { // ignore; } return out instanceof WindowsAnsiOutputStream; }
private static boolean detectAnsiSupport() { OutputStream out = AnsiConsole.wrapOutputStream(new ByteArrayOutputStream()); try { out.close(); } catch (Exception e) { // ignore; } return out instanceof WindowsAnsiOutputStream; }
public static boolean checkAnsiSupport() { OutputStream dummy = new ByteArrayOutputStream(); OutputStream ansiout = AnsiConsole.wrapOutputStream(dummy); try { dummy.close(); ansiout.close(); } catch (IOException ignore) { } return (ansiout instanceof WindowsAnsiOutputStream); }
public JlEditConsole() { this.in = System.in; this.out = new PrintStream(new BufferedOutputStream(wrapOutputStream(System.out), 1024), false); this.err = new PrintStream(new BufferedOutputStream(wrapOutputStream(System.err), 1024), false); }
protected ConsoleReader createAnsiWindowsReader() throws Exception { // Get decorated OutputStream that parses ANSI-codes final PrintStream ansiOut = (PrintStream) ClassUtils .forName(ANSI_CONSOLE_CLASSNAME, JLineShell.class.getClassLoader()).getMethod("out").invoke(null); WindowsTerminal ansiTerminal = new WindowsTerminal() { @Override public synchronized boolean isAnsiSupported() { return true; } }; ansiTerminal.init(); // Make sure to reset the original shell's colors on shutdown by closing the stream statusListener = new ShellStatusListener() { public void onShellStatusChange(final ShellStatus oldStatus, final ShellStatus newStatus) { if (newStatus.getStatus().equals(Status.SHUTTING_DOWN)) { ansiOut.close(); } } }; addShellStatusListener(statusListener); // return new ConsoleReader(new FileInputStream(FileDescriptor.in), new PrintWriter(new OutputStreamWriter( // ansiOut, // // Default to Cp850 encoding for Windows console output (ROO-439) // System.getProperty("jline.WindowsTerminal.output.encoding", "Cp850"))), null, ansiTerminal); OutputStream out = AnsiConsole.wrapOutputStream(ansiOut); return new ConsoleReader(new FileInputStream(FileDescriptor.in), out, ansiTerminal); }
@Override protected void executeInternal(String command) throws Exception { commandResult = null; // executing new command, reset previous result final ClientChannel channel = session.createChannel("exec", command.concat(NEW_LINE)); try ( InputStream in = new ByteArrayInputStream(new byte[0]); ByteArrayOutputStream out = new ByteArrayOutputStream(); ByteArrayOutputStream err = new ByteArrayOutputStream() ) { channel.setIn(in); channel.setOut(AnsiConsole.wrapOutputStream(out)); channel.setErr(AnsiConsole.wrapOutputStream(err)); channel.open(); channel.waitFor(ClientChannel.CLOSED, 0); out.writeTo(System.out); err.writeTo(System.err); commandResult = out.toString(); final boolean isError = (channel.getExitStatus() != null && channel.getExitStatus() != 0); if (isError) { log.error(commandResult); throw new IllegalArgumentException(String.format("Operation '%s' failed", command)); } } finally { channel.close(true); } }
} else { outputStream = AnsiConsole.wrapOutputStream(printStream);
final ByteArrayOutputStream sout = new ByteArrayOutputStream(); final ByteArrayOutputStream serr = new ByteArrayOutputStream(); channel.setOut( AnsiConsole.wrapOutputStream(sout)); channel.setErr( AnsiConsole.wrapOutputStream(serr)); channel.open(); channel.waitFor(EnumSet.of(ClientChannelEvent.CLOSED), 0);
final OutputStream ansiOut = AnsiConsole.wrapOutputStream(outputStream);