// ErrorMessage.java package net.sf.gogui.util; import java.io.InputStream; import java.io.IOException; public class ByteCountInputStream extends InputStream { public ByteCountInputStream(InputStream in) { m_in = in; } public long getCount() { return m_byteCount; } public int read() throws IOException { int result = m_in.read(); if (result > 0) ++m_byteCount; return result; } public int read(byte[] b) throws IOException { int result = m_in.read(b); if (result > 0) m_byteCount += result; return result; } public int read(byte[] b, int off, int len) throws IOException { int result = m_in.read(b, off, len); if (result > 0) m_byteCount += result; return result; } private long m_byteCount; private final InputStream m_in; }