Class MultipartConfiguration

java.lang.Object
software.amazon.awssdk.services.s3.multipart.MultipartConfiguration
All Implemented Interfaces:
ToCopyableBuilder<MultipartConfiguration.Builder,MultipartConfiguration>

public final class MultipartConfiguration extends Object implements ToCopyableBuilder<MultipartConfiguration.Builder,MultipartConfiguration>
Class that hold configuration properties related to multipart operation for a S3AsyncClient. Passing this class to the S3AsyncClientBuilder.multipartConfiguration(MultipartConfiguration) will enable automatic conversion of S3AsyncClient.getObject(GetObjectRequest, AsyncResponseTransformer), S3AsyncClient.putObject(PutObjectRequest, AsyncRequestBody) and S3AsyncClient.copyObject(CopyObjectRequest) to their respective multipart operation.

Note that multipart download fetch individual part of the object using part number, this means it will only download multiple parts if the object itself was uploaded as a multipart object

  • Method Details

    • builder

      public static MultipartConfiguration.Builder builder()
    • toBuilder

      public MultipartConfiguration.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<MultipartConfiguration.Builder,MultipartConfiguration>
      Returns:
      a builder for type T
    • thresholdInBytes

      public Long thresholdInBytes()
      Indicates the value of the configured threshold, in bytes. Any request whose size is less than the configured value will not use multipart operation
      Returns:
      the value of the configured threshold.
    • minimumPartSizeInBytes

      public Long minimumPartSizeInBytes()
      Indicated the size, in bytes, of each individual part of the part requests. The actual part size used might be bigger to conforms to the maximum number of parts allowed per multipart requests.
      Returns:
      the value of the configured part size.
    • apiCallBufferSizeInBytes

      public Long apiCallBufferSizeInBytes()
      The maximum memory, in bytes, that the SDK will use to buffer requests content into memory.
      Returns:
      the value of the configured maximum memory usage.