Package org.h2.store.fs.split
Class FileSplit
- java.lang.Object
-
- java.nio.channels.spi.AbstractInterruptibleChannel
-
- java.nio.channels.FileChannel
-
- org.h2.store.fs.FileBase
-
- org.h2.store.fs.FileBaseDefault
-
- org.h2.store.fs.split.FileSplit
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,java.nio.channels.ByteChannel,java.nio.channels.Channel,java.nio.channels.GatheringByteChannel,java.nio.channels.InterruptibleChannel,java.nio.channels.ReadableByteChannel,java.nio.channels.ScatteringByteChannel,java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel
class FileSplit extends FileBaseDefault
A file that may be split into multiple smaller files.
-
-
Constructor Summary
Constructors Constructor Description FileSplit(FilePathSplit file, java.lang.String mode, java.nio.channels.FileChannel[] list, long length, long maxLength)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidforce(boolean metaData)private java.nio.channels.FileChannelgetFileChannel(long position)voidimplCloseChannel()protected voidimplTruncate(long newLength)The truncate implementation.intread(java.nio.ByteBuffer dst, long position)longsize()java.lang.StringtoString()java.nio.channels.FileLocktryLock(long position, long size, boolean shared)intwrite(java.nio.ByteBuffer src, long position)-
Methods inherited from class org.h2.store.fs.FileBaseDefault
position, position, read, truncate, write
-
Methods inherited from class org.h2.store.fs.FileBase
lock, map, read, transferFrom, transferTo, write
-
Methods inherited from class java.nio.channels.spi.AbstractInterruptibleChannel
begin, close, end, isOpen
-
-
-
-
Field Detail
-
filePath
private final FilePathSplit filePath
-
mode
private final java.lang.String mode
-
maxLength
private final long maxLength
-
list
private java.nio.channels.FileChannel[] list
-
length
private volatile long length
-
-
Constructor Detail
-
FileSplit
FileSplit(FilePathSplit file, java.lang.String mode, java.nio.channels.FileChannel[] list, long length, long maxLength)
-
-
Method Detail
-
implCloseChannel
public void implCloseChannel() throws java.io.IOException- Overrides:
implCloseChannelin classFileBase- Throws:
java.io.IOException
-
size
public long size()
- Specified by:
sizein interfacejava.nio.channels.SeekableByteChannel- Specified by:
sizein classjava.nio.channels.FileChannel
-
read
public int read(java.nio.ByteBuffer dst, long position) throws java.io.IOException
-
getFileChannel
private java.nio.channels.FileChannel getFileChannel(long position) throws java.io.IOException- Throws:
java.io.IOException
-
implTruncate
protected void implTruncate(long newLength) throws java.io.IOExceptionDescription copied from class:FileBaseDefaultThe truncate implementation.- Specified by:
implTruncatein classFileBaseDefault- Parameters:
newLength- the new size- Throws:
java.io.IOException- on failure
-
force
public void force(boolean metaData) throws java.io.IOException
-
write
public int write(java.nio.ByteBuffer src, long position) throws java.io.IOException
-
tryLock
public java.nio.channels.FileLock tryLock(long position, long size, boolean shared) throws java.io.IOException
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-