Package org.apache.commons.io.input

# Class ClosedInputStream

java.lang.Object
java.io.InputStream
org.apache.commons.io.input.ClosedInputStream

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

public class ClosedInputStream extends InputStream
Always returns `IOUtils.EOF` to all attempts to read something from an input stream.

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

Since:
  1.4

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final ClosedInputStream`
  `CLOSED_INPUT_STREAM`
  Deprecated.
  Use `INSTANCE`.
  `static final ClosedInputStream`
  `INSTANCE`
  The singleton instance.

- ## Constructor Summary

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

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `read()`
  Returns -1 to indicate that the stream is closed.
  `int`
  `read(byte[] b, int off, int len)`
  Returns -1 to indicate that the stream is closed.

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

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

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

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

- ## Field Details

  - ### INSTANCE

    public static final ClosedInputStream INSTANCE
    The singleton instance.
    Since:
      2.12.0

  - ### CLOSED_INPUT_STREAM

    @Deprecated public static final ClosedInputStream CLOSED_INPUT_STREAM
    Deprecated.
    Use `INSTANCE`.
    The singleton instance.

- ## Constructor Details

  - ### ClosedInputStream

    public ClosedInputStream()
    Construct a new instance.

- ## Method Details

  - ### read

    public int read()
    Returns -1 to indicate that the stream is closed.
    Specified by:
      `read` in class `InputStream`
    Returns:
      always -1

  - ### read

    public int read(byte[] b, int off, int len) throws IOException
    Returns -1 to indicate that the stream is closed.
    Overrides:
      `read` in class `InputStream`
    Parameters:
      `b` - ignored.
      `off` - ignored.
      `len` - ignored.
    Returns:
      always -1
    Throws:
      `IOException`