public final class HashingSource extends ForwardingSource
hash() to compute the final hash value.
In this example we use HashingSource with a BufferedSource to make reading
from the source easier.
HashingSource hashingSource = HashingSource.sha256(rawSource);
BufferedSource bufferedSource = Okio.buffer(hashingSource);
... // Read all of bufferedSource.
ByteString hash = hashingSource.hash();
| Modifier and Type | Method and Description |
|---|---|
ByteString |
hash()
Returns the hash of the bytes supplied thus far and resets the internal state of this source.
|
static HashingSource |
md5(Source source)
Returns a sink that uses the obsolete MD5 hash algorithm.
|
long |
read(Buffer sink,
long byteCount)
Removes at least 1, and up to
byteCount bytes from this and appends
them to sink. |
static HashingSource |
sha1(Source source)
Returns a sink that uses the obsolete SHA-1 hash algorithm.
|
static HashingSource |
sha256(Source source)
Returns a sink that uses the SHA-256 hash algorithm.
|
close, delegate, timeout, toStringpublic static HashingSource md5(Source source)
public static HashingSource sha1(Source source)
public static HashingSource sha256(Source source)
public long read(Buffer sink, long byteCount) throws IOException
SourcebyteCount bytes from this and appends
them to sink. Returns the number of bytes read, or -1 if this
source is exhausted.read in interface Sourceread in class ForwardingSourceIOExceptionpublic ByteString hash()
Warning: This method is not idempotent. Each time this method is called its internal state is cleared. This starts a new hash with zero bytes supplied.
Copyright © 2016. All Rights Reserved.