AWS SDK

AWS SDK

rev. f50aa8c7588f148ef5f1d01ff1bfa3ac2f1cbded

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/list_bucket_intelligent_tiering_configurations.rs

@@ -1,1 +22,21 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`ListBucketIntelligentTieringConfigurations`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.</p><br>
    7      7   
    ///   - [`continuation_token(impl Into<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::continuation_token) / [`set_continuation_token(Option<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::set_continuation_token):<br>required: **false**<br><p>The <code>ContinuationToken</code> that represents a placeholder from where this request should begin.</p><br>
    8         -
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
    9      8   
    /// - On success, responds with [`ListBucketIntelligentTieringConfigurationsOutput`](crate::operation::list_bucket_intelligent_tiering_configurations::ListBucketIntelligentTieringConfigurationsOutput) with field(s):
   10      9   
    ///   - [`is_truncated(Option<bool>)`](crate::operation::list_bucket_intelligent_tiering_configurations::ListBucketIntelligentTieringConfigurationsOutput::is_truncated): <p>Indicates whether the returned list of analytics configurations is complete. A value of <code>true</code> indicates that the list is not complete and the <code>NextContinuationToken</code> will be provided for a subsequent request.</p>
   11     10   
    ///   - [`continuation_token(Option<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::ListBucketIntelligentTieringConfigurationsOutput::continuation_token): <p>The <code>ContinuationToken</code> that represents a placeholder from where this request should begin.</p>
   12     11   
    ///   - [`next_continuation_token(Option<String>)`](crate::operation::list_bucket_intelligent_tiering_configurations::ListBucketIntelligentTieringConfigurationsOutput::next_continuation_token): <p>The marker used to continue this inventory configuration listing. Use the <code>NextContinuationToken</code> from this response to continue the listing in a subsequent request. The continuation token is an opaque value that Amazon S3 understands.</p>
   13     12   
    ///   - [`intelligent_tiering_configuration_list(Option<Vec::<IntelligentTieringConfiguration>>)`](crate::operation::list_bucket_intelligent_tiering_configurations::ListBucketIntelligentTieringConfigurationsOutput::intelligent_tiering_configuration_list): <p>The list of S3 Intelligent-Tiering configurations for a bucket.</p>
   14     13   
    /// - On failure, responds with [`SdkError<ListBucketIntelligentTieringConfigurationsError>`](crate::operation::list_bucket_intelligent_tiering_configurations::ListBucketIntelligentTieringConfigurationsError)
   15     14   
    pub fn list_bucket_intelligent_tiering_configurations(
   16     15   
        &self,
   17     16   
    ) -> crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder {
   18     17   
        crate::operation::list_bucket_intelligent_tiering_configurations::builders::ListBucketIntelligentTieringConfigurationsFluentBuilder::new(

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/list_multipart_uploads.rs

@@ -1,1 +33,33 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`ListMultipartUploads`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the bucket to which the multipart upload was initiated.</p> <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>Object Lambda access points are not supported by directory buckets.</p> </note> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    7         -
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_delimiter):<br>required: **false**<br><p>Character you use to group keys.</p> <p>All keys that contain the same string between the prefix, if specified, and the first occurrence of the delimiter after the prefix are grouped under a single result element, <code>CommonPrefixes</code>. If you don't specify the prefix parameter, then the substring starts at the beginning of the key. The keys that are grouped under <code>CommonPrefixes</code> result element are not returned elsewhere in the response.</p> <p><code>CommonPrefixes</code> is filtered out from results if it is not lexicographically greater than the key-marker.</p><note>  <p><b>Directory buckets</b> - For directory buckets, <code>/</code> is the only supported delimiter.</p> </note><br>
           7  +
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_delimiter):<br>required: **false**<br><p>Character you use to group keys.</p> <p>All keys that contain the same string between the prefix, if specified, and the first occurrence of the delimiter after the prefix are grouped under a single result element, <code>CommonPrefixes</code>. If you don't specify the prefix parameter, then the substring starts at the beginning of the key. The keys that are grouped under <code>CommonPrefixes</code> result element are not returned elsewhere in the response.</p><note>  <p><b>Directory buckets</b> - For directory buckets, <code>/</code> is the only supported delimiter.</p> </note><br>
    8      8   
    ///   - [`encoding_type(EncodingType)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::encoding_type) / [`set_encoding_type(Option<EncodingType>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_encoding_type):<br>required: **false**<br><p>Encoding type used by Amazon S3 to encode the <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html">object keys</a> in the response. Responses are encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response. For more information about characters to avoid in object key names, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines">Object key naming guidelines</a>.</p><note>  <p>When using the URL encoding type, non-ASCII characters that are used in an object's key name will be percent-encoded according to UTF-8 code values. For example, the object <code>test_file(3).png</code> will appear as <code>test_file%283%29.png</code>.</p> </note><br>
    9      9   
    ///   - [`key_marker(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::key_marker) / [`set_key_marker(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_key_marker):<br>required: **false**<br><p>Specifies the multipart upload after which listing should begin.</p><note>  <ul>   <li>    <p><b>General purpose buckets</b> - For general purpose buckets, <code>key-marker</code> is an object key. Together with <code>upload-id-marker</code>, this parameter specifies the multipart upload after which listing should begin.</p>    <p>If <code>upload-id-marker</code> is not specified, only the keys lexicographically greater than the specified <code>key-marker</code> will be included in the list.</p>    <p>If <code>upload-id-marker</code> is specified, any multipart uploads for a key equal to the <code>key-marker</code> might also be included, provided those multipart uploads have upload IDs lexicographically greater than the specified <code>upload-id-marker</code>.</p></li>   <li>    <p><b>Directory buckets</b> - For directory buckets, <code>key-marker</code> is obfuscated and isn't a real object key. The <code>upload-id-marker</code> parameter isn't supported by directory buckets. To list the additional multipart uploads, you only need to set the value of <code>key-marker</code> to the <code>NextKeyMarker</code> value from the previous response.</p>    <p>In the <code>ListMultipartUploads</code> response, the multipart uploads aren't sorted lexicographically based on the object keys.</p></li>  </ul> </note><br>
   10     10   
    ///   - [`max_uploads(i32)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::max_uploads) / [`set_max_uploads(Option<i32>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_max_uploads):<br>required: **false**<br><p>Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the response body. 1,000 is the maximum number of uploads that can be returned in a response.</p><br>
   11     11   
    ///   - [`prefix(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::prefix) / [`set_prefix(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_prefix):<br>required: **false**<br><p>Lists in-progress uploads only for those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different grouping of keys. (You can think of using <code>prefix</code> to make groups in the same way that you'd use a folder in a file system.)</p><note>  <p><b>Directory buckets</b> - For directory buckets, only prefixes that end in a delimiter (<code>/</code>) are supported.</p> </note><br>
   12     12   
    ///   - [`upload_id_marker(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::upload_id_marker) / [`set_upload_id_marker(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_upload_id_marker):<br>required: **false**<br><p>Together with key-marker, specifies the multipart upload after which listing should begin. If key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads for a key equal to the key-marker might be included in the list only if they have an upload ID lexicographically greater than the specified <code>upload-id-marker</code>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   13     13   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   14     14   
    ///   - [`request_payer(RequestPayer)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::list_multipart_uploads::builders::ListMultipartUploadsFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   15     15   
    /// - On success, responds with [`ListMultipartUploadsOutput`](crate::operation::list_multipart_uploads::ListMultipartUploadsOutput) with field(s):
   16     16   
    ///   - [`bucket(Option<String>)`](crate::operation::list_multipart_uploads::ListMultipartUploadsOutput::bucket): <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
   17     17   
    ///   - [`key_marker(Option<String>)`](crate::operation::list_multipart_uploads::ListMultipartUploadsOutput::key_marker): <p>The key at or after which the listing began.</p>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/list_object_versions.rs

@@ -1,1 +35,35 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`ListObjectVersions`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name that contains the objects.</p><br>
    7         -
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_delimiter):<br>required: **false**<br><p>A delimiter is a character that you specify to group keys. All keys that contain the same string between the <code>prefix</code> and the first occurrence of the delimiter are grouped under a single result element in <code>CommonPrefixes</code>. These groups are counted as one result against the <code>max-keys</code> limitation. These keys are not returned elsewhere in the response.</p> <p><code>CommonPrefixes</code> is filtered out from results if it is not lexicographically greater than the key-marker.</p><br>
           7  +
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_delimiter):<br>required: **false**<br><p>A delimiter is a character that you specify to group keys. All keys that contain the same string between the <code>prefix</code> and the first occurrence of the delimiter are grouped under a single result element in <code>CommonPrefixes</code>. These groups are counted as one result against the <code>max-keys</code> limitation. These keys are not returned elsewhere in the response.</p><br>
    8      8   
    ///   - [`encoding_type(EncodingType)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::encoding_type) / [`set_encoding_type(Option<EncodingType>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_encoding_type):<br>required: **false**<br><p>Encoding type used by Amazon S3 to encode the <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html">object keys</a> in the response. Responses are encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response. For more information about characters to avoid in object key names, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines">Object key naming guidelines</a>.</p><note>  <p>When using the URL encoding type, non-ASCII characters that are used in an object's key name will be percent-encoded according to UTF-8 code values. For example, the object <code>test_file(3).png</code> will appear as <code>test_file%283%29.png</code>.</p> </note><br>
    9      9   
    ///   - [`key_marker(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::key_marker) / [`set_key_marker(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_key_marker):<br>required: **false**<br><p>Specifies the key to start with when listing objects in a bucket.</p><br>
   10     10   
    ///   - [`max_keys(i32)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::max_keys) / [`set_max_keys(Option<i32>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_max_keys):<br>required: **false**<br><p>Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more. If additional keys satisfy the search criteria, but were not returned because <code>max-keys</code> was exceeded, the response contains <code><istruncated>    true   </istruncated></code>. To return the additional keys, see <code>key-marker</code> and <code>version-id-marker</code>.</p><br>
   11     11   
    ///   - [`prefix(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::prefix) / [`set_prefix(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_prefix):<br>required: **false**<br><p>Use this parameter to select only those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different groupings of keys. (You can think of using <code>prefix</code> to make groups in the same way that you'd use a folder in a file system.) You can use <code>prefix</code> with <code>delimiter</code> to roll up numerous objects into a single result under <code>CommonPrefixes</code>.</p><br>
   12     12   
    ///   - [`version_id_marker(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::version_id_marker) / [`set_version_id_marker(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_version_id_marker):<br>required: **false**<br><p>Specifies the object version you want to start listing from.</p><br>
   13     13   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   14     14   
    ///   - [`request_payer(RequestPayer)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   15     15   
    ///   - [`optional_object_attributes(OptionalObjectAttributes)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::optional_object_attributes) / [`set_optional_object_attributes(Option<Vec::<OptionalObjectAttributes>>)`](crate::operation::list_object_versions::builders::ListObjectVersionsFluentBuilder::set_optional_object_attributes):<br>required: **false**<br><p>Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.</p><br>
   16     16   
    /// - On success, responds with [`ListObjectVersionsOutput`](crate::operation::list_object_versions::ListObjectVersionsOutput) with field(s):
   17     17   
    ///   - [`is_truncated(Option<bool>)`](crate::operation::list_object_versions::ListObjectVersionsOutput::is_truncated): <p>A flag that indicates whether Amazon S3 returned all of the results that satisfied the search criteria. If your results were truncated, you can make a follow-up paginated request by using the <code>NextKeyMarker</code> and <code>NextVersionIdMarker</code> response parameters as a starting place in another request to return the rest of the results.</p>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/list_objects.rs

