Package org.apache.lucene.store

# Class BufferedChecksumIndexInput

java.lang.Object
org.apache.lucene.store.DataInput
org.apache.lucene.store.IndexInput
org.apache.lucene.store.ChecksumIndexInput
org.apache.lucene.store.BufferedChecksumIndexInput

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`, `Cloneable`

public class BufferedChecksumIndexInput extends ChecksumIndexInput
Simple implementation of `ChecksumIndexInput` that wraps another input and delegates calls.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BufferedChecksumIndexInput(IndexInput main)`
  Creates a new BufferedChecksumIndexInput

- ## Method Summary

  Modifier and Type
  Method
  Description
  `IndexInput`
  `clone()`
  Returns a clone of this stream.
  `void`
  `close()`
  Closes the stream to further operations.
  `long`
  `getChecksum()`
  Returns the current checksum value
  `long`
  `getFilePointer()`
  Returns the current position in this file, where the next read will occur.
  `long`
  `length()`
  The number of bytes in the file.
  `byte`
  `readByte()`
  Reads and returns a single byte.
  `void`
  `readBytes(byte[] b, int offset, int len)`
  Reads a specified number of bytes into an array at the specified offset.
  `int`
  `readInt()`
  Reads four bytes and returns an int (LE byte order).
  `long`
  `readLong()`
  Reads eight bytes and returns a long (LE byte order).
  `void`
  `readLongs(long[] dst, int offset, int length)`
  Read a specified number of longs.
  `short`
  `readShort()`
  Reads two bytes and returns a short (LE byte order).
  `IndexInput`
  `slice(String sliceDescription, long offset, long length)`
  Creates a slice of this index input, with the given description, offset, and length.

  ### Methods inherited from class org.apache.lucene.store.ChecksumIndexInput

  `seek`

  ### Methods inherited from class org.apache.lucene.store.IndexInput

  `getFullSliceDescription, isLoaded, prefetch, randomAccessSlice, skipBytes, slice, toString, updateIOContext`

  ### Methods inherited from class org.apache.lucene.store.DataInput

  `readBytes, readFloats, readGroupVInt, readInts, readMapOfStrings, readSetOfStrings, readString, readVInt, readVLong, readZInt, readZLong`

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

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

- ## Constructor Details

  - ### BufferedChecksumIndexInput

    public BufferedChecksumIndexInput(IndexInput main)
    Creates a new BufferedChecksumIndexInput

- ## Method Details

  - ### readByte

    public byte readByte() throws IOException
    Description copied from class: `DataInput`
    Reads and returns a single byte.
    Specified by:
      `readByte` in class `DataInput`
    Throws:
      `IOException`
    See Also:
      - `DataOutput.writeByte(byte)`

  - ### readBytes

    public void readBytes(byte[] b, int offset, int len) throws IOException
    Description copied from class: `DataInput`
    Reads a specified number of bytes into an array at the specified offset.
    Specified by:
      `readBytes` in class `DataInput`
    Parameters:
      `b` - the array to read bytes into
      `offset` - the offset in the array to start storing bytes
      `len` - the number of bytes to read
    Throws:
      `IOException`
    See Also:
      - `DataOutput.writeBytes(byte[],int)`

  - ### readShort

    public short readShort() throws IOException
    Description copied from class: `DataInput`
    Reads two bytes and returns a short (LE byte order).
    Overrides:
      `readShort` in class `DataInput`
    Throws:
      `IOException`
    See Also:
      - `DataOutput.writeShort(short)`
      - `BitUtil.VH_LE_SHORT`

  - ### readInt

    public int readInt() throws IOException
    Description copied from class: `DataInput`
    Reads four bytes and returns an int (LE byte order).
    Overrides:
      `readInt` in class `DataInput`
    Throws:
      `IOException`
    See Also:
      - `DataOutput.writeInt(int)`
      - `BitUtil.VH_LE_INT`

  - ### readLong

    public long readLong() throws IOException
    Description copied from class: `DataInput`
    Reads eight bytes and returns a long (LE byte order).
    Overrides:
      `readLong` in class `DataInput`
    Throws:
      `IOException`
    See Also:
      - `DataOutput.writeLong(long)`
      - `BitUtil.VH_LE_LONG`

  - ### readLongs

    public void readLongs(long[] dst, int offset, int length) throws IOException
    Description copied from class: `DataInput`
    Read a specified number of longs.
    Overrides:
      `readLongs` in class `DataInput`
    Throws:
      `IOException`

  - ### getChecksum

    public long getChecksum()
    Description copied from class: `ChecksumIndexInput`
    Returns the current checksum value
    Specified by:
      `getChecksum` in class `ChecksumIndexInput`

  - ### close

    public void close() throws IOException
    Description copied from class: `IndexInput`
    Closes the stream to further operations.
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Specified by:
      `close` in class `IndexInput`
    Throws:
      `IOException`

  - ### getFilePointer

    public long getFilePointer()
    Description copied from class: `IndexInput`
    Returns the current position in this file, where the next read will occur.
    Specified by:
      `getFilePointer` in class `IndexInput`
    See Also:
      - `IndexInput.seek(long)`

  - ### length

    public long length()
    Description copied from class: `IndexInput`
    The number of bytes in the file.
    Specified by:
      `length` in class `IndexInput`

  - ### clone

    public IndexInput clone()
    Description copied from class: `IndexInput`
    Returns a clone of this stream.

    Clones of a stream access the same data, and are positioned at the same point as the stream they were cloned from.

    Expert: Subclasses must ensure that clones may be positioned at different points in the input from each other and from the stream they were cloned from.

    Warning: Lucene never closes cloned `IndexInput`s, it will only call `IndexInput.close()` on the original object.

    If you access the cloned IndexInput after closing the original object, any `readXXX` methods will throw `AlreadyClosedException`.

    This method is NOT thread safe, so if the current `IndexInput` is being used by one thread while `clone` is called by another, disaster could strike.

    Overrides:
      `clone` in class `IndexInput`

  - ### slice

    public IndexInput slice(String sliceDescription, long offset, long length) throws IOException
    Description copied from class: `IndexInput`
    Creates a slice of this index input, with the given description, offset, and length. The slice is sought to the beginning.
    Specified by:
      `slice` in class `IndexInput`
    Throws:
      `IOException`