Package org.apache.lucene.store
Class FilterIndexInput
java.lang.Object
org.apache.lucene.store.DataInput
org.apache.lucene.store.IndexInput
org.apache.lucene.store.FilterIndexInput
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Cloneable
IndexInput implementation that delegates calls to another directory. This class can be used to
add limitations on top of an existing
IndexInput
implementation or to add additional
sanity checks for tests. However, if you plan to write your own IndexInput
implementation, you should consider extending directly IndexInput
or DataInput
rather than try to reuse functionality of existing IndexInput
s by extending this class.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
Field Summary
-
Constructor Summary
ConstructorDescriptionFilterIndexInput
(String resourceDescription, IndexInput in) Creates a FilterIndexInput with a resource description and wrapped delegate IndexInput -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the stream to further operations.Gets the delegate that was passed in on creationlong
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.void
seek
(long pos) Sets current position in this file, where the next read will occur.Creates a slice of this index input, with the given description, offset, and length.static IndexInput
unwrap
(IndexInput in) Unwraps all FilterIndexInputs until the first non-FilterIndexInput IndexInput instance and returns itMethods inherited from class org.apache.lucene.store.IndexInput
clone, getFullSliceDescription, randomAccessSlice, skipBytes, toString
Methods inherited from class org.apache.lucene.store.DataInput
readBytes, readFloats, readInt, readInts, readLong, readLongs, readMapOfStrings, readSetOfStrings, readShort, readString, readVInt, readVLong, readZInt, readZLong
-
Field Details
-
in
-
-
Constructor Details
-
FilterIndexInput
Creates a FilterIndexInput with a resource description and wrapped delegate IndexInput
-
-
Method Details
-
unwrap
Unwraps all FilterIndexInputs until the first non-FilterIndexInput IndexInput instance and returns it -
getDelegate
Gets the delegate that was passed in on creation -
close
Description copied from class:IndexInput
Closes the stream to further operations.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classIndexInput
- 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 classIndexInput
- See Also:
-
seek
Description copied from class:IndexInput
Sets current position in this file, where the next read will occur. If this is beyond the end of the file then this will throwEOFException
and then the stream is in an undetermined state.- Specified by:
seek
in classIndexInput
- Throws:
IOException
- See Also:
-
length
public long length()Description copied from class:IndexInput
The number of bytes in the file.- Specified by:
length
in classIndexInput
-
slice
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 classIndexInput
- Throws:
IOException
-
readByte
Description copied from class:DataInput
Reads and returns a single byte.- Specified by:
readByte
in classDataInput
- Throws:
IOException
- See Also:
-
readBytes
Description copied from class:DataInput
Reads a specified number of bytes into an array at the specified offset.- Specified by:
readBytes
in 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:
IOException
- See Also:
-