@@ -1,1 +31,31 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`ListObjects`](crate::operation::list_objects::builders::ListObjectsFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the bucket containing the objects.</p> <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>Object Lambda access points are not supported by directory buckets.</p> </note> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    7         -
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_delimiter):<br>required: **false**<br><p>A delimiter is a character that you use to group keys.</p> <p><code>CommonPrefixes</code> is filtered out from results if it is not lexicographically greater than the key-marker.</p><br>
           7  +
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_delimiter):<br>required: **false**<br><p>A delimiter is a character that you use to group keys.</p><br>
    8      8   
    ///   - [`encoding_type(EncodingType)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::encoding_type) / [`set_encoding_type(Option<EncodingType>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_encoding_type):<br>required: **false**<br><p>Encoding type used by Amazon S3 to encode the <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html">object keys</a> in the response. Responses are encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response. For more information about characters to avoid in object key names, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines">Object key naming guidelines</a>.</p><note>  <p>When using the URL encoding type, non-ASCII characters that are used in an object's key name will be percent-encoded according to UTF-8 code values. For example, the object <code>test_file(3).png</code> will appear as <code>test_file%283%29.png</code>.</p> </note><br>
    9      9   
    ///   - [`marker(impl Into<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::marker) / [`set_marker(Option<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_marker):<br>required: **false**<br><p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. Marker can be any key in the bucket.</p><br>
   10     10   
    ///   - [`max_keys(i32)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::max_keys) / [`set_max_keys(Option<i32>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_max_keys):<br>required: **false**<br><p>Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.</p><br>
   11     11   
    ///   - [`prefix(impl Into<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::prefix) / [`set_prefix(Option<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_prefix):<br>required: **false**<br><p>Limits the response to keys that begin with the specified prefix.</p><br>
   12     12   
    ///   - [`request_payer(RequestPayer)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that she or he will be charged for the list objects request. Bucket owners need not specify this parameter in their requests.</p><br>
   13     13   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   14     14   
    ///   - [`optional_object_attributes(OptionalObjectAttributes)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::optional_object_attributes) / [`set_optional_object_attributes(Option<Vec::<OptionalObjectAttributes>>)`](crate::operation::list_objects::builders::ListObjectsFluentBuilder::set_optional_object_attributes):<br>required: **false**<br><p>Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.</p><br>
   15     15   
    /// - On success, responds with [`ListObjectsOutput`](crate::operation::list_objects::ListObjectsOutput) with field(s):
   16     16   
    ///   - [`is_truncated(Option<bool>)`](crate::operation::list_objects::ListObjectsOutput::is_truncated): <p>A flag that indicates whether Amazon S3 returned all of the results that satisfied the search criteria.</p>
   17     17   
    ///   - [`marker(Option<String>)`](crate::operation::list_objects::ListObjectsOutput::marker): <p>Indicates where in the bucket listing begins. Marker is included in the response if it was sent with the request.</p>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/list_objects_v2.rs

@@ -1,1 +36,36 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`ListObjectsV2`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder) operation.
    4      4   
    /// This operation supports pagination; See [`into_paginator()`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::into_paginator).
    5      5   
    ///
    6      6   
    /// - The fluent builder is configurable:
    7      7   
    ///   - [`bucket(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_bucket):<br>required: **true**<br><p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>Object Lambda access points are not supported by directory buckets.</p> </note> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    8         -
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_delimiter):<br>required: **false**<br><p>A delimiter is a character that you use to group keys.</p> <p><code>CommonPrefixes</code> is filtered out from results if it is not lexicographically greater than the <code>StartAfter</code> value.</p><note>  <ul>   <li>    <p><b>Directory buckets</b> - For directory buckets, <code>/</code> is the only supported delimiter.</p></li>   <li>    <p><b>Directory buckets </b> - When you query <code>ListObjectsV2</code> with a delimiter during in-progress multipart uploads, the <code>CommonPrefixes</code> response parameter contains the prefixes that are associated with the in-progress multipart uploads. For more information about multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart Upload Overview</a> in the <i>Amazon S3 User Guide</i>.</p></li>  </ul> </note><br>
           8  +
    ///   - [`delimiter(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::delimiter) / [`set_delimiter(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_delimiter):<br>required: **false**<br><p>A delimiter is a character that you use to group keys.</p><note>  <ul>   <li>    <p><b>Directory buckets</b> - For directory buckets, <code>/</code> is the only supported delimiter.</p></li>   <li>    <p><b>Directory buckets </b> - When you query <code>ListObjectsV2</code> with a delimiter during in-progress multipart uploads, the <code>CommonPrefixes</code> response parameter contains the prefixes that are associated with the in-progress multipart uploads. For more information about multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart Upload Overview</a> in the <i>Amazon S3 User Guide</i>.</p></li>  </ul> </note><br>
    9      9   
    ///   - [`encoding_type(EncodingType)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::encoding_type) / [`set_encoding_type(Option<EncodingType>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_encoding_type):<br>required: **false**<br><p>Encoding type used by Amazon S3 to encode the <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html">object keys</a> in the response. Responses are encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response. For more information about characters to avoid in object key names, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines">Object key naming guidelines</a>.</p><note>  <p>When using the URL encoding type, non-ASCII characters that are used in an object's key name will be percent-encoded according to UTF-8 code values. For example, the object <code>test_file(3).png</code> will appear as <code>test_file%283%29.png</code>.</p> </note><br>
   10     10   
    ///   - [`max_keys(i32)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::max_keys) / [`set_max_keys(Option<i32>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_max_keys):<br>required: **false**<br><p>Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.</p><br>
   11     11   
    ///   - [`prefix(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::prefix) / [`set_prefix(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_prefix):<br>required: **false**<br><p>Limits the response to keys that begin with the specified prefix.</p><note>  <p><b>Directory buckets</b> - For directory buckets, only prefixes that end in a delimiter (<code>/</code>) are supported.</p> </note><br>
   12     12   
    ///   - [`continuation_token(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::continuation_token) / [`set_continuation_token(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_continuation_token):<br>required: **false**<br><p><code>ContinuationToken</code> indicates to Amazon S3 that the list is being continued on this bucket with a token. <code>ContinuationToken</code> is obfuscated and is not a real key. You can use this <code>ContinuationToken</code> for pagination of the list results.</p><br>
   13     13   
    ///   - [`fetch_owner(bool)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::fetch_owner) / [`set_fetch_owner(Option<bool>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_fetch_owner):<br>required: **false**<br><p>The owner field is not present in <code>ListObjectsV2</code> by default. If you want to return the owner field with each key in the result, then set the <code>FetchOwner</code> field to <code>true</code>.</p><note>  <p><b>Directory buckets</b> - For directory buckets, the bucket owner is returned as the object owner for all objects.</p> </note><br>
   14     14   
    ///   - [`start_after(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::start_after) / [`set_start_after(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_start_after):<br>required: **false**<br><p>StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   15     15   
    ///   - [`request_payer(RequestPayer)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that she or he will be charged for the list objects request in V2 style. Bucket owners need not specify this parameter in their requests.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   16     16   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   17     17   
    ///   - [`optional_object_attributes(OptionalObjectAttributes)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::optional_object_attributes) / [`set_optional_object_attributes(Option<Vec::<OptionalObjectAttributes>>)`](crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::set_optional_object_attributes):<br>required: **false**<br><p>Specifies the optional fields that you want returned in the response. Fields that you do not specify are not returned.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   18     18   
    /// - On success, responds with [`ListObjectsV2Output`](crate::operation::list_objects_v2::ListObjectsV2Output) with field(s):
   19     19   
    ///   - [`is_truncated(Option<bool>)`](crate::operation::list_objects_v2::ListObjectsV2Output::is_truncated): <p>Set to <code>false</code> if all of the results were returned. Set to <code>true</code> if more keys are available to return. If the number of results exceeds that specified by <code>MaxKeys</code>, all of the results might not be returned.</p>
   20     20   
    ///   - [`contents(Option<Vec::<Object>>)`](crate::operation::list_objects_v2::ListObjectsV2Output::contents): <p>Metadata about each object returned.</p>
   21     21   
    ///   - [`name(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::name): <p>The bucket name.</p>
   22     22   
    ///   - [`prefix(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::prefix): <p>Keys that begin with the indicated prefix.</p><note>  <p><b>Directory buckets</b> - For directory buckets, only prefixes that end in a delimiter (<code>/</code>) are supported.</p> </note>
   23     23   
    ///   - [`delimiter(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::delimiter): <p>Causes keys that contain the same string between the <code>prefix</code> and the first occurrence of the delimiter to be rolled up into a single result element in the <code>CommonPrefixes</code> collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the <code>MaxKeys</code> value.</p><note>  <p><b>Directory buckets</b> - For directory buckets, <code>/</code> is the only supported delimiter.</p> </note>
   24     24   
    ///   - [`max_keys(Option<i32>)`](crate::operation::list_objects_v2::ListObjectsV2Output::max_keys): <p>Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.</p>
   25     25   
    ///   - [`common_prefixes(Option<Vec::<CommonPrefix>>)`](crate::operation::list_objects_v2::ListObjectsV2Output::common_prefixes): <p>All of the keys (up to 1,000) that share the same prefix are grouped together. When counting the total numbers of returns by this API operation, this group of keys is considered as one item.</p> <p>A response can contain <code>CommonPrefixes</code> only if you specify a delimiter.</p> <p><code>CommonPrefixes</code> contains all (if there are any) keys between <code>Prefix</code> and the next occurrence of the string specified by a delimiter.</p> <p><code>CommonPrefixes</code> lists keys that act like subdirectories in the directory specified by <code>Prefix</code>.</p> <p>For example, if the prefix is <code>notes/</code> and the delimiter is a slash (<code>/</code>) as in <code>notes/summer/july</code>, the common prefix is <code>notes/summer/</code>. All of the keys that roll up into a common prefix count as a single return when calculating the number of returns.</p><note>  <ul>   <li>    <p><b>Directory buckets</b> - For directory buckets, only prefixes that end in a delimiter (<code>/</code>) are supported.</p></li>   <li>    <p><b>Directory buckets </b> - When you query <code>ListObjectsV2</code> with a delimiter during in-progress multipart uploads, the <code>CommonPrefixes</code> response parameter contains the prefixes that are associated with the in-progress multipart uploads. For more information about multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart Upload Overview</a> in the <i>Amazon S3 User Guide</i>.</p></li>  </ul> </note>
   26     26   
    ///   - [`encoding_type(Option<EncodingType>)`](crate::operation::list_objects_v2::ListObjectsV2Output::encoding_type): <p>Encoding type used by Amazon S3 to encode object key names in the XML response.</p> <p>If you specify the <code>encoding-type</code> request parameter, Amazon S3 includes this element in the response, and returns encoded key name values in the following response elements:</p> <p><code>Delimiter, Prefix, Key,</code> and <code>StartAfter</code>.</p>
   27     27   
    ///   - [`key_count(Option<i32>)`](crate::operation::list_objects_v2::ListObjectsV2Output::key_count): <p><code>KeyCount</code> is the number of keys returned with this request. <code>KeyCount</code> will always be less than or equal to the <code>MaxKeys</code> field. For example, if you ask for 50 keys, your result will include 50 keys or fewer.</p>
   28         -
    ///   - [`continuation_token(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::continuation_token): <p>If <code>ContinuationToken</code> was sent with the request, it is included in the response. You can use the returned <code>ContinuationToken</code> for pagination of the list response.</p>
          28  +
    ///   - [`continuation_token(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::continuation_token): <p>If <code>ContinuationToken</code> was sent with the request, it is included in the response. You can use the returned <code>ContinuationToken</code> for pagination of the list response. You can use this <code>ContinuationToken</code> for pagination of the list results.</p>
   29     29   
    ///   - [`next_continuation_token(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::next_continuation_token): <p><code>NextContinuationToken</code> is sent when <code>isTruncated</code> is true, which means there are more keys in the bucket that can be listed. The next list requests to Amazon S3 can be continued with this <code>NextContinuationToken</code>. <code>NextContinuationToken</code> is obfuscated and is not a real key</p>
   30     30   
    ///   - [`start_after(Option<String>)`](crate::operation::list_objects_v2::ListObjectsV2Output::start_after): <p>If StartAfter was sent with the request, it is included in the response.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   31     31   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::list_objects_v2::ListObjectsV2Output::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   32     32   
    /// - On failure, responds with [`SdkError<ListObjectsV2Error>`](crate::operation::list_objects_v2::ListObjectsV2Error)
   33     33   
    pub fn list_objects_v2(&self) -> crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder {
   34     34   
        crate::operation::list_objects_v2::builders::ListObjectsV2FluentBuilder::new(self.handle.clone())
   35     35   
    }
   36     36   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/put_bucket_intelligent_tiering_configuration.rs

