org.bouncycastle.asn1.LimitedInputStream Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcprov-jdk15to18 Show documentation
Show all versions of bcprov-jdk15to18 Show documentation
The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.5 to JDK 1.8.
package org.bouncycastle.asn1;
import java.io.InputStream;
/**
* Internal use stream that allows reading of a limited number of bytes from a wrapped stream.
*/
abstract class LimitedInputStream
extends InputStream
{
protected final InputStream _in;
private int _limit;
LimitedInputStream(
InputStream in,
int limit)
{
this._in = in;
this._limit = limit;
}
int getRemaining()
{
// TODO: maybe one day this can become more accurate
return _limit;
}
protected void setParentEofDetect(boolean on)
{
if (_in instanceof IndefiniteLengthInputStream)
{
((IndefiniteLengthInputStream)_in).setEofOn00(on);
}
}
}