org.jagatoo.util.streams
Class CountingOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by org.jagatoo.util.streams.CountingOutputStream
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable

public class CountingOutputStream
extends java.io.OutputStream

Counts all written bytes and if the unterlying OutputStream is not null, writes them to this stream.

Author:
Marvin Froehlich (aka Qudus)

Constructor Summary
CountingOutputStream()
           
CountingOutputStream(java.io.OutputStream out)
           
 
Method Summary
 void close()
          
 void flush()
          
 long getCount()
          Gets the number of written bytes.
 void write(byte[] b)
          
 void write(byte[] b, int off, int len)
          
 void write(int b)
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CountingOutputStream

public CountingOutputStream(java.io.OutputStream out)

CountingOutputStream

public CountingOutputStream()
Method Detail

getCount

public final long getCount()
Gets the number of written bytes.

Returns:
the number of written bytes.

write

public void write(int b)
           throws java.io.IOException

Specified by:
write in class java.io.OutputStream
Throws:
java.io.IOException

write

public void write(byte[] b,
                  int off,
                  int len)
           throws java.io.IOException

Overrides:
write in class java.io.OutputStream
Throws:
java.io.IOException

write

public void write(byte[] b)
           throws java.io.IOException

Overrides:
write in class java.io.OutputStream
Throws:
java.io.IOException

flush

public void flush()
           throws java.io.IOException

Specified by:
flush in interface java.io.Flushable
Overrides:
flush in class java.io.OutputStream
Throws:
java.io.IOException

close

public void close()
           throws java.io.IOException

Specified by:
close in interface java.io.Closeable
Overrides:
close in class java.io.OutputStream
Throws:
java.io.IOException