@@ -1,1 +19,18 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`PutBucketIntelligentTieringConfiguration`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.</p><br>
    7      7   
    ///   - [`id(impl Into<String>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::id) / [`set_id(Option<String>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::set_id):<br>required: **true**<br><p>The ID used to identify the S3 Intelligent-Tiering configuration.</p><br>
    8         -
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
    9      8   
    ///   - [`intelligent_tiering_configuration(IntelligentTieringConfiguration)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::intelligent_tiering_configuration) / [`set_intelligent_tiering_configuration(Option<IntelligentTieringConfiguration>)`](crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::set_intelligent_tiering_configuration):<br>required: **true**<br><p>Container for S3 Intelligent-Tiering configuration.</p><br>
   10      9   
    /// - On success, responds with [`PutBucketIntelligentTieringConfigurationOutput`](crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationOutput)
   11     10   
    /// - On failure, responds with [`SdkError<PutBucketIntelligentTieringConfigurationError>`](crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationError)
   12     11   
    pub fn put_bucket_intelligent_tiering_configuration(
   13     12   
        &self,
   14     13   
    ) -> crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder {
   15     14   
        crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationFluentBuilder::new(
   16     15   
            self.handle.clone(),
   17     16   
        )
   18     17   
    }

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/put_object.rs

