Class KeepAliveOutputStream

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

    public class KeepAliveOutputStream
    extends java.io.FilterOutputStream
    Class that can be used to wrap System.out and System.err without getting anxious about any client closing the stream.

    In code-language it means that it is not necessary to do:

     if (out != System.out && out != System.err) {
       out.close();
     }
     
    • Field Summary

      • Fields inherited from class java.io.FilterOutputStream

        out
    • Constructor Summary

      Constructors 
      Constructor Description
      KeepAliveOutputStream​(java.io.OutputStream out)
      Constructor of KeepAliveOutputStream.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      This method does nothing.
      static java.io.PrintStream wrapSystemErr()
      Convenience factory method that returns a non-closing PrintStream around System.err.
      static java.io.PrintStream wrapSystemOut()
      Convenience factory method that returns a non-closing PrintStream around System.out.
      • Methods inherited from class java.io.FilterOutputStream

        flush, write, write, 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
    • Constructor Detail

      • KeepAliveOutputStream

        public KeepAliveOutputStream​(java.io.OutputStream out)
        Constructor of KeepAliveOutputStream.
        Parameters:
        out - an OutputStream value, it should be standard output.
    • Method Detail

      • close

        public void close()
                   throws java.io.IOException
        This method does nothing.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.FilterOutputStream
        Throws:
        java.io.IOException - as we are overriding FilterOutputStream.
      • wrapSystemOut

        public static java.io.PrintStream wrapSystemOut()
        Convenience factory method that returns a non-closing PrintStream around System.out.
        Returns:
        PrintStream
        Since:
        Ant 1.8.0
      • wrapSystemErr

        public static java.io.PrintStream wrapSystemErr()
        Convenience factory method that returns a non-closing PrintStream around System.err.
        Returns:
        PrintStream
        Since:
        Ant 1.8.0