Class DefaultTransferProgress
java.lang.Object
software.amazon.awssdk.transfer.s3.internal.progress.DefaultTransferProgress
- All Implemented Interfaces:
- TransferProgress
@Mutable
@ThreadSafe
@SdkInternalApi
public final class DefaultTransferProgress
extends Object
implements TransferProgress
An SDK-internal implementation of 
TransferProgress. This implementation acts as a thin wrapper around AtomicReference, where calls to get the latest snapshot() simply return the latest reference, while TransferProgressUpdater is responsible for continuously updating the latest reference.- See Also:
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionsnapshot()Takes a snapshot of the current progress, represented by an immutableTransferProgressSnapshot.toString()Atomically convert the current snapshot reference to itsDefaultTransferProgressSnapshot.Builder, perform updates using the providedConsumer, and save the result as the latest snapshot.
- 
Constructor Details- 
DefaultTransferProgress
 
- 
- 
Method Details- 
updateAndGetpublic TransferProgressSnapshot updateAndGet(Consumer<DefaultTransferProgressSnapshot.Builder> updater) Atomically convert the current snapshot reference to itsDefaultTransferProgressSnapshot.Builder, perform updates using the providedConsumer, and save the result as the latest snapshot.
- 
snapshotDescription copied from interface:TransferProgressTakes a snapshot of the current progress, represented by an immutableTransferProgressSnapshot.- Specified by:
- snapshotin interface- TransferProgress
 
- 
toString
 
-