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:
java.io.Closeable,java.lang.AutoCloseable,java.lang.Cloneable
public class BufferedChecksumIndexInput extends ChecksumIndexInput
Simple implementation ofChecksumIndexInputthat wraps another input and delegates calls.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.zip.Checksumdigest(package private) IndexInputmain
-
Constructor Summary
Constructors Constructor Description BufferedChecksumIndexInput(IndexInput main)Creates a new BufferedChecksumIndexInput
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IndexInputclone()Returns a clone of this stream.voidclose()Closes the stream to further operations.longgetChecksum()Returns the current checksum valuelonggetFilePointer()Returns the current position in this file, where the next read will occur.longlength()The number of bytes in the file.bytereadByte()Reads and returns a single byte.voidreadBytes(byte[] b, int offset, int len)Reads a specified number of bytes into an array at the specified offset.IndexInputslice(java.lang.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, randomAccessSlice, toString
-
Methods inherited from class org.apache.lucene.store.DataInput
readBytes, readInt, readLELongs, readLong, readMapOfStrings, readSetOfStrings, readShort, readString, readVInt, readVLong, readZInt, readZLong, skipBytes
-
-
-
-
Field Detail
-
main
final IndexInput main
-
digest
final java.util.zip.Checksum digest
-
-
Constructor Detail
-
BufferedChecksumIndexInput
public BufferedChecksumIndexInput(IndexInput main)
Creates a new BufferedChecksumIndexInput
-
-
Method Detail
-
readByte
public byte readByte() throws java.io.IOExceptionDescription copied from class:DataInputReads and returns a single byte.- Specified by:
readBytein classDataInput- Throws:
java.io.IOException- See Also:
DataOutput.writeByte(byte)
-
readBytes
public void readBytes(byte[] b, int offset, int len) throws java.io.IOExceptionDescription copied from class:DataInputReads a specified number of bytes into an array at the specified offset.- Specified by:
readBytesin classDataInput- Parameters:
b- the array to read bytes intooffset- the offset in the array to start storing byteslen- the number of bytes to read- Throws:
java.io.IOException- See Also:
DataOutput.writeBytes(byte[],int)
-
getChecksum
public long getChecksum()
Description copied from class:ChecksumIndexInputReturns the current checksum value- Specified by:
getChecksumin classChecksumIndexInput
-
close
public void close() throws java.io.IOExceptionDescription copied from class:IndexInputCloses the stream to further operations.- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classIndexInput- Throws:
java.io.IOException
-
getFilePointer
public long getFilePointer()
Description copied from class:IndexInputReturns the current position in this file, where the next read will occur.- Specified by:
getFilePointerin classIndexInput- See Also:
IndexInput.seek(long)
-
length
public long length()
Description copied from class:IndexInputThe number of bytes in the file.- Specified by:
lengthin classIndexInput
-
clone
public IndexInput clone()
Description copied from class:IndexInputReturns 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
IndexInputs, it will only callIndexInput.close()on the original object.If you access the cloned IndexInput after closing the original object, any
readXXXmethods will throwAlreadyClosedException.This method is NOT thread safe, so if the current
IndexInputis being used by one thread whilecloneis called by another, disaster could strike.- Overrides:
clonein classIndexInput
-
slice
public IndexInput slice(java.lang.String sliceDescription, long offset, long length) throws java.io.IOException
Description copied from class:IndexInputCreates a slice of this index input, with the given description, offset, and length. The slice is sought to the beginning.- Specified by:
slicein classIndexInput- Throws:
java.io.IOException
-
-