Package org.aksw.commons.io.input
Class SeekableReadableChannelWithLimit<A,X extends SeekableReadableChannel<A>>
java.lang.Object
org.aksw.commons.util.closeable.AutoCloseableWrapperBase<T>
org.aksw.commons.io.shared.ChannelDecoratorBase<X>
org.aksw.commons.io.input.SeekableReadableChannelWithLimit<A,X>
- All Implemented Interfaces:
Closeable,AutoCloseable,Cloneable,Channel,HasArrayOps<A>,HasPosition,ReadableChannel<A>,ReadableSource<A>,SeekableReadableChannel<A>
public class SeekableReadableChannelWithLimit<A,X extends SeekableReadableChannel<A>>
extends ChannelDecoratorBase<X>
implements SeekableReadableChannel<A>
-
Field Summary
FieldsFields inherited from class org.aksw.commons.util.closeable.AutoCloseableWrapperBase
delegate -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.aksw.commons.io.shared.ChannelDecoratorBase
close, isOpenMethods inherited from class org.aksw.commons.util.closeable.AutoCloseableWrapperBase
close, getDelegateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.aksw.commons.io.input.ReadableSource
readRaw
-
Field Details
-
endPos
protected long endPos
-
-
Constructor Details
-
SeekableReadableChannelWithLimit
-
-
Method Details
-
getArrayOps
- Specified by:
getArrayOpsin interfaceHasArrayOps<A>
-
position
- Specified by:
positionin interfaceHasPosition- Throws:
IOException
-
position
- Specified by:
positionin interfaceHasPosition- Throws:
IOException
-
read
Description copied from interface:ReadableSourceRead method following the usual InputStream protocol.- Specified by:
readin interfaceReadableSource<A>- Parameters:
array- The array into which to put the read dataposition- Offset into array where to start writinglength- Maximum number of items to read.- Returns:
- The number of items read. Return -1 if end of data was reached, and 0 iff length was 0.
- Throws:
IOException
-
cloneObject
Description copied from interface:SeekableReadableChannelOptional operation. Open a new channel to the underlying source at the same position as this channel. The returned channel is an independent entity and needs to be closed separatedly. Opening a channel this way may be faster than opening a new channel at the source because information about this channel may be re-used (e.g. held pages and pointers into internal data structures)- Specified by:
cloneObjectin interfaceSeekableReadableChannel<A>
-