org.apache.lucene.store
Class FSDirectory.FSIndexInput

java.lang.Object
  extended by org.apache.lucene.store.DataInput
      extended by org.apache.lucene.store.IndexInput
          extended by org.apache.lucene.store.BufferedIndexInput
              extended by org.apache.lucene.store.FSDirectory.FSIndexInput
All Implemented Interfaces:
Closeable, 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
protected  long end
          end offset (start+length)
protected  RandomAccessFile file
          the underlying RandomAccessFile
protected  long off
          start offset: non-zero in the slice case
 
Fields inherited from class org.apache.lucene.store.BufferedIndexInput
buffer, BUFFER_SIZE, MERGE_BUFFER_SIZE
 
Constructor Summary
protected FSDirectory.FSIndexInput(String resourceDesc, File path, IOContext context)
          Create a new FSIndexInput, reading the entire file from path
protected FSDirectory.FSIndexInput(String resourceDesc, RandomAccessFile file, long off, long length, int bufferSize)
          Create a new FSIndexInput, representing a slice of an existing open file
 
Method Summary
 FSDirectory.FSIndexInput clone()
          Returns a clone of this stream.
 void close()
          Closes the stream to further operations.
 long length()
          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
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

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

FSDirectory.FSIndexInput

protected FSDirectory.FSIndexInput(String resourceDesc,
                                   File path,
                                   IOContext context)
                            throws IOException
Create a new FSIndexInput, reading the entire file from path

Throws:
IOException

FSDirectory.FSIndexInput

protected FSDirectory.FSIndexInput(String resourceDesc,
                                   RandomAccessFile file,
                                   long off,
                                   long length,
                                   int bufferSize)
Create a new FSIndexInput, representing a slice of an existing open file

Method Detail

close

public void close()
           throws IOException
Description copied from class: IndexInput
Closes the stream to further operations.

Specified by:
close in interface Closeable
Specified by:
close in class IndexInput
Throws:
IOException

clone

public FSDirectory.FSIndexInput 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 IndexInputs, it will only do this on the original one. The original instance must take care that cloned instances throw AlreadyClosedException when the original one is closed.

Overrides:
clone in class BufferedIndexInput

length

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

Specified by:
length in class IndexInput


Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.