private static final class NativeUnixDirectory.NativeUnixIndexOutput extends IndexOutput
Modifier and Type | Field and Description |
---|---|
private java.nio.ByteBuffer |
buffer |
private int |
bufferPos |
private int |
bufferSize |
private java.nio.channels.FileChannel |
channel |
private long |
fileLength |
private long |
filePos |
private java.io.FileOutputStream |
fos |
private boolean |
isOpen |
Constructor and Description |
---|
NativeUnixIndexOutput(java.nio.file.Path path,
java.lang.String name,
int bufferSize) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this stream to further operations.
|
private void |
dump() |
long |
getChecksum()
Returns the current checksum of bytes written so far
|
long |
getFilePointer()
Returns the current position in this file, where the next write will
occur.
|
void |
writeByte(byte b)
Writes a single byte.
|
void |
writeBytes(byte[] src,
int offset,
int len)
Writes an array of bytes.
|
getName, toString
copyBytes, writeBytes, writeInt, writeLong, writeMapOfStrings, writeSetOfStrings, writeShort, writeString, writeVInt, writeVLong, writeZInt, writeZLong
private final java.nio.ByteBuffer buffer
private final java.io.FileOutputStream fos
private final java.nio.channels.FileChannel channel
private final int bufferSize
private int bufferPos
private long filePos
private long fileLength
private boolean isOpen
public NativeUnixIndexOutput(java.nio.file.Path path, java.lang.String name, int bufferSize) throws java.io.IOException
java.io.IOException
public void writeByte(byte b) throws java.io.IOException
DataOutput
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.
writeByte
in class DataOutput
java.io.IOException
DataInput.readByte()
public void writeBytes(byte[] src, int offset, int len) throws java.io.IOException
DataOutput
writeBytes
in class DataOutput
src
- the bytes to writeoffset
- the offset in the byte arraylen
- the number of bytes to writejava.io.IOException
DataInput.readBytes(byte[],int,int)
private void dump() throws java.io.IOException
java.io.IOException
public long getFilePointer()
IndexOutput
getFilePointer
in class IndexOutput
public long getChecksum() throws java.io.IOException
IndexOutput
getChecksum
in class IndexOutput
java.io.IOException
public void close() throws java.io.IOException
IndexOutput
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in class IndexOutput
java.io.IOException