Interface TransferProgressSnapshot
- All Known Implementing Classes:
- DefaultTransferProgressSnapshot
TransferProgressSnapshot is an immutable, point-in-time representation of the progress of a given transfer
 initiated by S3TransferManager. TransferProgressSnapshot offers several helpful methods for checking the
 progress of a transfer, like transferredBytes() and ratioTransferred().
 
 TransferProgressSnapshot's methods that return Optional are dependent upon the size of a transfer (i.e., the
 Content-Length) being known. In the case of file-based FileUploads, transfer sizes are known up front and
 immediately available. In the case of Downloads, the transfer size is not known until S3TransferManager
 receives a GetObjectResponse from Amazon S3.
 
 The recommended way to receive updates of the latest TransferProgressSnapshot is to implement the TransferListener interface. See the TransferListener documentation for usage instructions. A TransferProgressSnapshot can also be obtained from a TransferProgress returned as part of the result from a TransferRequest.
- See Also:
- 
Method SummaryModifier and TypeMethodDescriptionThe ratio of thetotalBytes()that has been transferred so far, orOptional.empty()if unknown.The total number of bytes that are remaining to be transferred, orOptional.empty()if unknown.The SDK response, orOptional.empty()if unknown.The total size of the transfer, in bytes, orOptional.empty()if unknown.longThe total number of bytes that have been transferred so far.
- 
Method Details- 
transferredByteslong transferredBytes()The total number of bytes that have been transferred so far.
- 
totalBytesOptionalLong totalBytes()The total size of the transfer, in bytes, orOptional.empty()if unknown.In the case of file-based FileUploads, transfer sizes are known up front and immediately available. In the case ofDownloads, the transfer size is not known untilS3TransferManagerreceives aGetObjectResponsefrom Amazon S3.
- 
sdkResponseOptional<SdkResponse> sdkResponse()The SDK response, orOptional.empty()if unknown.In the case of Download, the response isGetObjectResponse, and the response is known before it starts streaming. In the case ofUpload, the response isPutObjectResponse, and the response is not known until streaming finishes.
- 
ratioTransferredOptionalDouble ratioTransferred()The ratio of thetotalBytes()that has been transferred so far, orOptional.empty()if unknown. This method depends on thetotalBytes()being known in order to return non-empty.Ratio is computed as transferredBytes()/totalBytes(), where a transfer that is half-complete would return0.5.- See Also:
 
- 
remainingBytesOptionalLong remainingBytes()The total number of bytes that are remaining to be transferred, orOptional.empty()if unknown. This method depends on thetotalBytes()being known in order to return non-empty.- See Also:
 
 
-