Package org.h2.store
Class CountingReaderInputStream
- java.lang.Object
-
- java.io.InputStream
-
- org.h2.store.CountingReaderInputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class CountingReaderInputStream extends java.io.InputStreamAn input stream that reads the data from a reader and limits the number of bytes that can be read.
-
-
Field Summary
Fields Modifier and Type Field Description private java.nio.ByteBufferbyteBufferprivate java.nio.CharBuffercharBufferprivate java.nio.charset.CharsetEncoderencoderprivate longlengthprivate java.io.Readerreaderprivate longremaining
-
Constructor Summary
Constructors Constructor Description CountingReaderInputStream(java.io.Reader reader, long maxLength)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()private booleanfetch()private voidfillBuffer()longgetLength()The number of characters read so far (but there might still be some bytes in the buffer).intread()intread(byte[] buff, int offset, int len)
-
-
-
Method Detail
-
read
public int read(byte[] buff, int offset, int len) throws java.io.IOException- Overrides:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
read
public int read() throws java.io.IOException- Specified by:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
fetch
private boolean fetch() throws java.io.IOException- Throws:
java.io.IOException
-
fillBuffer
private void fillBuffer() throws java.io.IOException- Throws:
java.io.IOException
-
getLength
public long getLength()
The number of characters read so far (but there might still be some bytes in the buffer).- Returns:
- the number of characters
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.InputStream- Throws:
java.io.IOException
-
-