All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.xbib.io.compress.xz.CountingOutputStream Maven / Gradle / Ivy

The newest version!
package org.xbib.io.compress.xz;

import java.io.IOException;
import java.io.OutputStream;

/**
 * Counts the number of bytes written to an output stream.
 * 

* The finish method does nothing. * This is FinishableOutputStream instead * of OutputStream solely because it allows * using this as the output stream for a chain of raw filters. */ class CountingOutputStream extends FinishableOutputStream { private final OutputStream out; private long size = 0; public CountingOutputStream(OutputStream out) { this.out = out; } public void write(int b) throws IOException { out.write(b); if (size >= 0) { ++size; } } public void write(byte[] b, int off, int len) throws IOException { out.write(b, off, len); if (size >= 0) { size += len; } } public void flush() throws IOException { out.flush(); } public void close() throws IOException { out.close(); } public long getSize() { return size; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy