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
Constructor and Description
`TeeOutputStream(java.io.OutputStream left, java.io.OutputStream right)` Constructor for TeeOutputStream.

### Method Summary

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.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.io.Closeable`
Specified by:
  `close` in interface `java.lang.AutoCloseable`
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.