Class LoggerPrintStream

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

    public class LoggerPrintStream
    extends java.io.PrintStream
    Logs each line written to a pre-defined level. Can also be configured with a Marker. This class provides an interface that follows the PrintStream methods in spirit, but doesn't require output to any external stream. This class should not be used as a stream for an underlying logger unless it's being used as a bridge. Otherwise, infinite loops may occur!
    Since:
    2.1
    • Field Detail

      • FQCN

        private static final java.lang.String FQCN
    • Constructor Detail

      • LoggerPrintStream

        protected LoggerPrintStream​(ExtendedLogger logger,
                                    boolean autoFlush,
                                    java.nio.charset.Charset charset,
                                    java.lang.String fqcn,
                                    Level level,
                                    Marker marker)
                             throws java.io.UnsupportedEncodingException
        Throws:
        java.io.UnsupportedEncodingException
      • LoggerPrintStream

        protected LoggerPrintStream​(java.io.OutputStream out,
                                    boolean autoFlush,
                                    java.nio.charset.Charset charset,
                                    ExtendedLogger logger,
                                    java.lang.String fqcn,
                                    Level level,
                                    Marker marker)
                             throws java.io.UnsupportedEncodingException
        Throws:
        java.io.UnsupportedEncodingException
    • Method Detail

      • ensureNonNull

        private static java.nio.charset.Charset ensureNonNull​(java.nio.charset.Charset charset)
      • append

        public LoggerPrintStream append​(char c)
        Specified by:
        append in interface java.lang.Appendable
        Overrides:
        append in class java.io.PrintStream
      • append

        public LoggerPrintStream append​(java.lang.CharSequence csq)
        Specified by:
        append in interface java.lang.Appendable
        Overrides:
        append in class java.io.PrintStream
      • append

        public LoggerPrintStream append​(java.lang.CharSequence csq,
                                        int start,
                                        int end)
        Specified by:
        append in interface java.lang.Appendable
        Overrides:
        append in class java.io.PrintStream
      • checkError

        public boolean checkError()
        Overrides:
        checkError in class java.io.PrintStream
      • 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
      • format

        public LoggerPrintStream format​(java.util.Locale l,
                                        java.lang.String format,
                                        java.lang.Object... args)
        Overrides:
        format in class java.io.PrintStream
      • format

        public LoggerPrintStream format​(java.lang.String format,
                                        java.lang.Object... args)
        Overrides:
        format in class java.io.PrintStream
      • print

        public void print​(boolean b)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(char c)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(char[] s)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(double d)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(float f)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(int i)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(long l)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(java.lang.Object obj)
        Overrides:
        print in class java.io.PrintStream
      • print

        public void print​(java.lang.String s)
        Overrides:
        print in class java.io.PrintStream
      • printf

        public LoggerPrintStream printf​(java.util.Locale l,
                                        java.lang.String format,
                                        java.lang.Object... args)
        Overrides:
        printf in class java.io.PrintStream
      • printf

        public LoggerPrintStream printf​(java.lang.String format,
                                        java.lang.Object... args)
        Overrides:
        printf in class java.io.PrintStream
      • println

        public void println()
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(boolean x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(char x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(char[] x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(double x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(float x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(int x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(long x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(java.lang.Object x)
        Overrides:
        println in class java.io.PrintStream
      • println

        public void println​(java.lang.String x)
        Overrides:
        println in class java.io.PrintStream
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • write

        public void write​(byte[] b)
                   throws java.io.IOException
        Overrides:
        write in class java.io.FilterOutputStream
        Throws:
        java.io.IOException
      • 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