Package org.apache.tools.ant.util

## Class TeeOutputStream

- java.lang.Object
- - java.io.OutputStream
  - - org.apache.tools.ant.util.TeeOutputStream

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

    public class TeeOutputStream
    extends java.io.OutputStream

A simple T-piece to replicate an output stream into two separate streams

### Constructor Summary

Constructors
`TeeOutputStream​(java.io.OutputStream left, java.io.OutputStream right)` Constructor for TeeOutputStream.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `close()` Close both output streams.
`void` `flush()` Flush both output streams.
`void` `write​(byte[] b)` Write a byte array to both output streams.
`void` `write​(byte[] b, int off, int len)` Write a byte array to both output streams.
`void` `write​(int b)` Write a byte to both output streams.

### 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

#### TeeOutputStream

    public TeeOutputStream​(java.io.OutputStream left,
                           java.io.OutputStream right)

Constructor for TeeOutputStream.

Parameters:
  `left` - one of the output streams.
  `right` - the other output stream.

### Method Detail

#### close

    public void close()
               throws java.io.IOException

Close both output streams.

Specified by:
  `close` in interface `java.lang.AutoCloseable`
Specified by:
  `close` in interface `java.io.Closeable`
Overrides:
  `close` in class `java.io.OutputStream`
Throws:
  `java.io.IOException` - on error.

#### flush

    public void flush()
               throws java.io.IOException

Flush both output streams.

Specified by:
  `flush` in interface `java.io.Flushable`
Overrides:
  `flush` in class `java.io.OutputStream`
Throws:
  `java.io.IOException` - on error

#### write

    public void write​(byte[] b)
               throws java.io.IOException

Write a byte array to both output streams.

Overrides:
  `write` in class `java.io.OutputStream`
Parameters:
  `b` - an array of bytes.
Throws:
  `java.io.IOException` - on error.

#### write

    public void write​(byte[] b,
                      int off,
                      int len)
               throws java.io.IOException

Write a byte array to both output streams.

Overrides:
  `write` in class `java.io.OutputStream`
Parameters:
  `b` - the data.
  `off` - the start offset in the data.
  `len` - the number of bytes to write.
Throws:
  `java.io.IOException` - on error.

#### write

    public void write​(int b)
               throws java.io.IOException

Write a byte to both output streams.

Specified by:
  `write` in class `java.io.OutputStream`
Parameters:
  `b` - the byte to write.
Throws:
  `java.io.IOException` - on error.