org.apache.commons.io.input

Class CountingInputStream


public class CountingInputStream
extends ProxyInputStream

A decorating input stream that counts the number of bytes that have passed through so far.
Version:
$Id: CountingInputStream.java 160202 2005-04-05 17:22:21Z roxspring $
Authors:
Henri Yandell
Marcelo Liberato

Field Summary

private int
count
The count of bytes that have passed.

Constructor Summary

CountingInputStream(InputStream in)
Constructs a new CountingInputStream.

Method Summary

int
getCount()
The number of bytes that have passed through this stream.
int
read()
Increases the count by 1 if a byte is successfully read.
int
read(byte[] b)
Increases the count by super.read(b)'s return count
int
read(byte[] b, int off, int len)
Increases the count by super.read(b, off, len)'s return count
int
resetCount()
Set the count back to 0.
long
skip(long length)
Increases the count by the number of skipped bytes.

Methods inherited from class org.apache.commons.io.input.ProxyInputStream

available, close, mark, markSupported, read, read, read, reset, skip

Field Details

count

private int count
The count of bytes that have passed.

Constructor Details

CountingInputStream

public CountingInputStream(InputStream in)
Constructs a new CountingInputStream.
Parameters:
in - InputStream to delegate to

Method Details

getCount

public int getCount()
The number of bytes that have passed through this stream.
Returns:
the number of bytes accumulated

read

public int read()
            throws IOException
Increases the count by 1 if a byte is successfully read.
Overrides:
read in interface ProxyInputStream
See Also:
java.io.InputStream.read()

read

public int read(byte[] b)
            throws IOException
Increases the count by super.read(b)'s return count
Overrides:
read in interface ProxyInputStream
See Also:
java.io.InputStream.read(byte[])

read

public int read(byte[] b,
                int off,
                int len)
            throws IOException
Increases the count by super.read(b, off, len)'s return count
Overrides:
read in interface ProxyInputStream
See Also:
java.io.InputStream.read(byte[], int, int)

resetCount

public int resetCount()
Set the count back to 0.
Returns:
the count previous to resetting.

skip

public long skip(long length)
            throws IOException
Increases the count by the number of skipped bytes.
Overrides:
skip in interface ProxyInputStream
See Also:
java.io.InputStream.skip(long)