Package org.jsoup.internal
Class ConstrainableInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.io.BufferedInputStream
org.jsoup.internal.ConstrainableInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
A jsoup internal class (so don't use it as there is no contract API) that enables constraints on an Input Stream,
namely a maximum read size, and the ability to Thread.interrupt() the read.
-
Field Summary
Fields inherited from class java.io.FilterInputStream
in
-
Method Summary
Modifier and TypeMethodDescriptionint
read
(byte[] b, int off, int len) readToByteBuffer
(int max) Reads this inputstream to a ByteBuffer.void
reset()
timeout
(long startTimeNanos, long timeoutMillis) static ConstrainableInputStream
wrap
(InputStream in, int bufferSize, int maxSize) If this InputStream is not already a ConstrainableInputStream, let it be one.Methods inherited from class java.io.BufferedInputStream
available, close, mark, markSupported, read, skip
Methods inherited from class java.io.FilterInputStream
read
Methods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Method Details
-
wrap
If this InputStream is not already a ConstrainableInputStream, let it be one.- Parameters:
in
- the input stream to (maybe) wrapbufferSize
- the buffer size to use when readingmaxSize
- the maximum size to allow to be read. 0 == infinite.- Returns:
- a constrainable input stream
-
read
- Overrides:
read
in classBufferedInputStream
- Throws:
IOException
-
readToByteBuffer
Reads this inputstream to a ByteBuffer. The supplied max may be less than the inputstream's max, to support reading just the first bytes.- Throws:
IOException
-
reset
- Overrides:
reset
in classBufferedInputStream
- Throws:
IOException
-
timeout
-