Package com.pnfsoftware.jeb.util.io
Class SubSeekableByteChannel
java.lang.Object
com.pnfsoftware.jeb.util.io.SubSeekableByteChannel
- All Implemented Interfaces:
Closeable
,AutoCloseable
,ByteChannel
,Channel
,ReadableByteChannel
,SeekableByteChannel
,WritableByteChannel
An seekable channel presenting a region of another seekable channel. Only read-operations are
supported. Attempts to write or modify the master channel will raise an
IOException
.-
Constructor Summary
ConstructorsConstructorDescriptionSubSeekableByteChannel
(SeekableByteChannel channel, long base, long maxsize) Create a sub channel. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Close this sub-channel and its master channel.boolean
isOpen()
long
position()
position
(long newPosition) int
read
(ByteBuffer dst) long
size()
truncate
(long size) int
write
(ByteBuffer src)
-
Constructor Details
-
SubSeekableByteChannel
public SubSeekableByteChannel(SeekableByteChannel channel, long base, long maxsize) throws IOException Create a sub channel.- Parameters:
channel
- the main channelbase
- beginning of regionmaxsize
- size of region- Throws:
IOException
-
-
Method Details
-
isOpen
public boolean isOpen() -
close
Close this sub-channel and its master channel.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceChannel
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
read
- Specified by:
read
in interfaceReadableByteChannel
- Specified by:
read
in interfaceSeekableByteChannel
- Throws:
IOException
-
write
- Specified by:
write
in interfaceSeekableByteChannel
- Specified by:
write
in interfaceWritableByteChannel
- Throws:
IOException
-
position
- Specified by:
position
in interfaceSeekableByteChannel
- Throws:
IOException
-
position
- Specified by:
position
in interfaceSeekableByteChannel
- Throws:
IOException
-
size
- Specified by:
size
in interfaceSeekableByteChannel
- Throws:
IOException
-
truncate
- Specified by:
truncate
in interfaceSeekableByteChannel
- Throws:
IOException
-