public class BlobInputStream
extends java.io.InputStream
| Modifier and Type | Field and Description |
|---|---|
private long |
apos
The absolute position.
|
private int |
bpos
Position within buffer.
|
private int |
bsize
The buffer size.
|
private byte[] |
buffer
Buffer used to improve performance.
|
private long |
limit
The limit.
|
private LargeObject |
lo
The parent LargeObject.
|
private long |
mpos
The mark position.
|
| Constructor and Description |
|---|
BlobInputStream(LargeObject lo) |
BlobInputStream(LargeObject lo,
int bsize) |
BlobInputStream(LargeObject lo,
int bsize,
long limit) |
| Modifier and Type | Method and Description |
|---|---|
private void |
checkClosed() |
void |
close()
Closes this input stream and releases any system resources associated with the stream.
|
void |
mark(int readlimit)
Marks the current position in this input stream.
|
boolean |
markSupported()
Tests if this input stream supports the
mark and reset methods. |
int |
read()
The minimum required to implement input stream.
|
void |
reset()
Repositions this stream to the position at the time the
mark method was last
called on this input stream. |
private LargeObject lo
private long apos
private byte[] buffer
private int bpos
private int bsize
private long mpos
private long limit
public BlobInputStream(LargeObject lo)
lo - LargeObject to read frompublic BlobInputStream(LargeObject lo, int bsize)
lo - LargeObject to read frombsize - buffer sizepublic BlobInputStream(LargeObject lo, int bsize, long limit)
lo - LargeObject to read frombsize - buffer sizelimit - max number of bytes to readpublic int read()
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionpublic void close()
throws java.io.IOException
Closes this input stream and releases any system resources associated with the stream.
The close method of InputStream does nothing.
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class java.io.InputStreamjava.io.IOException - if an I/O error occurs.public void mark(int readlimit)
Marks the current position in this input stream. A subsequent call to the reset
method repositions this stream at the last marked position so that subsequent reads re-read the
same bytes.
The readlimit arguments tells this input stream to allow that many bytes to be
read before the mark position gets invalidated.
The general contract of mark is that, if the method markSupported
returns true, the stream somehow remembers all the bytes read after the call to
mark and stands ready to supply those same bytes again if and whenever the method
reset is called. However, the stream is not required to remember any data at all
if more than readlimit bytes are read from the stream before reset is
called.
Marking a closed stream should not have any effect on the stream.
mark in class java.io.InputStreamreadlimit - the maximum limit of bytes that can be read before the mark position becomes
invalid.InputStream.reset()public void reset()
throws java.io.IOException
mark method was last
called on this input stream. NB: If mark is not called we move to the beginning.reset in class java.io.InputStreamjava.io.IOExceptionInputStream.mark(int),
IOExceptionpublic boolean markSupported()
mark and reset methods. The
markSupported method of InputStream returns false.markSupported in class java.io.InputStreamtrue if this true type supports the mark and reset method;
false otherwise.InputStream.mark(int),
InputStream.reset()private void checkClosed()
throws java.io.IOException
java.io.IOException