Package com.adobe.internal.io
Class CountingInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
com.adobe.internal.io.CountingInputStream
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
RangedInputStream
A
FilterInputStream wrapper that counts the number of bytes read from the stream or skipped over
since the creation of this wrapper.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlongGet the offset in the wrapped stream since the creation of this wrapper.intread()Reads the next byte of data from this input stream.intread(byte[] b) Reads up to byte.length bytes of data from this input stream into an array of bytes.intread(byte[] b, int off, int len) Reads up to len bytes of data from this input stream into an array of bytes.longskip(long n) Skips over and discards n bytes of data from the input stream.Methods inherited from class java.io.FilterInputStream
available, close, mark, markSupported, resetMethods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Constructor Details
-
CountingInputStream
- Parameters:
is-
-
-
Method Details
-
read
Reads the next byte of data from this input stream. The value byte is returned as an int in the range 0 to 255. If no byte is available because the end of the stream has been reached, the value -1 is returned. This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.- Overrides:
readin classFilterInputStream- Returns:
- the next byte of data or
-1if the end of stream is reached - Throws:
IOException- if an I/O error occurs
-
read
Reads up to len bytes of data from this input stream into an array of bytes. This method blocks until some input is available.- Overrides:
readin classFilterInputStream- Parameters:
b- the buffer into which the data is readoff- the start offset in the buffer to write the datalen- the maximum number of bytes to read- Returns:
- the total number of bytes read into the buffer, or
-1if there is no more data because the end of the stream has been reached. - Throws:
IOException- if an I/O error occurs
-
read
Reads up to byte.length bytes of data from this input stream into an array of bytes. This method blocks until some input is available.- Overrides:
readin classFilterInputStream- Returns:
- the total number of bytes read into the buffer, or
-1if there is no more data because the end of the stream has been reached. - Throws:
IOException- if an I/O error occurs
-
skip
Skips over and discards n bytes of data from the input stream. The skip method may, for a variety of reasons, end up skipping over some smaller number of bytes, possibly 0. The actual number of bytes skipped is returned.- Overrides:
skipin classFilterInputStream- Parameters:
n- the number of bytes to be skipped- Returns:
- the actual number of bytes skipped
- Throws:
IOException- if an I/O error occurs
-
getOffset
public long getOffset()Get the offset in the wrapped stream since the creation of this wrapper.- Returns:
- the offset in bytes
-