Package org.apache.commons.io.output

# Class DemuxOutputStream

java.lang.Object
java.io.OutputStream
org.apache.commons.io.output.DemuxOutputStream

All Implemented Interfaces:
  `Closeable`, `Flushable`, `AutoCloseable`

public class DemuxOutputStream extends OutputStream
Forwards data to a stream that has been associated with this thread.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DemuxOutputStream()`
  Construct a new instance.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `OutputStream`
  `bindStream(OutputStream output)`
  Binds the specified stream to the current thread.
  `void`
  `close()`
  Closes stream associated with current thread.
  `void`
  `flush()`
  Flushes stream associated with current thread.
  `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`

- ## Constructor Details

  - ### DemuxOutputStream

    public DemuxOutputStream()
    Construct a new instance.

- ## Method Details

  - ### bindStream

    public OutputStream bindStream(OutputStream output)
    Binds 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 IOException
    Closes stream associated with current thread.
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Overrides:
      `close` in class `OutputStream`
    Throws:
      `IOException` - if an error occurs

  - ### flush

    public void flush() throws IOException
    Flushes stream associated with current thread.
    Specified by:
      `flush` in interface `Flushable`
    Overrides:
      `flush` in class `OutputStream`
    Throws:
      `IOException` - if an error occurs

  - ### write

    public void write(int ch) throws IOException
    Writes byte to stream associated with current thread.
    Specified by:
      `write` in class `OutputStream`
    Parameters:
      `ch` - the byte to write to stream
    Throws:
      `IOException` - if an error occurs