org.apache.commons.io.output

## Class ClosedOutputStream

- java.lang.Object
- - java.io.OutputStream
  - - org.apache.commons.io.output.ClosedOutputStream

- All Implemented Interfaces:
    Closeable, Flushable, AutoCloseable

      public class ClosedOutputStream
      extends OutputStream

  Throws an IOException on all attempts to write to the stream.

  Typically uses of this class include testing for corner cases in methods that accept an output stream and acting as a sentinel value instead of a `null` output stream.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static ClosedOutputStream` | `INSTANCE` The singleton instance.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ClosedOutputStream()` Construct a new instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `flush()` Throws an `IOException` to indicate that the stream is closed.
    `void` | `write(byte[] b, int off, int len)` Throws an `IOException` to indicate that the stream is closed.
    `void` | `write(int b)` Throws an `IOException` to indicate that the stream is closed.

    - ### Methods inherited from class java.io.OutputStream

      `close, write`

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

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

- - ### Field Detail

    - #### INSTANCE

          public static final ClosedOutputStream INSTANCE

      The singleton instance.

  - ### Constructor Detail

    - #### ClosedOutputStream

          public ClosedOutputStream()

      Construct a new instance.

  - ### Method Detail

    - #### flush

          public void flush()
                     throws IOException

      Throws an `IOException` to indicate that the stream is closed.
      Specified by:
        `flush` in interface `Flushable`
      Overrides:
        `flush` in class `OutputStream`
      Throws:
        `IOException` - always thrown

    - #### write

          public void write(byte[] b,
                            int off,
                            int len)
                     throws IOException

      Throws an `IOException` to indicate that the stream is closed.
      Overrides:
        `write` in class `OutputStream`
      Parameters:
        `b` - ignored
        `off` - ignored
        `len` - ignored
      Throws:
        `IOException` - always thrown

    - #### write

          public void write(int b)
                     throws IOException

      Throws an `IOException` to indicate that the stream is closed.
      Specified by:
        `write` in class `OutputStream`
      Parameters:
        `b` - ignored
      Throws:
        `IOException` - always thrown