org.apache.commons.io.input

## Class DemuxInputStream

- java.lang.Object
- - java.io.InputStream
  - - org.apache.commons.io.input.DemuxInputStream

All Implemented Interfaces:
  Closeable, AutoCloseable

    public class DemuxInputStream
    extends InputStream

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

### Constructor Summary

Constructors
Constructor and Description
`DemuxInputStream()`

### Method Summary

All Methods Instance Methods Concrete Methods
`InputStream` `bindStream(InputStream input)` Bind the specified stream to the current thread.
`void` `close()` Closes stream associated with current thread.
`int` `read()` Read byte from stream associated with current thread.

### Methods inherited from class java.io.InputStream

`available, mark, markSupported, read, read, reset, skip`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### DemuxInputStream

    public DemuxInputStream()

### Method Detail

#### bindStream

    public InputStream bindStream(InputStream input)

Bind the specified stream to the current thread.

Parameters:
  `input` - the stream to bind
Returns:
  the InputStream that was previously active

#### close

    public void close()
               throws IOException

Closes stream associated with current thread.

Specified by:
  `close` in interface `Closeable`
Specified by:
  `close` in interface `AutoCloseable`
Overrides:
  `close` in class `InputStream`
Throws:
  `IOException` - if an error occurs

#### read

    public int read()
             throws IOException

Read byte from stream associated with current thread.

Specified by:
  `read` in class `InputStream`
Returns:
  the byte read from stream
Throws:
  `IOException` - if an error occurs