org.apache.commons.io.output
Class DemuxOutputStream

java.lang.Object
  extended byjava.io.OutputStream
      extended byorg.apache.commons.io.output.DemuxOutputStream

public class DemuxOutputStream
extends java.io.OutputStream

Data written to this stream is forwarded to a stream that has been associated with this thread.

Version:
$Revision: 1.4 $ $Date: 2003/12/30 06:55:59 $
Author:
Peter Donald

Field Summary
private  java.lang.InheritableThreadLocal m_streams
           
 
Constructor Summary
DemuxOutputStream()
           
 
Method Summary
 java.io.OutputStream bindStream(java.io.OutputStream output)
          Bind the specified stream to the current thread.
 void close()
          Closes stream associated with current thread.
 void flush()
          Flushes stream associated with current thread.
private  java.io.OutputStream getStream()
          Utility method to retrieve stream bound to current thread (if any).
 void write(int ch)
          Writes byte to stream associated with current thread.
 
Methods inherited from class java.io.OutputStream
write, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_streams

private java.lang.InheritableThreadLocal m_streams
Constructor Detail

DemuxOutputStream

public DemuxOutputStream()
Method Detail

bindStream

public java.io.OutputStream bindStream(java.io.OutputStream output)
Bind the specified stream to the current thread.

Parameters:
output - the stream to bind
Returns:
the OutputStream that was previously active

close

public void close()
           throws java.io.IOException
Closes stream associated with current thread.

Throws:
java.io.IOException - if an error occurs

flush

public void flush()
           throws java.io.IOException
Flushes stream associated with current thread.

Throws:
java.io.IOException - if an error occurs

write

public void write(int ch)
           throws java.io.IOException
Writes byte to stream associated with current thread.

Parameters:
ch - the byte to write to stream
Throws:
java.io.IOException - if an error occurs

getStream

private java.io.OutputStream getStream()
Utility method to retrieve stream bound to current thread (if any).