Package org.apache.lucene.store
Class FilterIndexOutput
- java.lang.Object
-
- org.apache.lucene.store.DataOutput
-
- org.apache.lucene.store.IndexOutput
-
- org.apache.lucene.store.FilterIndexOutput
-
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
RateLimitedIndexOutput
public class FilterIndexOutput extends IndexOutput
IndexOutput implementation that delegates calls to another directory. This class can be used to add limitations on top of an existingIndexOutputimplementation such asByteBuffersIndexOutputor to add additional sanity checks for tests. However, if you plan to write your ownIndexOutputimplementation, you should consider extending directlyIndexOutputorDataOutputrather than try to reuse functionality of existingIndexOutputs by extending this class.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
-
Field Summary
Fields Modifier and Type Field Description protected IndexOutputout
-
Constructor Summary
Constructors Modifier Constructor Description protectedFilterIndexOutput(String resourceDescription, String name, IndexOutput out)Creates a FilterIndexOutput with a resource description, name, and wrapped delegate IndexOutput
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes this stream to further operations.longgetChecksum()Returns the current checksum of bytes written so farIndexOutputgetDelegate()Gets the delegate that was passed in on creationlonggetFilePointer()Returns the current position in this file, where the next write will occur.static IndexOutputunwrap(IndexOutput out)Unwraps all FilterIndexOutputs until the first non-FilterIndexOutput IndexOutput instance and returns itvoidwriteByte(byte b)Writes a single byte.voidwriteBytes(byte[] b, int offset, int length)Writes an array of bytes.-
Methods inherited from class org.apache.lucene.store.IndexOutput
alignFilePointer, alignOffset, getName, toString
-
Methods inherited from class org.apache.lucene.store.DataOutput
copyBytes, writeBytes, writeGroupVInts, writeInt, writeLong, writeMapOfStrings, writeSetOfStrings, writeShort, writeString, writeVInt, writeVLong, writeZInt, writeZLong
-
-
-
-
Field Detail
-
out
protected final IndexOutput out
-
-
Constructor Detail
-
FilterIndexOutput
protected FilterIndexOutput(String resourceDescription, String name, IndexOutput out)
Creates a FilterIndexOutput with a resource description, name, and wrapped delegate IndexOutput
-
-
Method Detail
-
unwrap
public static IndexOutput unwrap(IndexOutput out)
Unwraps all FilterIndexOutputs until the first non-FilterIndexOutput IndexOutput instance and returns it
-
getDelegate
public final IndexOutput getDelegate()
Gets the delegate that was passed in on creation
-
close
public void close() throws IOExceptionDescription copied from class:IndexOutputCloses this stream to further operations.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classIndexOutput- Throws:
IOException
-
getFilePointer
public long getFilePointer()
Description copied from class:IndexOutputReturns the current position in this file, where the next write will occur.- Specified by:
getFilePointerin classIndexOutput
-
getChecksum
public long getChecksum() throws IOExceptionDescription copied from class:IndexOutputReturns the current checksum of bytes written so far- Specified by:
getChecksumin classIndexOutput- Throws:
IOException
-
writeByte
public void writeByte(byte b) throws IOExceptionDescription copied from class:DataOutputWrites a single byte.The most primitive data type is an eight-bit byte. Files are accessed as sequences of bytes. All other data types are defined as sequences of bytes, so file formats are byte-order independent.
- Specified by:
writeBytein classDataOutput- Throws:
IOException- See Also:
DataInput.readByte()
-
writeBytes
public void writeBytes(byte[] b, int offset, int length) throws IOExceptionDescription copied from class:DataOutputWrites an array of bytes.- Specified by:
writeBytesin classDataOutput- Parameters:
b- the bytes to writeoffset- the offset in the byte arraylength- the number of bytes to write- Throws:
IOException- See Also:
DataInput.readBytes(byte[],int,int)
-
-