Class ChecksumCalculatingInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
software.amazon.awssdk.services.s3.internal.checksums.ChecksumCalculatingInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
-
Constructor Summary
ConstructorsConstructorDescriptionChecksumCalculatingInputStream
(InputStream in, SdkChecksum cksum) Creates an input stream using the specified Checksum. -
Method Summary
Methods inherited from class java.io.FilterInputStream
available, close, mark, markSupported, read, skip
-
Constructor Details
-
ChecksumCalculatingInputStream
Creates an input stream using the specified Checksum.- Parameters:
in
- the input stream to readcksum
- the Checksum implementation to use for computing the checksum
-
-
Method Details
-
read
Reads from the underlying stream. If the end of the stream is reached, the running checksum will be appended a byte at a time (1 per read call).- Overrides:
read
in classFilterInputStream
- Returns:
- byte read, if eos has been reached, -1 will be returned.
- Throws:
IOException
-
read
Reads up to len bytes at a time from the input stream, updates the checksum. If the end of the stream has been reached the checksum will be appended to the last 4 bytes.- Overrides:
read
in classFilterInputStream
- Parameters:
buf
- buffer to write intooff
- offset in the buffer to write tolen
- maximum number of bytes to attempt to read.- Returns:
- number of bytes written into buf, otherwise -1 will be returned to indicate eos.
- Throws:
IOException
-
reset
Resets stream state, including the running checksum.- Overrides:
reset
in classFilterInputStream
- Throws:
IOException
-
getChecksumBytes
public byte[] getChecksumBytes()
-