Package org.apache.lucene.store
Class FSDirectory.FSIndexInput
- java.lang.Object
-
- org.apache.lucene.store.DataInput
-
- org.apache.lucene.store.IndexInput
-
- org.apache.lucene.store.BufferedIndexInput
-
- org.apache.lucene.store.FSDirectory.FSIndexInput
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Cloneable
- Direct Known Subclasses:
NIOFSDirectory.NIOFSIndexInput,SimpleFSDirectory.SimpleFSIndexInput
- Enclosing class:
- FSDirectory
protected abstract static class FSDirectory.FSIndexInput extends BufferedIndexInput
Base class for reading input from a RandomAccessFile
-
-
Field Summary
Fields Modifier and Type Field Description protected longendend offset (start+length)protected RandomAccessFilefilethe underlying RandomAccessFileprotected longoffstart offset: non-zero in the slice case-
Fields inherited from class org.apache.lucene.store.BufferedIndexInput
buffer, BUFFER_SIZE, MERGE_BUFFER_SIZE
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedFSIndexInput(String resourceDesc, File path, IOContext context)Create a new FSIndexInput, reading the entire file frompathprotectedFSIndexInput(String resourceDesc, RandomAccessFile file, long off, long length, int bufferSize)Create a new FSIndexInput, representing a slice of an existing openfile
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FSDirectory.FSIndexInputclone()Returns a clone of this stream.voidclose()Closes the stream to further operations.longlength()The number of bytes in the file.-
Methods inherited from class org.apache.lucene.store.BufferedIndexInput
bufferSize, flushBuffer, getBufferSize, getFilePointer, newBuffer, readByte, readBytes, readBytes, readInt, readInternal, readLong, readShort, readVInt, readVLong, seek, seekInternal, setBufferSize
-
Methods inherited from class org.apache.lucene.store.IndexInput
toString
-
Methods inherited from class org.apache.lucene.store.DataInput
readString, readStringSet, readStringStringMap
-
-
-
-
Field Detail
-
file
protected final RandomAccessFile file
the underlying RandomAccessFile
-
off
protected final long off
start offset: non-zero in the slice case
-
end
protected final long end
end offset (start+length)
-
-
Constructor Detail
-
FSIndexInput
protected FSIndexInput(String resourceDesc, File path, IOContext context) throws IOException
Create a new FSIndexInput, reading the entire file frompath- Throws:
IOException
-
FSIndexInput
protected FSIndexInput(String resourceDesc, RandomAccessFile file, long off, long length, int bufferSize)
Create a new FSIndexInput, representing a slice of an existing openfile
-
-
Method Detail
-
close
public void close() throws IOExceptionDescription copied from class:IndexInputCloses the stream to further operations.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classIndexInput- Throws:
IOException
-
clone
public FSDirectory.FSIndexInput 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 do this on the original one. The original instance must take care that cloned instances throwAlreadyClosedExceptionwhen the original one is closed.- Overrides:
clonein classBufferedIndexInput
-
length
public final long length()
Description copied from class:IndexInputThe number of bytes in the file.- Specified by:
lengthin classIndexInput
-
-