Class TeeOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.Appendable, java.lang.AutoCloseable

    public final class TeeOutputStream
    extends java.io.PrintStream
    Behaves like the 'tee' command, sends output to both actual std stream and a log
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()  
      void flush()  
      private void flushLog()  
      private void flushLog​(boolean always)  
      private void flushLogAtEndOfLine()  
      void write​(byte[] b, int off, int len)  
      void write​(int b)  
      • Methods inherited from class java.io.PrintStream

        append, append, append, checkError, clearError, format, format, print, print, print, print, print, print, print, print, print, printf, printf, println, println, println, println, println, println, println, println, println, println, setError
      • Methods inherited from class java.io.FilterOutputStream

        write
      • Methods inherited from class java.io.OutputStream

        nullOutputStream
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LINE_SEPARATOR

        private static final java.lang.String LINE_SEPARATOR
      • byteArrayOutputStream

        private final java.io.ByteArrayOutputStream byteArrayOutputStream
    • Constructor Detail

      • TeeOutputStream

        public TeeOutputStream​(java.io.PrintStream stdStream,
                               boolean isError)
      • TeeOutputStream

        TeeOutputStream​(java.io.PrintStream stdStream,
                        boolean isError,
                        BasicOutputController outputController)
    • Method Detail

      • close

        public void close()
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.PrintStream
      • flush

        public void flush()
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.PrintStream
      • write

        public void write​(byte[] b,
                          int off,
                          int len)
        Overrides:
        write in class java.io.PrintStream
      • write

        public void write​(int b)
        Overrides:
        write in class java.io.PrintStream
      • flushLog

        private void flushLog()
      • flushLogAtEndOfLine

        private void flushLogAtEndOfLine()
      • flushLog

        private void flushLog​(boolean always)