org.apache.tools.ant.util
Class KeepAliveOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by java.io.FilterOutputStream
          extended by org.apache.tools.ant.util.KeepAliveOutputStream
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable

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
KeepAliveOutputStream(java.io.OutputStream out)
          Constructor of KeepAliveOutputStream.
 
Method Summary
 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.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.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.

Since:
Ant 1.8.0

wrapSystemErr

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

Since:
Ant 1.8.0