public class LimitingInputStream extends InputStream
Modifier and Type | Field and Description |
---|---|
private long |
bytesRead |
private InputStream |
in |
private long |
limit |
private boolean |
limitReached |
Constructor and Description |
---|
LimitingInputStream(InputStream in,
long limit)
Constructs a limited input stream whereby if the limit is reached all
subsequent calls to read will return a -1 and hasLimitReached() will
indicate true.
|
Modifier and Type | Method and Description |
---|---|
int |
available() |
void |
close() |
long |
getLimit() |
boolean |
hasReachedLimit() |
void |
mark(int readlimit) |
private int |
markLimitReached() |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] b) |
int |
read(byte[] b,
int off,
int len) |
void |
reset() |
long |
skip(long n) |
private final InputStream in
private final long limit
private long bytesRead
private volatile boolean limitReached
public LimitingInputStream(InputStream in, long limit)
in
- the underlying input streamlimit
- maximum length of bytes to read from underlying input streampublic boolean hasReachedLimit() throws IOException
IOException
private int markLimitReached()
public int read() throws IOException
read
in class InputStream
IOException
public int read(byte[] b) throws IOException
read
in class InputStream
IOException
public int read(byte[] b, int off, int len) throws IOException
read
in class InputStream
IOException
public long skip(long n) throws IOException
skip
in class InputStream
IOException
public int available() throws IOException
available
in class InputStream
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class InputStream
IOException
public void mark(int readlimit)
mark
in class InputStream
public boolean markSupported()
markSupported
in class InputStream
public void reset() throws IOException
reset
in class InputStream
IOException
public long getLimit()
Copyright © 2016 Apache NiFi Project. All rights reserved.