Package org.apache.lucene.store
Class BufferedIndexOutput
- java.lang.Object
-
- org.apache.lucene.store.DataOutput
-
- org.apache.lucene.store.IndexOutput
-
- org.apache.lucene.store.BufferedIndexOutput
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public abstract class BufferedIndexOutput extends IndexOutput
Base implementation class for bufferedIndexOutput.
-
-
Field Summary
Fields Modifier and Type Field Description static intDEFAULT_BUFFER_SIZEThe default buffer size in bytes (16384).
-
Constructor Summary
Constructors Constructor Description BufferedIndexOutput()Creates a newBufferedIndexOutputwith the default buffer size (16384 bytes seeDEFAULT_BUFFER_SIZE)BufferedIndexOutput(int bufferSize)Creates a newBufferedIndexOutputwith the given buffer size.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidclose()Closes this stream to further operations.voidflush()Forces any buffered output to be written.intgetBufferSize()Returns size of the used output buffer in bytes.longgetFilePointer()Returns the current position in this file, where the next write will occur.abstract longlength()The number of bytes in the file.voidseek(long pos)Sets current position in this file, where the next write will occur.voidwriteByte(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
setLength
-
Methods inherited from class org.apache.lucene.store.DataOutput
copyBytes, writeBytes, writeInt, writeLong, writeShort, writeString, writeStringSet, writeStringStringMap, writeVInt, writeVLong
-
-
-
-
Field Detail
-
DEFAULT_BUFFER_SIZE
public static final int DEFAULT_BUFFER_SIZE
The default buffer size in bytes (16384).- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BufferedIndexOutput
public BufferedIndexOutput()
Creates a newBufferedIndexOutputwith the default buffer size (16384 bytes seeDEFAULT_BUFFER_SIZE)
-
BufferedIndexOutput
public BufferedIndexOutput(int bufferSize)
Creates a newBufferedIndexOutputwith the given buffer size.- Parameters:
bufferSize- the buffer size in bytes used to buffer writes internally.- Throws:
java.lang.IllegalArgumentException- if the given buffer size is less or equal to 0
-
-
Method Detail
-
writeByte
public void writeByte(byte b) throws java.io.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:
java.io.IOException- See Also:
DataInput.readByte()
-
writeBytes
public void writeBytes(byte[] b, int offset, int length) throws java.io.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:
java.io.IOException- See Also:
DataInput.readBytes(byte[],int,int)
-
flush
public void flush() throws java.io.IOExceptionDescription copied from class:IndexOutputForces any buffered output to be written.- Specified by:
flushin classIndexOutput- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOExceptionDescription copied from class:IndexOutputCloses this stream to further operations.- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classIndexOutput- Throws:
java.io.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- See Also:
IndexOutput.seek(long)
-
seek
public void seek(long pos) throws java.io.IOExceptionDescription copied from class:IndexOutputSets current position in this file, where the next write will occur.- Specified by:
seekin classIndexOutput- Throws:
java.io.IOException- See Also:
IndexOutput.getFilePointer()
-
length
public abstract long length() throws java.io.IOExceptionDescription copied from class:IndexOutputThe number of bytes in the file.- Specified by:
lengthin classIndexOutput- Throws:
java.io.IOException
-
getBufferSize
public final int getBufferSize()
Returns size of the used output buffer in bytes.
-
-