getBucketAccelerateConfiguration method
This implementation of the GET operation uses the accelerate
subresource to return the Transfer Acceleration state of a bucket, which
is either Enabled
or Suspended
. Amazon S3
Transfer Acceleration is a bucket-level feature that enables you to
perform faster data transfers to and from Amazon S3.
To use this operation, you must have permission to perform the
s3:GetAccelerateConfiguration
action. The bucket owner has
this permission by default. The bucket owner can grant this permission to
others. For more information about permissions, see Permissions
Related to Bucket Subresource Operations and Managing
Access Permissions to your Amazon S3 Resources in the Amazon Simple
Storage Service Developer Guide.
You set the Transfer Acceleration state of an existing bucket to
Enabled
or Suspended
by using the PutBucketAccelerateConfiguration
operation.
A GET accelerate
request does not return a state value for a
bucket that has no transfer acceleration state. A bucket has no Transfer
Acceleration state if a state has never been set on the bucket.
For more information about transfer acceleration, see Transfer Acceleration in the Amazon Simple Storage Service Developer Guide.
Related Resources
Parameter bucket
:
The name of the bucket for which the accelerate configuration is
retrieved.
Parameter expectedBucketOwner
:
The account id of the expected bucket owner. If the bucket is owned by a
different account, the request will fail with an HTTP 403 (Access
Denied)
error.
Implementation
Future<GetBucketAccelerateConfigurationOutput>
getBucketAccelerateConfiguration({
required String bucket,
String? expectedBucketOwner,
}) async {
ArgumentError.checkNotNull(bucket, 'bucket');
final headers = <String, String>{
if (expectedBucketOwner != null)
'x-amz-expected-bucket-owner': expectedBucketOwner.toString(),
};
final $result = await _protocol.send(
method: 'GET',
requestUri: '/${Uri.encodeComponent(bucket)}?accelerate',
headers: headers,
exceptionFnMap: _exceptionFns,
);
return GetBucketAccelerateConfigurationOutput.fromXml($result.body);
}