Class StaticBufferedInputStream

java.lang.Object
java.io.InputStream
de.undercouch.bson4jackson.io.StaticBufferedInputStream
All Implemented Interfaces:
Closeable, AutoCloseable

public class StaticBufferedInputStream extends InputStream
Works like BufferedInputStream, but is not thread-safe and also uses a a re-usable static buffer provided by StaticBuffers to achieve better performance
  • Field Details

    • BUFFER_KEY

      protected static final StaticBuffers.Key BUFFER_KEY
      A unique key for the re-usable buffer
    • _staticBuffers

      protected final StaticBuffers _staticBuffers
      Provides re-usable buffers
    • _byteBuffer

      protected final ByteBuffer _byteBuffer
      A re-usable buffer
    • _raw

      protected final byte[] _raw
      The raw re-usable buffer
    • _in

      protected final InputStream _in
      The original unbuffered input stream
    • _pos

      protected int _pos
      The current read position
    • _count

      protected int _count
      The number of bytes in the buffer
    • _mark

      protected int _mark
      The current marked position. -1 means no mark.
  • Constructor Details

    • StaticBufferedInputStream

      public StaticBufferedInputStream(InputStream in)
      Creates a new buffered input stream
      Parameters:
      in - the original unbuffered input stream
    • StaticBufferedInputStream

      public StaticBufferedInputStream(InputStream in, int size)
      Creates a new buffered input stream
      Parameters:
      in - the original unbuffered input stream
      size - the minimum buffer size
  • Method Details