Package io.ocfl.core.util
Class MultiDigestInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
io.ocfl.core.util.MultiDigestInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
Input stream that is able to calculate multiple digests concurrently
-
Field Summary
Fields inherited from class java.io.FilterInputStream
in
-
Method Summary
Modifier and TypeMethodDescriptionstatic MultiDigestInputStream
create
(InputStream inputStream, Collection<DigestAlgorithm> digestAlgorithms) Creates a new MultiDigestInputStreamReturns the computed digests.Methods inherited from class java.io.FilterInputStream
available, close, mark, markSupported, read, read, read, reset, skip
Methods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Method Details
-
create
public static MultiDigestInputStream create(InputStream inputStream, Collection<DigestAlgorithm> digestAlgorithms) Creates a new MultiDigestInputStream- Parameters:
inputStream
- the stream to wrapdigestAlgorithms
- the algorithms to compute- Returns:
- the wrapped stream
-
getResults
Returns the computed digests. This method should only be called ONCE after the stream has been consumed.- Returns:
- the hex encoded computed digests
-