Class ClosedInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class ClosedInputStream
    extends java.io.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
    • Constructor Summary

      Constructors 
      Constructor Description
      ClosedInputStream()
      Construct a new instance.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) static java.io.InputStream ifNull​(java.io.InputStream in)
      Returns INSTANCE if the given InputStream is null, otherwise returns the given input stream.
      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, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • 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.
        The singleton instance.
    • Constructor Detail

      • ClosedInputStream

        public ClosedInputStream()
        Construct a new instance.
    • Method Detail

      • ifNull

        static java.io.InputStream ifNull​(java.io.InputStream in)
        Returns INSTANCE if the given InputStream is null, otherwise returns the given input stream.
        Parameters:
        in - the InputStream to test.
        Returns:
        INSTANCE if the given InputStream is null, otherwise returns the given input stream.
      • read

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

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