Class CountingInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class CountingInputStream
    extends java.io.FilterInputStream
    Sub-Class of Filter Input Stream with the extra method getPos which returns the position in the Stream
    Author:
    Richard McCreadie and Craig Macdonald
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected long count
      number of bytes read or skipped
      • Fields inherited from class java.io.FilterInputStream

        in
    • Constructor Summary

      Constructors 
      Constructor Description
      CountingInputStream​(java.io.InputStream _in)
      Constructor - Calls Super Class
      CountingInputStream​(java.io.InputStream _in, long offset)
      Constructor - Calls Super Class
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long getPos()
      Returns the Position in the Stream
      int read()
      Reads the Next Byte from the Stream
      int read​(byte[] b, int off, int len)
      Reads the next Byte Array with Offset and Length from the Stream
      long skip​(long n)
      Calls Skip(long n)
      • Methods inherited from class java.io.FilterInputStream

        available, close, mark, markSupported, read, reset
      • Methods inherited from class java.io.InputStream

        nullInputStream, readAllBytes, readNBytes, readNBytes, transferTo
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • count

        protected long count
        number of bytes read or skipped
    • Constructor Detail

      • CountingInputStream

        public CountingInputStream​(java.io.InputStream _in)
        Constructor - Calls Super Class
        Parameters:
        _in - InputStream to wrap
      • CountingInputStream

        public CountingInputStream​(java.io.InputStream _in,
                                   long offset)
        Constructor - Calls Super Class
        Parameters:
        _in - InputStream to wrap
        offset - Offset in bytes for which the counter should start
    • Method Detail

      • read

        public int read()
                 throws java.io.IOException
        Reads the Next Byte from the Stream
        Overrides:
        read in class java.io.FilterInputStream
        Throws:
        java.io.IOException
      • read

        public int read​(byte[] b,
                        int off,
                        int len)
                 throws java.io.IOException
        Reads the next Byte Array with Offset and Length from the Stream
        Overrides:
        read in class java.io.FilterInputStream
        Throws:
        java.io.IOException
      • skip

        public long skip​(long n)
                  throws java.io.IOException
        Calls Skip(long n)
        Overrides:
        skip in class java.io.FilterInputStream
        Throws:
        java.io.IOException
      • getPos

        public long getPos()
        Returns the Position in the Stream
        Returns:
        Position in bytes since the start of the stream