@Beta public final class HashingOutputStream extends FilterOutputStream
OutputStream that maintains a hash of the data written to it.out| Constructor and Description |
|---|
HashingOutputStream(HashFunction hashFunction,
OutputStream out)
Creates an output stream that hashes using the given
HashFunction, and forwards all
data written to it to the underlying OutputStream. |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Closes this output stream and releases any system resources
associated with the stream.
|
HashCode |
hash()
Returns the
HashCode based on the data written to this stream. |
void |
write(byte[] bytes,
int off,
int len)
Writes
len bytes from the specified
byte array starting at offset off to
this output stream. |
void |
write(int b)
Writes the specified
byte to this output stream. |
flush, writepublic HashingOutputStream(HashFunction hashFunction, OutputStream out)
HashFunction, and forwards all
data written to it to the underlying OutputStream.
The OutputStream should not be written to before or after the hand-off.
public void write(int b) throws IOException
java.io.FilterOutputStreambyte to this output stream.
The write method of FilterOutputStream
calls the write method of its underlying output stream,
that is, it performs out.write(b).
Implements the abstract write method of OutputStream.
write in class FilterOutputStreamb - the byte.IOException - if an I/O error occurs.public void write(byte[] bytes, int off, int len) throws IOException
java.io.FilterOutputStreamlen bytes from the specified
byte array starting at offset off to
this output stream.
The write method of FilterOutputStream
calls the write method of one argument on each
byte to output.
Note that this method does not call the write method
of its underlying input stream with the same arguments. Subclasses
of FilterOutputStream should provide a more efficient
implementation of this method.
write in class FilterOutputStreambytes - the data.off - the start offset in the data.len - the number of bytes to write.IOException - if an I/O error occurs.FilterOutputStream.write(int)public HashCode hash()
HashCode based on the data written to this stream. The result is
unspecified if this method is called more than once on the same instance.public void close() throws IOException
java.io.FilterOutputStream
The close method of FilterOutputStream
calls its flush method, and then calls the
close method of its underlying output stream.
close in interface Closeableclose in interface AutoCloseableclose in class FilterOutputStreamIOException - if an I/O error occurs.FilterOutputStream.flush(),
FilterOutputStream.outCopyright © 2010–2019. All rights reserved.