Class LimitedInputStream
- java.lang.Object
-
- java.io.InputStream
-
- com.itextpdf.styledxmlparser.resolver.resource.LimitedInputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
class LimitedInputStream extends java.io.InputStreamImplementation of theInputStreamabstract class, which is used to restrict reading bytes from input stream i.e. if more bytes are read than the readingByteLimit, anReadingByteLimitExceptionexception will be thrown. Note that the readingByteLimit is not taken into account in theskip(long),available(),mark(int)andreset()methods.
-
-
Field Summary
Fields Modifier and Type Field Description private java.io.InputStreaminputStreamprivate booleanisLimitViolatedprivate booleanisStreamReadprivate longreadingByteLimit
-
Constructor Summary
Constructors Constructor Description LimitedInputStream(java.io.InputStream inputStream, long readingByteLimit)Creates a newLimitedInputStreaminstance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intavailable()private voidcheckReadingByteLimit(int byteValue)voidclose()voidmark(int readlimit)booleanmarkSupported()intread()intread(byte[] b)intread(byte[] b, int off, int len)voidreset()longskip(long n)
-
-
-
Constructor Detail
-
LimitedInputStream
public LimitedInputStream(java.io.InputStream inputStream, long readingByteLimit)Creates a newLimitedInputStreaminstance.- Parameters:
inputStream- the input stream, the reading of bytes from which will be limitedreadingByteLimit- the reading byte limit, must not be less than zero
-
-
Method Detail
-
read
public int read() throws java.io.IOException- Specified by:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
read
public int read(byte[] b) throws java.io.IOException- Overrides:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
read
public int read(byte[] b, int off, int len) throws java.io.IOException- Overrides:
readin classjava.io.InputStream- Throws:
java.io.IOException
-
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
-
skip
public long skip(long n) throws java.io.IOException- Overrides:
skipin classjava.io.InputStream- Throws:
java.io.IOException
-
available
public int available() throws java.io.IOException- Overrides:
availablein classjava.io.InputStream- Throws:
java.io.IOException
-
mark
public void mark(int readlimit)
- Overrides:
markin classjava.io.InputStream
-
reset
public void reset()
- Overrides:
resetin classjava.io.InputStream
-
markSupported
public boolean markSupported()
- Overrides:
markSupportedin classjava.io.InputStream
-
checkReadingByteLimit
private void checkReadingByteLimit(int byteValue) throws ReadingByteLimitException- Throws:
ReadingByteLimitException
-
-