Class PresignedUrlMultipartDownloaderSubscriber

java.lang.Object
software.amazon.awssdk.services.s3.internal.multipart.PresignedUrlMultipartDownloaderSubscriber
All Implemented Interfaces:
org.reactivestreams.Subscriber<AsyncResponseTransformer<GetObjectResponse,GetObjectResponse>>

@ThreadSafe @SdkInternalApi public class PresignedUrlMultipartDownloaderSubscriber extends Object implements org.reactivestreams.Subscriber<AsyncResponseTransformer<GetObjectResponse,GetObjectResponse>>
A subscriber implementation that will download all individual parts for a multipart presigned URL download request. It receives individual AsyncResponseTransformer instances which will be used to perform the individual range-based part requests using presigned URLs. This is a 'one-shot' class, it should NOT be reused for more than one multipart download.

Unlike the standard MultipartDownloaderSubscriber which uses S3's native multipart API with part numbers, this subscriber uses HTTP range requests against presigned URLs to achieve multipart download functionality.

This implementation is thread-safe and handles concurrent part downloads while maintaining proper ordering and validation of responses.