@@ -1,1 +69,68 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`PutObject`](crate::operation::put_object::builders::PutObjectFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`acl(ObjectCannedAcl)`](crate::operation::put_object::builders::PutObjectFluentBuilder::acl) / [`set_acl(Option<ObjectCannedAcl>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_acl):<br>required: **false**<br><p>The canned ACL to apply to the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned ACL</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When adding a new object, you can use headers to grant ACL-based permissions to individual Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are then added to the ACL on the object. By default, all objects are private. Only the owner has full access control. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access Control List (ACL) Overview</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing ACLs Using the REST API</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If the bucket that you're uploading objects to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting only accept PUT requests that don't specify an ACL or PUT requests that specify bucket owner full control ACLs, such as the <code>bucket-owner-full-control</code> canned ACL or an equivalent form of this ACL expressed in the XML format. PUT requests that contain other ACLs (for example, custom grants to certain Amazon Web Services accounts) fail and return a <code>400</code> error with the error code <code>AccessControlListNotSupported</code>. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling ownership of objects and disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <ul>   <li>    <p>This functionality is not supported for directory buckets.</p></li>   <li>    <p>This functionality is not supported for Amazon S3 on Outposts.</p></li>  </ul> </note><br>
    7         -
    ///   - [`body(ByteStream)`](crate::operation::put_object::builders::PutObjectFluentBuilder::body) / [`set_body(ByteStream)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_body):<br>required: **false**<br><p>Object data.</p><br>
    8      7   
    ///   - [`bucket(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name to which the PUT action was initiated.</p> <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>Object Lambda access points are not supported by directory buckets.</p> </note> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    9      8   
    ///   - [`cache_control(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::cache_control) / [`set_cache_control(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_cache_control):<br>required: **false**<br><p>Can be used to specify caching behavior along the request/reply chain. For more information, see <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9</a>.</p><br>
   10      9   
    ///   - [`content_disposition(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::content_disposition) / [`set_content_disposition(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_content_disposition):<br>required: **false**<br><p>Specifies presentational information for the object. For more information, see <a href="https://www.rfc-editor.org/rfc/rfc6266#section-4">https://www.rfc-editor.org/rfc/rfc6266#section-4</a>.</p><br>
   11     10   
    ///   - [`content_encoding(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::content_encoding) / [`set_content_encoding(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_content_encoding):<br>required: **false**<br><p>Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. For more information, see <a href="https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding">https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding</a>.</p><br>
   12     11   
    ///   - [`content_language(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::content_language) / [`set_content_language(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_content_language):<br>required: **false**<br><p>The language the content is in.</p><br>
   13     12   
    ///   - [`content_length(i64)`](crate::operation::put_object::builders::PutObjectFluentBuilder::content_length) / [`set_content_length(Option<i64>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_content_length):<br>required: **false**<br><p>Size of the body in bytes. This parameter is useful when the size of the body cannot be determined automatically. For more information, see <a href="https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length">https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length</a>.</p><br>
   14     13   
    ///   - [`content_md5(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_content_md5):<br>required: **false**<br><p>The Base64 encoded 128-bit <code>MD5</code> digest of the message (without the headers) according to RFC 1864. This header can be used as a message integrity check to verify that the data is the same data that was originally sent. Although it is optional, we recommend using the Content-MD5 mechanism as an end-to-end integrity check. For more information about REST request authentication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST Authentication</a>.</p><note>  <p>The <code>Content-MD5</code> or <code>x-amz-sdk-checksum-algorithm</code> header is required for any request to upload an object with a retention period configured using Amazon S3 Object Lock. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-managing.html#object-lock-put-object">Uploading objects to an Object Lock enabled bucket </a> in the <i>Amazon S3 User Guide</i>.</p> </note> <note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   15     14   
    ///   - [`content_type(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::content_type) / [`set_content_type(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_content_type):<br>required: **false**<br><p>A standard MIME type describing the format of the contents. For more information, see <a href="https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type">https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type</a>.</p><br>
   16     15   
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::put_object::builders::PutObjectFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum-<i>algorithm</i> </code> or <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>.</p> <p>For the <code>x-amz-checksum-<i>algorithm</i> </code> header, replace <code> <i>algorithm</i> </code> with the supported algorithm from the following list:</p> <ul>  <li>   <p><code>CRC32</code></p></li>  <li>   <p><code>CRC32C</code></p></li>  <li>   <p><code>CRC64NVME</code></p></li>  <li>   <p><code>SHA1</code></p></li>  <li>   <p><code>SHA256</code></p></li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If the individual checksum value you provide through <code>x-amz-checksum-<i>algorithm</i> </code> doesn't match the checksum algorithm you set through <code>x-amz-sdk-checksum-algorithm</code>, Amazon S3 fails the request with a <code>BadDigest</code> error.</p><note>  <p>The <code>Content-MD5</code> or <code>x-amz-sdk-checksum-algorithm</code> header is required for any request to upload an object with a retention period configured using Amazon S3 Object Lock. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-managing.html#object-lock-put-object">Uploading objects to an Object Lock enabled bucket </a> in the <i>Amazon S3 User Guide</i>.</p> </note> <p>For directory buckets, when you use Amazon Web Services SDKs, <code>CRC32</code> is the default checksum algorithm that's used for performance.</p><br>
   17     16   
    ///   - [`checksum_crc32(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::checksum_crc32) / [`set_checksum_crc32(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_checksum_crc32):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 32-bit <code>CRC32</code> checksum of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   18     17   
    ///   - [`checksum_crc32_c(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::checksum_crc32_c) / [`set_checksum_crc32_c(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_checksum_crc32_c):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   19     18   
    ///   - [`checksum_crc64_nvme(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::checksum_crc64_nvme) / [`set_checksum_crc64_nvme(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_checksum_crc64_nvme):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. The <code>CRC64NVME</code> checksum is always a full object checksum. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p><br>
   20     19   
    ///   - [`checksum_sha1(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::checksum_sha1) / [`set_checksum_sha1(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_checksum_sha1):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 160-bit <code>SHA1</code> digest of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   21     20   
    ///   - [`checksum_sha256(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::checksum_sha256) / [`set_checksum_sha256(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_checksum_sha256):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 256-bit <code>SHA256</code> digest of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   22     21   
    ///   - [`expires(DateTime)`](crate::operation::put_object::builders::PutObjectFluentBuilder::expires) / [`set_expires(Option<DateTime>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_expires):<br>required: **false**<br><p>The date and time at which the object is no longer cacheable. For more information, see <a href="https://www.rfc-editor.org/rfc/rfc7234#section-5.3">https://www.rfc-editor.org/rfc/rfc7234#section-5.3</a>.</p><br>
   23     22   
    ///   - [`if_match(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::if_match) / [`set_if_match(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_if_match):<br>required: **false**<br><p>Uploads the object only if the ETag (entity tag) value provided during the WRITE operation matches the ETag of the object in S3. If the ETag values do not match, the operation returns a <code>412 Precondition Failed</code> error.</p> <p>If a conflicting operation occurs during the upload S3 returns a <code>409 ConditionalRequestConflict</code> response. On a 409 failure you should fetch the object's ETag and retry the upload.</p> <p>Expects the ETag value as a string.</p> <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>, or <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html">Conditional requests</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   24     23   
    ///   - [`if_none_match(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::if_none_match) / [`set_if_none_match(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_if_none_match):<br>required: **false**<br><p>Uploads the object only if the object key name does not already exist in the bucket specified. Otherwise, Amazon S3 returns a <code>412 Precondition Failed</code> error.</p> <p>If a conflicting operation occurs during the upload S3 returns a <code>409 ConditionalRequestConflict</code> response. On a 409 failure you should retry the upload.</p> <p>Expects the '*' (asterisk) character.</p> <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>, or <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html">Conditional requests</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   25     24   
    ///   - [`grant_full_control(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::grant_full_control) / [`set_grant_full_control(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_grant_full_control):<br>required: **false**<br><p>Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.</p><note>  <ul>   <li>    <p>This functionality is not supported for directory buckets.</p></li>   <li>    <p>This functionality is not supported for Amazon S3 on Outposts.</p></li>  </ul> </note><br>
   26     25   
    ///   - [`grant_read(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::grant_read) / [`set_grant_read(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_grant_read):<br>required: **false**<br><p>Allows grantee to read the object data and its metadata.</p><note>  <ul>   <li>    <p>This functionality is not supported for directory buckets.</p></li>   <li>    <p>This functionality is not supported for Amazon S3 on Outposts.</p></li>  </ul> </note><br>
   27     26   
    ///   - [`grant_read_acp(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::grant_read_acp) / [`set_grant_read_acp(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_grant_read_acp):<br>required: **false**<br><p>Allows grantee to read the object ACL.</p><note>  <ul>   <li>    <p>This functionality is not supported for directory buckets.</p></li>   <li>    <p>This functionality is not supported for Amazon S3 on Outposts.</p></li>  </ul> </note><br>
   28     27   
    ///   - [`grant_write_acp(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::grant_write_acp) / [`set_grant_write_acp(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_grant_write_acp):<br>required: **false**<br><p>Allows grantee to write the ACL for the applicable object.</p><note>  <ul>   <li>    <p>This functionality is not supported for directory buckets.</p></li>   <li>    <p>This functionality is not supported for Amazon S3 on Outposts.</p></li>  </ul> </note><br>
   29     28   
    ///   - [`key(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_key):<br>required: **true**<br><p>Object key for which the PUT action was initiated.</p><br>
   30     29   
    ///   - [`write_offset_bytes(i64)`](crate::operation::put_object::builders::PutObjectFluentBuilder::write_offset_bytes) / [`set_write_offset_bytes(Option<i64>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_write_offset_bytes):<br>required: **false**<br><p>Specifies the offset for appending data to existing objects in bytes. The offset must be equal to the size of the existing object being appended to. If no object exists, setting this header to 0 will create a new object.</p><note>  <p>This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in directory buckets.</p> </note><br>
   31     30   
    ///   - [`metadata(impl Into<String>, impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::metadata) / [`set_metadata(Option<HashMap::<String, String>>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_metadata):<br>required: **false**<br><p>A map of metadata to store with the object in S3.</p><br>
   32         -
    ///   - [`server_side_encryption(ServerSideEncryption)`](crate::operation::put_object::builders::PutObjectFluentBuilder::server_side_encryption) / [`set_server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_server_side_encryption):<br>required: **false**<br><p>The server-side encryption algorithm that was used when you store this object in Amazon S3 or Amazon FSx.</p> <ul>  <li>   <p><b>General purpose buckets </b> - You have four mutually exclusive options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest by using server-side encryption with other key options. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p></li>  <li>   <p><b>Directory buckets </b> - For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects are automatically encrypted with the desired encryption settings. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p>   <p>In the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>) using the REST API, the encryption request headers must match the encryption settings that are specified in the <code>CreateSession</code> request. You can't override the values of the encryption settings (<code>x-amz-server-side-encryption</code>, <code>x-amz-server-side-encryption-aws-kms-key-id</code>, <code>x-amz-server-side-encryption-context</code>, and <code>x-amz-server-side-encryption-bucket-key-enabled</code>) that are specified in the <code>CreateSession</code> request. You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and Amazon S3 will use the encryption settings values from the <code>CreateSession</code> request to protect new objects in the directory bucket.</p><note>    <p>When you use the CLI or the Amazon Web Services SDKs, for <code>CreateSession</code>, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the <code>CreateSession</code> request. It's not supported to override the encryption settings values in the <code>CreateSession</code> request. So in the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>), the encryption request headers must match the default encryption configuration of the directory bucket.</p>   </note></li>  <li>   <p><b>S3 access points for Amazon FSx </b> - When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>. All Amazon FSx file systems have encryption configured by default and are encrypted at rest. Data is automatically encrypted before being written to the file system, and automatically decrypted as it is read. These processes are handled transparently by Amazon FSx.</p></li> </ul><br>
          31  +
    ///   - [`server_side_encryption(ServerSideEncryption)`](crate::operation::put_object::builders::PutObjectFluentBuilder::server_side_encryption) / [`set_server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_server_side_encryption):<br>required: **false**<br><p>The server-side encryption algorithm that was used when you store this object in Amazon S3 (for example, <code>AES256</code>, <code>aws:kms</code>, <code>aws:kms:dsse</code>).</p> <ul>  <li>   <p><b>General purpose buckets </b> - You have four mutually exclusive options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest by using server-side encryption with other key options. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p></li>  <li>   <p><b>Directory buckets </b> - For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects are automatically encrypted with the desired encryption settings. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p>   <p>In the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>) using the REST API, the encryption request headers must match the encryption settings that are specified in the <code>CreateSession</code> request. You can't override the values of the encryption settings (<code>x-amz-server-side-encryption</code>, <code>x-amz-server-side-encryption-aws-kms-key-id</code>, <code>x-amz-server-side-encryption-context</code>, and <code>x-amz-server-side-encryption-bucket-key-enabled</code>) that are specified in the <code>CreateSession</code> request. You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and Amazon S3 will use the encryption settings values from the <code>CreateSession</code> request to protect new objects in the directory bucket.</p><note>    <p>When you use the CLI or the Amazon Web Services SDKs, for <code>CreateSession</code>, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the <code>CreateSession</code> request. It's not supported to override the encryption settings values in the <code>CreateSession</code> request. So in the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>), the encryption request headers must match the default encryption configuration of the directory bucket.</p>   </note></li> </ul><br>
   33     32   
    ///   - [`storage_class(StorageClass)`](crate::operation::put_object::builders::PutObjectFluentBuilder::storage_class) / [`set_storage_class(Option<StorageClass>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_storage_class):<br>required: **false**<br><p>By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD storage class provides high durability and high availability. Depending on performance needs, you can specify a different Storage Class. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage Classes</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <ul>   <li>    <p>Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p></li>   <li>    <p>Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.</p></li>  </ul> </note><br>
   34     33   
    ///   - [`website_redirect_location(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::website_redirect_location) / [`set_website_redirect_location(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_website_redirect_location):<br>required: **false**<br><p>If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata. For information about object metadata, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html">Object Key and Metadata</a> in the <i>Amazon S3 User Guide</i>.</p> <p>In the following example, the request header sets the redirect to an object (anotherPage.html) in the same bucket:</p> <p><code>x-amz-website-redirect-location: /anotherPage.html</code></p> <p>In the following example, the request header sets the object redirect to another website:</p> <p><code>x-amz-website-redirect-location: http://www.example.com/</code></p> <p>For more information about website hosting in Amazon S3, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting Websites on Amazon S3</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html">How to Configure Website Page Redirects</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   35     34   
    ///   - [`sse_customer_algorithm(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::sse_customer_algorithm) / [`set_sse_customer_algorithm(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_sse_customer_algorithm):<br>required: **false**<br><p>Specifies the algorithm to use when encrypting the object (for example, <code>AES256</code>).</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   36     35   
    ///   - [`sse_customer_key(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::sse_customer_key) / [`set_sse_customer_key(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_sse_customer_key):<br>required: **false**<br><p>Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   37     36   
    ///   - [`sse_customer_key_md5(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::sse_customer_key_md5) / [`set_sse_customer_key_md5(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_sse_customer_key_md5):<br>required: **false**<br><p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   38     37   
    ///   - [`ssekms_key_id(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::ssekms_key_id) / [`set_ssekms_key_id(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_ssekms_key_id):<br>required: **false**<br><p>Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same account that's issuing the command, you must use the full Key ARN not the Key ID.</p> <p><b>General purpose buckets</b> - If you specify <code>x-amz-server-side-encryption</code> with <code>aws:kms</code> or <code>aws:kms:dsse</code>, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the KMS key to use. If you specify <code>x-amz-server-side-encryption:aws:kms</code> or <code>x-amz-server-side-encryption:aws:kms:dsse</code>, but do not provide <code>x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon Web Services managed key (<code>aws/s3</code>) to protect the data.</p> <p><b>Directory buckets</b> - To encrypt data using SSE-KMS, it's recommended to specify the <code>x-amz-server-side-encryption</code> header to <code>aws:kms</code>. Then, the <code>x-amz-server-side-encryption-aws-kms-key-id</code> header implicitly uses the bucket's default KMS customer managed key ID. If you want to explicitly set the <code> x-amz-server-side-encryption-aws-kms-key-id</code> header, it must match the bucket's default customer managed key (using key ID or ARN, not alias). Your SSE-KMS configuration can only support 1 <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk">customer managed key</a> per directory bucket's lifetime. The <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk">Amazon Web Services managed key</a> (<code>aws/s3</code>) isn't supported. Incorrect key specification results in an HTTP <code>400 Bad Request</code> error.</p><br>
   39     38   
    ///   - [`ssekms_encryption_context(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::ssekms_encryption_context) / [`set_ssekms_encryption_context(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_ssekms_encryption_context):<br>required: **false**<br><p>Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future <code>GetObject</code> operations on this object.</p> <p><b>General purpose buckets</b> - This value must be explicitly added during <code>CopyObject</code> operations if you want an additional encryption context for your object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html#encryption-context">Encryption context</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Directory buckets</b> - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.</p><br>
   40     39   
    ///   - [`bucket_key_enabled(bool)`](crate::operation::put_object::builders::PutObjectFluentBuilder::bucket_key_enabled) / [`set_bucket_key_enabled(Option<bool>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_bucket_key_enabled):<br>required: **false**<br><p>Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS).</p> <p><b>General purpose buckets</b> - Setting this header to <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS. Also, specifying this header with a PUT action doesn't affect bucket-level settings for S3 Bucket Key.</p> <p><b>Directory buckets</b> - S3 Bucket Keys are always enabled for <code>GET</code> and <code>PUT</code> operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets to directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>, <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>, <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-Batch-Ops">the Copy operation in Batch Operations</a>, or <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-import-job">the import jobs</a>. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.</p><br>
   41     40   
    ///   - [`request_payer(RequestPayer)`](crate::operation::put_object::builders::PutObjectFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   42     41   
    ///   - [`tagging(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::tagging) / [`set_tagging(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_tagging):<br>required: **false**<br><p>The tag-set for the object. The tag-set must be encoded as URL Query parameters. (For example, "Key1=Value1")</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   43     42   
    ///   - [`object_lock_mode(ObjectLockMode)`](crate::operation::put_object::builders::PutObjectFluentBuilder::object_lock_mode) / [`set_object_lock_mode(Option<ObjectLockMode>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_object_lock_mode):<br>required: **false**<br><p>The Object Lock mode that you want to apply to this object.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   44     43   
    ///   - [`object_lock_retain_until_date(DateTime)`](crate::operation::put_object::builders::PutObjectFluentBuilder::object_lock_retain_until_date) / [`set_object_lock_retain_until_date(Option<DateTime>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_object_lock_retain_until_date):<br>required: **false**<br><p>The date and time when you want this object's Object Lock to expire. Must be formatted as a timestamp parameter.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   45     44   
    ///   - [`object_lock_legal_hold_status(ObjectLockLegalHoldStatus)`](crate::operation::put_object::builders::PutObjectFluentBuilder::object_lock_legal_hold_status) / [`set_object_lock_legal_hold_status(Option<ObjectLockLegalHoldStatus>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_object_lock_legal_hold_status):<br>required: **false**<br><p>Specifies whether a legal hold will be applied to this object. For more information about S3 Object Lock, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object Lock</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   46     45   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   47     46   
    /// - On success, responds with [`PutObjectOutput`](crate::operation::put_object::PutObjectOutput) with field(s):
   48     47   
    ///   - [`expiration(Option<String>)`](crate::operation::put_object::PutObjectOutput::expiration): <p>If the expiration is configured for the object (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>) in the <i>Amazon S3 User Guide</i>, the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs that provide information about object expiration. The value of the <code>rule-id</code> is URL-encoded.</p><note>  <p>Object expiration information is not returned in directory buckets and this header returns the value "<code>NotImplemented</code>" in all responses for directory buckets.</p> </note>
   49     48   
    ///   - [`e_tag(Option<String>)`](crate::operation::put_object::PutObjectOutput::e_tag): <p>Entity tag for the uploaded object.</p> <p><b>General purpose buckets </b> - To ensure that data is not corrupted traversing the network, for objects where the ETag is the MD5 digest of the object, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5 value.</p> <p><b>Directory buckets </b> - The ETag for the object in a directory bucket isn't the MD5 digest of the object.</p>
   50     49   
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   51     50   
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   52     51   
    ///   - [`checksum_crc64_nvme(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc64_nvme): <p>The Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. This header is present if the object was uploaded with the <code>CRC64NVME</code> checksum algorithm, or if it was uploaded without a checksum (and Amazon S3 added the default checksum, <code>CRC64NVME</code>, to the uploaded object). For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
   53     52   
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   54     53   
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   55     54   
    ///   - [`checksum_type(Option<ChecksumType>)`](crate::operation::put_object::PutObjectOutput::checksum_type): <p>This header specifies the checksum type of the object, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. For <code>PutObject</code> uploads, the checksum type is always <code>FULL_OBJECT</code>. You can use this header as a data integrity check to verify that the checksum type that is received is the same checksum that was specified. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   56         -
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::put_object::PutObjectOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.</p><note>  <p>When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>.</p> </note>
          55  +
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::put_object::PutObjectOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3.</p>
   57     56   
    ///   - [`version_id(Option<String>)`](crate::operation::put_object::PutObjectOutput::version_id): <p>Version ID of the object.</p> <p>If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID for the object being stored. Amazon S3 returns this ID in the response. When you enable versioning for a bucket, if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all of the objects. For more information about versioning, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html">Adding Objects to Versioning-Enabled Buckets</a> in the <i>Amazon S3 User Guide</i>. For information about returning the versioning state of a bucket, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   58     57   
    ///   - [`sse_customer_algorithm(Option<String>)`](crate::operation::put_object::PutObjectOutput::sse_customer_algorithm): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   59     58   
    ///   - [`sse_customer_key_md5(Option<String>)`](crate::operation::put_object::PutObjectOutput::sse_customer_key_md5): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   60     59   
    ///   - [`ssekms_key_id(Option<String>)`](crate::operation::put_object::PutObjectOutput::ssekms_key_id): <p>If present, indicates the ID of the KMS key that was used for object encryption.</p>
   61     60   
    ///   - [`ssekms_encryption_context(Option<String>)`](crate::operation::put_object::PutObjectOutput::ssekms_encryption_context): <p>If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future <code>GetObject</code> operations on this object.</p>
   62     61   
    ///   - [`bucket_key_enabled(Option<bool>)`](crate::operation::put_object::PutObjectOutput::bucket_key_enabled): <p>Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).</p>
   63     62   
    ///   - [`size(Option<i64>)`](crate::operation::put_object::PutObjectOutput::size): <p>The size of the object in bytes. This value is only be present if you append to an object.</p><note>  <p>This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in directory buckets.</p> </note>
   64     63   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::put_object::PutObjectOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   65     64   
    /// - On failure, responds with [`SdkError<PutObjectError>`](crate::operation::put_object::PutObjectError)
   66     65   
    pub fn put_object(&self) -> crate::operation::put_object::builders::PutObjectFluentBuilder {

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/rename_object.rs

@@ -1,0 +23,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
impl super::Client {
    3         -
    /// Constructs a fluent builder for the [`RenameObject`](crate::operation::rename_object::builders::RenameObjectFluentBuilder) operation.
    4         -
    ///
    5         -
    /// - The fluent builder is configurable:
    6         -
    ///   - [`bucket(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name of the directory bucket containing the object.</p> <p>You must use virtual-hosted-style requests in the format <code>Bucket-name.s3express-zone-id.region-code.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must follow the format <code>bucket-base-name--zone-id--x-s3 </code> (for example, <code>amzn-s3-demo-bucket--usw2-az1--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    7         -
    ///   - [`key(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_key):<br>required: **true**<br><p>Key name of the object to rename.</p><br>
    8         -
    ///   - [`rename_source(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::rename_source) / [`set_rename_source(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_rename_source):<br>required: **true**<br><p>Specifies the source for the rename operation. The value must be URL encoded.</p><br>
    9         -
    ///   - [`destination_if_match(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::destination_if_match) / [`set_destination_if_match(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_destination_if_match):<br>required: **false**<br><p>Renames the object only if the ETag (entity tag) value provided during the operation matches the ETag of the object in S3. The <code>If-Match</code> header field makes the request method conditional on ETags. If the ETag values do not match, the operation returns a <code>412 Precondition Failed</code> error.</p> <p>Expects the ETag value as a string.</p><br>
   10         -
    ///   - [`destination_if_none_match(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::destination_if_none_match) / [`set_destination_if_none_match(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_destination_if_none_match):<br>required: **false**<br><p>Renames the object only if the destination does not already exist in the specified directory bucket. If the object does exist when you send a request with <code>If-None-Match:*</code>, the S3 API will return a <code>412 Precondition Failed</code> error, preventing an overwrite. The <code>If-None-Match</code> header prevents overwrites of existing data by validating that there's not an object with the same key name already in your directory bucket.</p> <p>Expects the <code>*</code> character (asterisk).</p><br>
   11         -
    ///   - [`destination_if_modified_since(DateTime)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::destination_if_modified_since) / [`set_destination_if_modified_since(Option<DateTime>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_destination_if_modified_since):<br>required: **false**<br><p>Renames the object if the destination exists and if it has been modified since the specified time.</p><br>
   12         -
    ///   - [`destination_if_unmodified_since(DateTime)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::destination_if_unmodified_since) / [`set_destination_if_unmodified_since(Option<DateTime>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_destination_if_unmodified_since):<br>required: **false**<br><p>Renames the object if it hasn't been modified since the specified time.</p><br>
   13         -
    ///   - [`source_if_match(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::source_if_match) / [`set_source_if_match(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_source_if_match):<br>required: **false**<br><p>Renames the object if the source exists and if its entity tag (ETag) matches the specified ETag.</p><br>
   14         -
    ///   - [`source_if_none_match(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::source_if_none_match) / [`set_source_if_none_match(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_source_if_none_match):<br>required: **false**<br><p>Renames the object if the source exists and if its entity tag (ETag) is different than the specified ETag. If an asterisk (<code>*</code>) character is provided, the operation will fail and return a <code>412 Precondition Failed</code> error.</p><br>
   15         -
    ///   - [`source_if_modified_since(DateTime)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::source_if_modified_since) / [`set_source_if_modified_since(Option<DateTime>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_source_if_modified_since):<br>required: **false**<br><p>Renames the object if the source exists and if it has been modified since the specified time.</p><br>
   16         -
    ///   - [`source_if_unmodified_since(DateTime)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::source_if_unmodified_since) / [`set_source_if_unmodified_since(Option<DateTime>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_source_if_unmodified_since):<br>required: **false**<br><p>Renames the object if the source exists and hasn't been modified since the specified time.</p><br>
   17         -
    ///   - [`client_token(impl Into<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::rename_object::builders::RenameObjectFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique string with a max of 64 ASCII characters in the ASCII range of 33 - 126.</p><note>  <p><code>RenameObject</code> supports idempotency using a client token. To make an idempotent API request using <code>RenameObject</code>, specify a client token in the request. You should not reuse the same client token for other API requests. If you retry a request that completed successfully using the same client token and the same parameters, the retry succeeds without performing any further actions. If you retry a successful request using the same client token, but one or more of the parameters are different, the retry fails and an <code>IdempotentParameterMismatch</code> error is returned.</p> </note><br>
   18         -
    /// - On success, responds with [`RenameObjectOutput`](crate::operation::rename_object::RenameObjectOutput)
   19         -
    /// - On failure, responds with [`SdkError<RenameObjectError>`](crate::operation::rename_object::RenameObjectError)
   20         -
    pub fn rename_object(&self) -> crate::operation::rename_object::builders::RenameObjectFluentBuilder {
   21         -
        crate::operation::rename_object::builders::RenameObjectFluentBuilder::new(self.handle.clone())
   22         -
    }
   23         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/select_object_content.rs

@@ -1,0 +24,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
impl super::Client {
    3         -
    /// Constructs a fluent builder for the [`SelectObjectContent`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder) operation.
    4         -
    ///
    5         -
    /// - The fluent builder is configurable:
    6         -
    ///   - [`bucket(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_bucket):<br>required: **true**<br><p>The S3 bucket.</p><br>
    7         -
    ///   - [`key(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_key):<br>required: **true**<br><p>The object key.</p><br>
    8         -
    ///   - [`sse_customer_algorithm(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::sse_customer_algorithm) / [`set_sse_customer_algorithm(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_sse_customer_algorithm):<br>required: **false**<br><p>The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    9         -
    ///   - [`sse_customer_key(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::sse_customer_key) / [`set_sse_customer_key(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_sse_customer_key):<br>required: **false**<br><p>The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   10         -
    ///   - [`sse_customer_key_md5(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::sse_customer_key_md5) / [`set_sse_customer_key_md5(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_sse_customer_key_md5):<br>required: **false**<br><p>The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   11         -
    ///   - [`expression(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::expression) / [`set_expression(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_expression):<br>required: **true**<br><p>The expression that is used to query the object.</p><br>
   12         -
    ///   - [`expression_type(ExpressionType)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::expression_type) / [`set_expression_type(Option<ExpressionType>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_expression_type):<br>required: **true**<br><p>The type of the provided expression (for example, SQL).</p><br>
   13         -
    ///   - [`request_progress(RequestProgress)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::request_progress) / [`set_request_progress(Option<RequestProgress>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_request_progress):<br>required: **false**<br><p>Specifies if periodic request progress information should be enabled.</p><br>
   14         -
    ///   - [`input_serialization(InputSerialization)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::input_serialization) / [`set_input_serialization(Option<InputSerialization>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_input_serialization):<br>required: **true**<br><p>Describes the format of the data in the object that is being queried.</p><br>
   15         -
    ///   - [`output_serialization(OutputSerialization)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::output_serialization) / [`set_output_serialization(Option<OutputSerialization>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_output_serialization):<br>required: **true**<br><p>Describes the format of the data that you want Amazon S3 to return in response.</p><br>
   16         -
    ///   - [`scan_range(ScanRange)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::scan_range) / [`set_scan_range(Option<ScanRange>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_scan_range):<br>required: **false**<br><p>Specifies the byte range of the object to get the records from. A record is processed when its first byte is contained by the range. This parameter is optional, but when specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the start and end of the range.</p> <p><code>ScanRange</code>may be used in the following ways:</p> <ul>  <li>   <p><code><scanrange>      <start>       50      </start>      <end>       100      </end>     </scanrange></code> - process only the records starting between the bytes 50 and 100 (inclusive, counting from zero)</p></li>  <li>   <p><code><scanrange>      <start>       50      </start>     </scanrange></code> - process only the records starting after the byte 50</p></li>  <li>   <p><code><scanrange>      <end>       50      </end>     </scanrange></code> - process only the records within the last 50 bytes of the file.</p></li> </ul><br>
   17         -
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   18         -
    /// - On success, responds with [`SelectObjectContentOutput`](crate::operation::select_object_content::SelectObjectContentOutput) with field(s):
   19         -
    ///   - [`payload(EventReceiver<SelectObjectContentEventStream, SelectObjectContentEventStreamError>)`](crate::operation::select_object_content::SelectObjectContentOutput::payload): <p>The array of results.</p>
   20         -
    /// - On failure, responds with [`SdkError<SelectObjectContentError>`](crate::operation::select_object_content::SelectObjectContentError)
   21         -
    pub fn select_object_content(&self) -> crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder {
   22         -
        crate::operation::select_object_content::builders::SelectObjectContentFluentBuilder::new(self.handle.clone())
   23         -
    }
   24         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/update_bucket_metadata_inventory_table_configuration.rs

@@ -1,0 +19,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
impl super::Client {
    3         -
    /// Constructs a fluent builder for the [`UpdateBucketMetadataInventoryTableConfiguration`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder) operation.
    4         -
    ///
    5         -
    /// - The fluent builder is configurable:
    6         -
    ///   - [`bucket(impl Into<String>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::set_bucket):<br>required: **true**<br><p>The general purpose bucket that corresponds to the metadata configuration that you want to enable or disable an inventory table for.</p><br>
    7         -
    ///   - [`content_md5(impl Into<String>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::set_content_md5):<br>required: **false**<br><p>The <code>Content-MD5</code> header for the inventory table configuration.</p><br>
    8         -
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>The checksum algorithm to use with your inventory table configuration.</p><br>
    9         -
    ///   - [`inventory_table_configuration(InventoryTableConfigurationUpdates)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::inventory_table_configuration) / [`set_inventory_table_configuration(Option<InventoryTableConfigurationUpdates>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::set_inventory_table_configuration):<br>required: **true**<br><p>The contents of your inventory table configuration.</p><br>
   10         -
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The expected owner of the general purpose bucket that corresponds to the metadata table configuration that you want to enable or disable an inventory table for.</p><br>
   11         -
    /// - On success, responds with [`UpdateBucketMetadataInventoryTableConfigurationOutput`](crate::operation::update_bucket_metadata_inventory_table_configuration::UpdateBucketMetadataInventoryTableConfigurationOutput)
   12         -
    /// - On failure, responds with [`SdkError<UpdateBucketMetadataInventoryTableConfigurationError>`](crate::operation::update_bucket_metadata_inventory_table_configuration::UpdateBucketMetadataInventoryTableConfigurationError)
   13         -
    pub fn update_bucket_metadata_inventory_table_configuration(
   14         -
        &self,
   15         -
    ) -> crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder
   16         -
    {
   17         -
        crate::operation::update_bucket_metadata_inventory_table_configuration::builders::UpdateBucketMetadataInventoryTableConfigurationFluentBuilder::new(self.handle.clone())
   18         -
    }
   19         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/update_bucket_metadata_journal_table_configuration.rs

@@ -1,0 +19,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
impl super::Client {
    3         -
    /// Constructs a fluent builder for the [`UpdateBucketMetadataJournalTableConfiguration`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder) operation.
    4         -
    ///
    5         -
    /// - The fluent builder is configurable:
    6         -
    ///   - [`bucket(impl Into<String>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::set_bucket):<br>required: **true**<br><p>The general purpose bucket that corresponds to the metadata configuration that you want to enable or disable journal table record expiration for.</p><br>
    7         -
    ///   - [`content_md5(impl Into<String>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::set_content_md5):<br>required: **false**<br><p>The <code>Content-MD5</code> header for the journal table configuration.</p><br>
    8         -
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>The checksum algorithm to use with your journal table configuration.</p><br>
    9         -
    ///   - [`journal_table_configuration(JournalTableConfigurationUpdates)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::journal_table_configuration) / [`set_journal_table_configuration(Option<JournalTableConfigurationUpdates>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::set_journal_table_configuration):<br>required: **true**<br><p>The contents of your journal table configuration.</p><br>
   10         -
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The expected owner of the general purpose bucket that corresponds to the metadata table configuration that you want to enable or disable journal table record expiration for.</p><br>
   11         -
    /// - On success, responds with [`UpdateBucketMetadataJournalTableConfigurationOutput`](crate::operation::update_bucket_metadata_journal_table_configuration::UpdateBucketMetadataJournalTableConfigurationOutput)
   12         -
    /// - On failure, responds with [`SdkError<UpdateBucketMetadataJournalTableConfigurationError>`](crate::operation::update_bucket_metadata_journal_table_configuration::UpdateBucketMetadataJournalTableConfigurationError)
   13         -
    pub fn update_bucket_metadata_journal_table_configuration(
   14         -
        &self,
   15         -
    ) -> crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder
   16         -
    {
   17         -
        crate::operation::update_bucket_metadata_journal_table_configuration::builders::UpdateBucketMetadataJournalTableConfigurationFluentBuilder::new(self.handle.clone())
   18         -
    }
   19         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/upload_part.rs

@@ -1,1 +41,40 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`UploadPart`](crate::operation::upload_part::builders::UploadPartFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6         -
    ///   - [`body(ByteStream)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::body) / [`set_body(ByteStream)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_body):<br>required: **false**<br><p>Object data.</p><br>
    7      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the bucket to which the multipart upload was initiated.</p> <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>Object Lambda access points are not supported by directory buckets.</p> </note> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    8      7   
    ///   - [`content_length(i64)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::content_length) / [`set_content_length(Option<i64>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_content_length):<br>required: **false**<br><p>Size of the body in bytes. This parameter is useful when the size of the body cannot be determined automatically.</p><br>
    9      8   
    ///   - [`content_md5(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_content_md5):<br>required: **false**<br><p>The Base64 encoded 128-bit MD5 digest of the part data. This parameter is auto-populated when using the command from the CLI. This parameter is required if object lock parameters are specified.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   10      9   
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be the same for all parts and it match the checksum value supplied in the <code>CreateMultipartUpload</code> request.</p><br>
   11     10   
    ///   - [`checksum_crc32(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::checksum_crc32) / [`set_checksum_crc32(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_checksum_crc32):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 32-bit <code>CRC32</code> checksum of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   12     11   
    ///   - [`checksum_crc32_c(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::checksum_crc32_c) / [`set_checksum_crc32_c(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_checksum_crc32_c):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   13     12   
    ///   - [`checksum_crc64_nvme(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::checksum_crc64_nvme) / [`set_checksum_crc64_nvme(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_checksum_crc64_nvme):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the part. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   14     13   
    ///   - [`checksum_sha1(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::checksum_sha1) / [`set_checksum_sha1(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_checksum_sha1):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 160-bit <code>SHA1</code> digest of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   15     14   
    ///   - [`checksum_sha256(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::checksum_sha256) / [`set_checksum_sha256(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_checksum_sha256):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 256-bit <code>SHA256</code> digest of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   16     15   
    ///   - [`key(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_key):<br>required: **true**<br><p>Object key for which the multipart upload was initiated.</p><br>
   17     16   
    ///   - [`part_number(i32)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::part_number) / [`set_part_number(Option<i32>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_part_number):<br>required: **true**<br><p>Part number of part being uploaded. This is a positive integer between 1 and 10,000.</p><br>
   18     17   
    ///   - [`upload_id(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::upload_id) / [`set_upload_id(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_upload_id):<br>required: **true**<br><p>Upload ID identifying the multipart upload whose part is being uploaded.</p><br>
   19     18   
    ///   - [`sse_customer_algorithm(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::sse_customer_algorithm) / [`set_sse_customer_algorithm(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_sse_customer_algorithm):<br>required: **false**<br><p>Specifies the algorithm to use when encrypting the object (for example, AES256).</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   20     19   
    ///   - [`sse_customer_key(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::sse_customer_key) / [`set_sse_customer_key(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_sse_customer_key):<br>required: **false**<br><p>Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the <code>x-amz-server-side-encryption-customer-algorithm header</code>. This must be the same encryption key specified in the initiate multipart upload request.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   21     20   
    ///   - [`sse_customer_key_md5(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::sse_customer_key_md5) / [`set_sse_customer_key_md5(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_sse_customer_key_md5):<br>required: **false**<br><p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   22     21   
    ///   - [`request_payer(RequestPayer)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   23     22   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   24     23   
    /// - On success, responds with [`UploadPartOutput`](crate::operation::upload_part::UploadPartOutput) with field(s):
   25         -
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::upload_part::UploadPartOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.</p><note>  <p>When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>.</p> </note>
          24  +
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::upload_part::UploadPartOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 (for example, <code>AES256</code>, <code>aws:kms</code>).</p>
   26     25   
    ///   - [`e_tag(Option<String>)`](crate::operation::upload_part::UploadPartOutput::e_tag): <p>Entity tag for the uploaded object.</p>
   27     26   
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   28     27   
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   29     28   
    ///   - [`checksum_crc64_nvme(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc64_nvme): <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the part. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   30     29   
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   31     30   
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   32     31   
    ///   - [`sse_customer_algorithm(Option<String>)`](crate::operation::upload_part::UploadPartOutput::sse_customer_algorithm): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   33     32   
    ///   - [`sse_customer_key_md5(Option<String>)`](crate::operation::upload_part::UploadPartOutput::sse_customer_key_md5): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   34     33   
    ///   - [`ssekms_key_id(Option<String>)`](crate::operation::upload_part::UploadPartOutput::ssekms_key_id): <p>If present, indicates the ID of the KMS key that was used for object encryption.</p>
   35     34   
    ///   - [`bucket_key_enabled(Option<bool>)`](crate::operation::upload_part::UploadPartOutput::bucket_key_enabled): <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).</p>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/upload_part_copy.rs

@@ -1,1 +38,38 @@
   18     18   
    ///   - [`sse_customer_key_md5(impl Into<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::sse_customer_key_md5) / [`set_sse_customer_key_md5(Option<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_sse_customer_key_md5):<br>required: **false**<br><p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.</p><note>  <p>This functionality is not supported when the destination bucket is a directory bucket.</p> </note><br>
   19     19   
    ///   - [`copy_source_sse_customer_algorithm(impl Into<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::copy_source_sse_customer_algorithm) / [`set_copy_source_sse_customer_algorithm(Option<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_copy_source_sse_customer_algorithm):<br>required: **false**<br><p>Specifies the algorithm to use when decrypting the source object (for example, <code>AES256</code>).</p><note>  <p>This functionality is not supported when the source object is in a directory bucket.</p> </note><br>
   20     20   
    ///   - [`copy_source_sse_customer_key(impl Into<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::copy_source_sse_customer_key) / [`set_copy_source_sse_customer_key(Option<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_copy_source_sse_customer_key):<br>required: **false**<br><p>Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The encryption key provided in this header must be one that was used when the source object was created.</p><note>  <p>This functionality is not supported when the source object is in a directory bucket.</p> </note><br>
   21     21   
    ///   - [`copy_source_sse_customer_key_md5(impl Into<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::copy_source_sse_customer_key_md5) / [`set_copy_source_sse_customer_key_md5(Option<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_copy_source_sse_customer_key_md5):<br>required: **false**<br><p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.</p><note>  <p>This functionality is not supported when the source object is in a directory bucket.</p> </note><br>
   22     22   
    ///   - [`request_payer(RequestPayer)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   23     23   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   24     24   
    ///   - [`expected_source_bucket_owner(impl Into<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::expected_source_bucket_owner) / [`set_expected_source_bucket_owner(Option<String>)`](crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::set_expected_source_bucket_owner):<br>required: **false**<br><p>The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   25     25   
    /// - On success, responds with [`UploadPartCopyOutput`](crate::operation::upload_part_copy::UploadPartCopyOutput) with field(s):
   26     26   
    ///   - [`copy_source_version_id(Option<String>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::copy_source_version_id): <p>The version of the source object that was copied, if you have enabled versioning on the source bucket.</p><note>  <p>This functionality is not supported when the source object is in a directory bucket.</p> </note>
   27     27   
    ///   - [`copy_part_result(Option<CopyPartResult>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::copy_part_result): <p>Container for all response elements.</p>
   28         -
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.</p><note>  <p>When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>.</p> </note>
          28  +
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 (for example, <code>AES256</code>, <code>aws:kms</code>).</p>
   29     29   
    ///   - [`sse_customer_algorithm(Option<String>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::sse_customer_algorithm): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   30     30   
    ///   - [`sse_customer_key_md5(Option<String>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::sse_customer_key_md5): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   31     31   
    ///   - [`ssekms_key_id(Option<String>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::ssekms_key_id): <p>If present, indicates the ID of the KMS key that was used for object encryption.</p>
   32     32   
    ///   - [`bucket_key_enabled(Option<bool>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::bucket_key_enabled): <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).</p>
   33     33   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::upload_part_copy::UploadPartCopyOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   34     34   
    /// - On failure, responds with [`SdkError<UploadPartCopyError>`](crate::operation::upload_part_copy::UploadPartCopyError)
   35     35   
    pub fn upload_part_copy(&self) -> crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder {
   36     36   
        crate::operation::upload_part_copy::builders::UploadPartCopyFluentBuilder::new(self.handle.clone())
   37     37   
    }
   38     38   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/write_get_object_response.rs

@@ -1,1 +52,51 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`WriteGetObjectResponse`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`request_route(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::request_route) / [`set_request_route(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_request_route):<br>required: **true**<br><p>Route prefix to the HTTP URL generated.</p><br>
    7      7   
    ///   - [`request_token(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::request_token) / [`set_request_token(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_request_token):<br>required: **true**<br><p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to the end user <code>GetObject</code> request.</p><br>
    8         -
    ///   - [`body(ByteStream)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::body) / [`set_body(ByteStream)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_body):<br>required: **false**<br><p>The object data.</p><br>
    9      8   
    ///   - [`status_code(i32)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::status_code) / [`set_status_code(Option<i32>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_status_code):<br>required: **false**<br><p>The integer status code for an HTTP response of a corresponding <code>GetObject</code> request. The following is a list of status codes.</p> <ul>  <li>   <p><code>200 - OK</code></p></li>  <li>   <p><code>206 - Partial Content</code></p></li>  <li>   <p><code>304 - Not Modified</code></p></li>  <li>   <p><code>400 - Bad Request</code></p></li>  <li>   <p><code>401 - Unauthorized</code></p></li>  <li>   <p><code>403 - Forbidden</code></p></li>  <li>   <p><code>404 - Not Found</code></p></li>  <li>   <p><code>405 - Method Not Allowed</code></p></li>  <li>   <p><code>409 - Conflict</code></p></li>  <li>   <p><code>411 - Length Required</code></p></li>  <li>   <p><code>412 - Precondition Failed</code></p></li>  <li>   <p><code>416 - Range Not Satisfiable</code></p></li>  <li>   <p><code>500 - Internal Server Error</code></p></li>  <li>   <p><code>503 - Service Unavailable</code></p></li> </ul><br>
   10      9   
    ///   - [`error_code(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::error_code) / [`set_error_code(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_error_code):<br>required: **false**<br><p>A string that uniquely identifies an error condition. Returned in the <code> tag of the error XML response for a corresponding <code>GetObject</code> call. Cannot be used with a successful <code>StatusCode</code> header or when the transformed object is provided in the body. All error codes from S3 are sentence-cased. The regular expression (regex) value is <code>"^\[A-Z\]\[a-zA-Z\]+$"</code>.</code></p><br>
   11     10   
    ///   - [`error_message(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::error_message) / [`set_error_message(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_error_message):<br>required: **false**<br><p>Contains a generic description of the error condition. Returned in the <message>   tag of the error XML response for a corresponding    <code>GetObject</code> call. Cannot be used with a successful    <code>StatusCode</code> header or when the transformed object is provided in body.  </message></p><br>
   12     11   
    ///   - [`accept_ranges(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::accept_ranges) / [`set_accept_ranges(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_accept_ranges):<br>required: **false**<br><p>Indicates that a range of bytes was specified.</p><br>
   13     12   
    ///   - [`cache_control(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::cache_control) / [`set_cache_control(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_cache_control):<br>required: **false**<br><p>Specifies caching behavior along the request/reply chain.</p><br>
   14     13   
    ///   - [`content_disposition(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::content_disposition) / [`set_content_disposition(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_content_disposition):<br>required: **false**<br><p>Specifies presentational information for the object.</p><br>
   15     14   
    ///   - [`content_encoding(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::content_encoding) / [`set_content_encoding(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_content_encoding):<br>required: **false**<br><p>Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.</p><br>
   16     15   
    ///   - [`content_language(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::content_language) / [`set_content_language(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_content_language):<br>required: **false**<br><p>The language the content is in.</p><br>
   17     16   
    ///   - [`content_length(i64)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::content_length) / [`set_content_length(Option<i64>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_content_length):<br>required: **false**<br><p>The size of the content body in bytes.</p><br>
   18     17   
    ///   - [`content_range(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::content_range) / [`set_content_range(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_content_range):<br>required: **false**<br><p>The portion of the object returned in the response.</p><br>
   19     18   
    ///   - [`content_type(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::content_type) / [`set_content_type(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_content_type):<br>required: **false**<br><p>A standard MIME type describing the format of the object data.</p><br>
   20     19   
    ///   - [`checksum_crc32(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::checksum_crc32) / [`set_checksum_crc32(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_checksum_crc32):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 32-bit <code>CRC32</code> checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p> <p></p><br>
   21     20   
    ///   - [`checksum_crc32_c(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::checksum_crc32_c) / [`set_checksum_crc32_c(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_checksum_crc32_c):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p><br>
   22     21   
    ///   - [`checksum_crc64_nvme(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::checksum_crc64_nvme) / [`set_checksum_crc64_nvme(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_checksum_crc64_nvme):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the part. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
   23     22   
    ///   - [`checksum_sha1(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::checksum_sha1) / [`set_checksum_sha1(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_checksum_sha1):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 160-bit <code>SHA1</code> digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p><br>
   24     23   
    ///   - [`checksum_sha256(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::checksum_sha256) / [`set_checksum_sha256(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_checksum_sha256):<br>required: **false**<br><p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 256-bit <code>SHA256</code> digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p><br>
   25     24   
    ///   - [`delete_marker(bool)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::delete_marker) / [`set_delete_marker(Option<bool>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_delete_marker):<br>required: **false**<br><p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is not (<code>false</code>) a delete marker. To learn more about delete markers, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html">Working with delete markers</a>.</p><br>
   26     25   
    ///   - [`e_tag(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::e_tag) / [`set_e_tag(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_e_tag):<br>required: **false**<br><p>An opaque identifier assigned by a web server to a specific version of a resource found at a URL.</p><br>
   27     26   
    ///   - [`expires(DateTime)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::expires) / [`set_expires(Option<DateTime>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_expires):<br>required: **false**<br><p>The date and time at which the object is no longer cacheable.</p><br>
   28     27   
    ///   - [`expiration(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::expiration) / [`set_expiration(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_expiration):<br>required: **false**<br><p>If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs that provide the object expiration information. The value of the <code>rule-id</code> is URL-encoded.</p><br>
   29     28   
    ///   - [`last_modified(DateTime)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::last_modified) / [`set_last_modified(Option<DateTime>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_last_modified):<br>required: **false**<br><p>The date and time that the object was last modified.</p><br>
   30     29   
    ///   - [`missing_meta(i32)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::missing_meta) / [`set_missing_meta(Option<i32>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_missing_meta):<br>required: **false**<br><p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.</p><br>
   31     30   
    ///   - [`metadata(impl Into<String>, impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::metadata) / [`set_metadata(Option<HashMap::<String, String>>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_metadata):<br>required: **false**<br><p>A map of metadata to store with the object in S3.</p><br>
   32     31   
    ///   - [`object_lock_mode(ObjectLockMode)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::object_lock_mode) / [`set_object_lock_mode(Option<ObjectLockMode>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_object_lock_mode):<br>required: **false**<br><p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3 Object Lock, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object Lock</a>.</p><br>
   33     32   
    ///   - [`object_lock_legal_hold_status(ObjectLockLegalHoldStatus)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::object_lock_legal_hold_status) / [`set_object_lock_legal_hold_status(Option<ObjectLockLegalHoldStatus>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_object_lock_legal_hold_status):<br>required: **false**<br><p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p><br>
   34     33   
    ///   - [`object_lock_retain_until_date(DateTime)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::object_lock_retain_until_date) / [`set_object_lock_retain_until_date(Option<DateTime>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_object_lock_retain_until_date):<br>required: **false**<br><p>The date and time when Object Lock is configured to expire.</p><br>
   35     34   
    ///   - [`parts_count(i32)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::parts_count) / [`set_parts_count(Option<i32>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_parts_count):<br>required: **false**<br><p>The count of parts this object has.</p><br>
   36     35   
    ///   - [`replication_status(ReplicationStatus)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::replication_status) / [`set_replication_status(Option<ReplicationStatus>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_replication_status):<br>required: **false**<br><p>Indicates if request involves bucket that is either a source or destination in a Replication rule. For more information about S3 Replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p><br>
   37     36   
    ///   - [`request_charged(RequestCharged)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::request_charged) / [`set_request_charged(Option<RequestCharged>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_request_charged):<br>required: **false**<br><p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   38     37   
    ///   - [`restore(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::restore) / [`set_restore(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_restore):<br>required: **false**<br><p>Provides information about object restoration operation and expiration time of the restored object copy.</p><br>
   39         -
    ///   - [`server_side_encryption(ServerSideEncryption)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::server_side_encryption) / [`set_server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_server_side_encryption):<br>required: **false**<br><p>The server-side encryption algorithm used when storing requested object in Amazon S3 or Amazon FSx.</p><note>  <p>When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>.</p> </note><br>
          38  +
    ///   - [`server_side_encryption(ServerSideEncryption)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::server_side_encryption) / [`set_server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_server_side_encryption):<br>required: **false**<br><p>The server-side encryption algorithm used when storing requested object in Amazon S3 (for example, AES256, <code>aws:kms</code>).</p><br>
   40     39   
    ///   - [`sse_customer_algorithm(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::sse_customer_algorithm) / [`set_sse_customer_algorithm(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_sse_customer_algorithm):<br>required: **false**<br><p>Encryption algorithm used if server-side encryption with a customer-provided encryption key was specified for object stored in Amazon S3.</p><br>
   41     40   
    ///   - [`ssekms_key_id(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::ssekms_key_id) / [`set_ssekms_key_id(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_ssekms_key_id):<br>required: **false**<br><p>If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.</p><br>
   42     41   
    ///   - [`sse_customer_key_md5(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::sse_customer_key_md5) / [`set_sse_customer_key_md5(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_sse_customer_key_md5):<br>required: **false**<br><p>128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting data using server-side encryption with customer-provided encryption keys (SSE-C)</a>.</p><br>
   43     42   
    ///   - [`storage_class(StorageClass)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::storage_class) / [`set_storage_class(Option<StorageClass>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_storage_class):<br>required: **false**<br><p>Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage Classes</a>.</p><br>
   44     43   
    ///   - [`tag_count(i32)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::tag_count) / [`set_tag_count(Option<i32>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_tag_count):<br>required: **false**<br><p>The number of tags, if any, on the object.</p><br>
   45     44   
    ///   - [`version_id(impl Into<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::version_id) / [`set_version_id(Option<String>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_version_id):<br>required: **false**<br><p>An ID used to reference a specific version of the object.</p><br>
   46     45   
    ///   - [`bucket_key_enabled(bool)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::bucket_key_enabled) / [`set_bucket_key_enabled(Option<bool>)`](crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder::set_bucket_key_enabled):<br>required: **false**<br><p>Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with Amazon Web Services KMS (SSE-KMS).</p><br>
   47     46   
    /// - On success, responds with [`WriteGetObjectResponseOutput`](crate::operation::write_get_object_response::WriteGetObjectResponseOutput)
   48     47   
    /// - On failure, responds with [`SdkError<WriteGetObjectResponseError>`](crate::operation::write_get_object_response::WriteGetObjectResponseError)
   49     48   
    pub fn write_get_object_response(&self) -> crate::operation::write_get_object_response::builders::WriteGetObjectResponseFluentBuilder {

tmp-codegen-diff/aws-sdk/sdk/s3/src/client_idempotency_token.rs

@@ -1,0 +73,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/*
    3         -
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    4         -
 * SPDX-License-Identifier: Apache-2.0
    5         -
 */
    6         -
    7         -
use std::borrow::Cow;
    8         -
use std::fmt;
    9         -
   10         -
use aws_smithy_runtime_api::box_error::BoxError;
   11         -
use aws_smithy_runtime_api::client::interceptors::context::{BeforeSerializationInterceptorContextMut, Input};
   12         -
use aws_smithy_runtime_api::client::interceptors::{Intercept, SharedInterceptor};
   13         -
use aws_smithy_runtime_api::client::runtime_components::{RuntimeComponents, RuntimeComponentsBuilder};
   14         -
use aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin;
   15         -
use aws_smithy_types::config_bag::ConfigBag;
   16         -
   17         -
use crate::idempotency_token::IdempotencyTokenProvider;
   18         -
   19         -
#[derive(Debug)]
   20         -
pub(crate) struct IdempotencyTokenRuntimePlugin {
   21         -
    runtime_components: RuntimeComponentsBuilder,
   22         -
}
   23         -
   24         -
impl IdempotencyTokenRuntimePlugin {
   25         -
    pub(crate) fn new<S>(set_token: S) -> Self
   26         -
    where
   27         -
        S: Fn(IdempotencyTokenProvider, &mut Input) + Send + Sync + 'static,
   28         -
    {
   29         -
        Self {
   30         -
            runtime_components: RuntimeComponentsBuilder::new("IdempotencyTokenRuntimePlugin")
   31         -
                .with_interceptor(SharedInterceptor::new(IdempotencyTokenInterceptor { set_token })),
   32         -
        }
   33         -
    }
   34         -
}
   35         -
   36         -
impl RuntimePlugin for IdempotencyTokenRuntimePlugin {
   37         -
    fn runtime_components(&self, _: &RuntimeComponentsBuilder) -> Cow<'_, RuntimeComponentsBuilder> {
   38         -
        Cow::Borrowed(&self.runtime_components)
   39         -
    }
   40         -
}
   41         -
   42         -
struct IdempotencyTokenInterceptor<S> {
   43         -
    set_token: S,
   44         -
}
   45         -
   46         -
impl<S> fmt::Debug for IdempotencyTokenInterceptor<S> {
   47         -
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
   48         -
        f.debug_struct("IdempotencyTokenInterceptor").finish()
   49         -
    }
   50         -
}
   51         -
   52         -
impl<S> Intercept for IdempotencyTokenInterceptor<S>
   53         -
where
   54         -
    S: Fn(IdempotencyTokenProvider, &mut Input) + Send + Sync,
   55         -
{
   56         -
    fn name(&self) -> &'static str {
   57         -
        "IdempotencyTokenInterceptor"
   58         -
    }
   59         -
   60         -
    fn modify_before_serialization(
   61         -
        &self,
   62         -
        context: &mut BeforeSerializationInterceptorContextMut<'_>,
   63         -
        _runtime_components: &RuntimeComponents,
   64         -
        cfg: &mut ConfigBag,
   65         -
    ) -> Result<(), BoxError> {
   66         -
        let token_provider = cfg
   67         -
            .load::<IdempotencyTokenProvider>()
   68         -
            .expect("the idempotency provider must be set")
   69         -
            .clone();
   70         -
        (self.set_token)(token_provider, context.input_mut());
   71         -
        Ok(())
   72         -
    }
   73         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/config.rs

@@ -200,200 +275,259 @@
  220    220   
    }
  221    221   
    /// Set the [`StalledStreamProtectionConfig`](crate::config::StalledStreamProtectionConfig)
  222    222   
    /// to configure protection for stalled streams.
  223    223   
    pub fn set_stalled_stream_protection(
  224    224   
        &mut self,
  225    225   
        stalled_stream_protection_config: ::std::option::Option<crate::config::StalledStreamProtectionConfig>,
  226    226   
    ) -> &mut Self {
  227    227   
        self.config.store_or_unset(stalled_stream_protection_config);
  228    228   
        self
  229    229   
    }
  230         -
    /// Sets the idempotency token provider to use for service calls that require tokens.
  231         -
    pub fn idempotency_token_provider(
  232         -
        mut self,
  233         -
        idempotency_token_provider: impl ::std::convert::Into<crate::idempotency_token::IdempotencyTokenProvider>,
  234         -
    ) -> Self {
  235         -
        self.set_idempotency_token_provider(::std::option::Option::Some(idempotency_token_provider.into()));
  236         -
        self
  237         -
    }
  238         -
    /// Sets the idempotency token provider to use for service calls that require tokens.
  239         -
    pub fn set_idempotency_token_provider(
  240         -
        &mut self,
  241         -
        idempotency_token_provider: ::std::option::Option<crate::idempotency_token::IdempotencyTokenProvider>,
  242         -
    ) -> &mut Self {
  243         -
        self.config.store_or_unset(idempotency_token_provider);
  244         -
        self
  245         -
    }
  246    230   
    /// Sets the HTTP client to use when making requests.
  247    231   
    ///
  248    232   
    /// # Examples
  249    233   
    /// ```no_run
  250    234   
    /// # #[cfg(test)]
  251    235   
    /// # mod tests {
  252    236   
    /// # #[test]
  253    237   
    /// # fn example() {
  254    238   
    /// use std::time::Duration;
  255    239   
    /// use aws_sdk_s3::config::Config;
@@ -1331,1315 +1392,1374 @@
 1351   1335   
    /// Adds a runtime plugin to the config.
 1352   1336   
    #[allow(unused)]
 1353   1337   
    pub(crate) fn push_runtime_plugin(&mut self, plugin: crate::config::SharedRuntimePlugin) -> &mut Self {
 1354   1338   
        self.runtime_plugins.push(plugin);
 1355   1339   
        self
 1356   1340   
    }
 1357   1341   
    #[cfg(any(feature = "test-util", test))]
 1358   1342   
    #[allow(unused_mut)]
 1359   1343   
    /// Apply test defaults to the builder. NOTE: Consider migrating to use `apply_test_defaults_v2` instead.
 1360   1344   
    pub fn apply_test_defaults(&mut self) -> &mut Self {
 1361         -
        self.set_idempotency_token_provider(Some("00000000-0000-4000-8000-000000000000".into()));
 1362         -
 1363   1345   
        self.set_time_source(::std::option::Option::Some(::aws_smithy_async::time::SharedTimeSource::new(
 1364   1346   
            ::aws_smithy_async::time::StaticTimeSource::new(::std::time::UNIX_EPOCH + ::std::time::Duration::from_secs(1234567890)),
 1365   1347   
        )));
 1366   1348   
        self.config.store_put(::aws_runtime::user_agent::AwsUserAgent::for_tests());
 1367   1349   
        self.set_credentials_provider(Some(crate::config::SharedCredentialsProvider::new(
 1368   1350   
            ::aws_credential_types::Credentials::for_tests(),
 1369   1351   
        )));
 1370   1352   
        self.behavior_version = ::std::option::Option::Some(crate::config::BehaviorVersion::latest());
 1371   1353   
        self
 1372   1354   
    }
@@ -1402,1384 +1462,1443 @@
 1422   1404   
#[derive(::std::fmt::Debug)]
 1423   1405   
pub(crate) struct ServiceRuntimePlugin {
 1424   1406   
    config: ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer>,
 1425   1407   
    runtime_components: ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
 1426   1408   
}
 1427   1409   
 1428   1410   
impl ServiceRuntimePlugin {
 1429   1411   
    pub fn new(_service_config: crate::config::Config) -> Self {
 1430   1412   
        let config = {
 1431   1413   
            let mut cfg = ::aws_smithy_types::config_bag::Layer::new("AmazonS3");
 1432         -
            cfg.store_put(crate::idempotency_token::default_provider());
 1433   1414   
            cfg.store_put(::aws_smithy_runtime::client::orchestrator::AuthSchemeAndEndpointOrchestrationV2);
 1434   1415   
            ::std::option::Option::Some(cfg.freeze())
 1435   1416   
        };
 1436   1417   
        let mut runtime_components = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("ServiceRuntimePlugin");
 1437   1418   
        runtime_components.set_auth_scheme_option_resolver(::std::option::Option::Some({
 1438   1419   
            use crate::config::auth::ResolveAuthScheme;
 1439   1420   
            crate::config::auth::DefaultAuthSchemeResolver::default().into_shared_resolver()
 1440   1421   
        }));
 1441   1422   
        runtime_components.set_endpoint_resolver(::std::option::Option::Some({
 1442   1423   
            use crate::config::endpoint::ResolveEndpoint;