Path: blob/master/code_examples/java_examples/S3Examples/TransferAcceleration.java
4084 views
// Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.1// SPDX-License-Identifier: MIT-0 (For details, see https://github.com/awsdocs/amazon-s3-developer-guide/blob/master/LICENSE-SAMPLECODE.)23import com.amazonaws.AmazonServiceException;4import com.amazonaws.SdkClientException;5import com.amazonaws.auth.profile.ProfileCredentialsProvider;6import com.amazonaws.services.s3.AmazonS3;7import com.amazonaws.services.s3.AmazonS3ClientBuilder;8import com.amazonaws.services.s3.model.BucketAccelerateConfiguration;9import com.amazonaws.services.s3.model.BucketAccelerateStatus;10import com.amazonaws.services.s3.model.GetBucketAccelerateConfigurationRequest;11import com.amazonaws.services.s3.model.SetBucketAccelerateConfigurationRequest;1213public class TransferAcceleration {14public static void main(String[] args) {15String clientRegion = "*** Client region ***";16String bucketName = "*** Bucket name ***";17String keyName = "*** Key name ***";1819try {20// Create an Amazon S3 client that is configured to use the accelerate endpoint.21AmazonS3 s3Client = AmazonS3ClientBuilder.standard()22.withRegion(clientRegion)23.withCredentials(new ProfileCredentialsProvider())24.enableAccelerateMode()25.build();2627// Enable Transfer Acceleration for the specified bucket.28s3Client.setBucketAccelerateConfiguration(29new SetBucketAccelerateConfigurationRequest(bucketName,30new BucketAccelerateConfiguration(31BucketAccelerateStatus.Enabled)));3233// Verify that transfer acceleration is enabled for the bucket.34String accelerateStatus = s3Client.getBucketAccelerateConfiguration(35new GetBucketAccelerateConfigurationRequest(bucketName))36.getStatus();37System.out.println("Bucket accelerate status: " + accelerateStatus);3839// Upload a new object using the accelerate endpoint.40s3Client.putObject(bucketName, keyName, "Test object for transfer acceleration");41System.out.println("Object \"" + keyName + "\" uploaded with transfer acceleration.");42}43catch(AmazonServiceException e) {44// The call was transmitted successfully, but Amazon S3 couldn't process45// it, so it returned an error response.46e.printStackTrace();47}48catch(SdkClientException e) {49// Amazon S3 couldn't be contacted for a response, or the client50// couldn't parse the response from Amazon S3.51e.printStackTrace();52}53}54}555657