Class CircularBufferInputStream

java.lang.Object
java.io.InputStream
org.apache.commons.io.input.buffer.CircularBufferInputStream
All Implemented Interfaces:
Closeable, AutoCloseable
Direct Known Subclasses:
PeekableInputStream

public class CircularBufferInputStream extends InputStream
Implementation of a buffered input stream, which is internally based on the CircularByteBuffer. Unlike the BufferedInputStream, this one doesn't need to reallocate byte arrays internally.
  • Field Details

    • in

      protected final InputStream in
    • buffer

      protected final CircularByteBuffer buffer
    • bufferSize

      protected final int bufferSize
    • eofSeen

      private boolean eofSeen
  • Constructor Details

    • CircularBufferInputStream

      public CircularBufferInputStream(InputStream inputStream, int bufferSize)
      Creates a new instance, which filters the given input stream, and uses the given buffer size.
      Parameters:
      inputStream - The input stream, which is being buffered.
      bufferSize - The size of the CircularByteBuffer, which is used internally.
    • CircularBufferInputStream

      public CircularBufferInputStream(InputStream inputStream)
      Creates a new instance, which filters the given input stream, and uses a reasonable default buffer size (IOUtils.DEFAULT_BUFFER_SIZE).
      Parameters:
      inputStream - The input stream, which is being buffered.
  • Method Details