AWS SDK

AWS SDK

rev. 1b02e26906cc26af4e937875fa5c98c9fa23c743

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_access_point_scope/builders.rs

@@ -1,1 +61,59 @@
   19     19   
        fluent_builder.inner = self;
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `PutAccessPointScope`.
   24     24   
///
   25     25   
/// <p>Creates or replaces the access point scope for a directory bucket. You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both.</p><note>
   26     26   
/// <p>You can specify any amount of prefixes, but the total length of characters of all prefixes must be less than 256 bytes in size.</p>
   27     27   
/// </note>
   28     28   
/// <p>To use this operation, you must have the permission to perform the <code>s3express:PutAccessPointScope</code> action.</p>
   29         -
/// <p>For information about REST API errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#RESTErrorResponses">REST error responses</a>.</p><important>
   30         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   31         -
/// </important>
          29  +
/// <p>For information about REST API errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#RESTErrorResponses">REST error responses</a>.</p>
   32     30   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   33     31   
pub struct PutAccessPointScopeFluentBuilder {
   34     32   
    handle: ::std::sync::Arc<crate::client::Handle>,
   35     33   
    inner: crate::operation::put_access_point_scope::builders::PutAccessPointScopeInputBuilder,
   36     34   
    config_override: ::std::option::Option<crate::config::Builder>,
   37     35   
}
   38     36   
impl
   39     37   
    crate::client::customize::internal::CustomizableSend<
   40     38   
        crate::operation::put_access_point_scope::PutAccessPointScopeOutput,
   41     39   
        crate::operation::put_access_point_scope::PutAccessPointScopeError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_versioning/builders.rs

@@ -18,18 +80,78 @@
   38     38   
/// <p>If you have an object expiration lifecycle configuration in your non-versioned bucket and you want to maintain the same permanent delete behavior when you enable versioning, you must add a noncurrent expiration policy. The noncurrent expiration lifecycle configuration will manage the deletes of the noncurrent object versions in the version-enabled bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html">Versioning</a> in the <i>Amazon S3 User Guide</i>.</p>
   39     39   
/// <p>All Amazon S3 on Outposts REST API requests for this action require an additional parameter of <code>x-amz-outpost-id</code> to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of <code>s3-control</code>. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the <code>x-amz-outpost-id</code> derived by using the access point ARN, see the <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html#API_control_PutBucketVersioning_Examples">Examples</a> section.</p>
   40     40   
/// <p>The following operations are related to <code>PutBucketVersioning</code> for S3 on Outposts.</p>
   41     41   
/// <ul>
   42     42   
/// <li>
   43     43   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketVersioning.html">GetBucketVersioning</a></p></li>
   44     44   
/// <li>
   45     45   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a></p></li>
   46     46   
/// <li>
   47     47   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a></p></li>
   48         -
/// </ul><important>
   49         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   50         -
/// </important>
          48  +
/// </ul>
   51     49   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   52     50   
pub struct PutBucketVersioningFluentBuilder {
   53     51   
    handle: ::std::sync::Arc<crate::client::Handle>,
   54     52   
    inner: crate::operation::put_bucket_versioning::builders::PutBucketVersioningInputBuilder,
   55     53   
    config_override: ::std::option::Option<crate::config::Builder>,
   56     54   
}
   57     55   
impl
   58     56   
    crate::client::customize::internal::CustomizableSend<
   59     57   
        crate::operation::put_bucket_versioning::PutBucketVersioningOutput,
   60     58   
        crate::operation::put_bucket_versioning::PutBucketVersioningError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_job_tagging/builders.rs

@@ -34,34 +96,94 @@
   54     54   
/// </dd>
   55     55   
/// </dl>
   56     56   
/// <p>Related actions include:</p>
   57     57   
/// <ul>
   58     58   
/// <li>
   59     59   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html">CreateJob</a></p></li>
   60     60   
/// <li>
   61     61   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetJobTagging.html">GetJobTagging</a></p></li>
   62     62   
/// <li>
   63     63   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteJobTagging.html">DeleteJobTagging</a></p></li>
   64         -
/// </ul><important>
   65         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   66         -
/// </important>
          64  +
/// </ul>
   67     65   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   68     66   
pub struct PutJobTaggingFluentBuilder {
   69     67   
    handle: ::std::sync::Arc<crate::client::Handle>,
   70     68   
    inner: crate::operation::put_job_tagging::builders::PutJobTaggingInputBuilder,
   71     69   
    config_override: ::std::option::Option<crate::config::Builder>,
   72     70   
}
   73     71   
impl
   74     72   
    crate::client::customize::internal::CustomizableSend<
   75     73   
        crate::operation::put_job_tagging::PutJobTaggingOutput,
   76     74   
        crate::operation::put_job_tagging::PutJobTaggingError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_multi_region_access_point_policy/builders.rs

@@ -6,6 +68,66 @@
   26     26   
/// <p>This operation is not supported by directory buckets.</p>
   27     27   
/// </note>
   28     28   
/// <p>Associates an access control policy with the specified Multi-Region Access Point. Each Multi-Region Access Point can have only one policy, so a request made to this action replaces any existing policy that is associated with the specified Multi-Region Access Point.</p>
   29     29   
/// <p>This action will always be routed to the US West (Oregon) Region. For more information about the restrictions around working with Multi-Region Access Points, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRestrictions.html">Multi-Region Access Point restrictions and limitations</a> in the <i>Amazon S3 User Guide</i>.</p>
   30     30   
/// <p>The following actions are related to <code>PutMultiRegionAccessPointPolicy</code>:</p>
   31     31   
/// <ul>
   32     32   
/// <li>
   33     33   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html">GetMultiRegionAccessPointPolicy</a></p></li>
   34     34   
/// <li>
   35     35   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html">GetMultiRegionAccessPointPolicyStatus</a></p></li>
   36         -
/// </ul><important>
   37         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   38         -
/// </important>
          36  +
/// </ul>
   39     37   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   40     38   
pub struct PutMultiRegionAccessPointPolicyFluentBuilder {
   41     39   
    handle: ::std::sync::Arc<crate::client::Handle>,
   42     40   
    inner: crate::operation::put_multi_region_access_point_policy::builders::PutMultiRegionAccessPointPolicyInputBuilder,
   43     41   
    config_override: ::std::option::Option<crate::config::Builder>,
   44     42   
}
   45     43   
impl
   46     44   
    crate::client::customize::internal::CustomizableSend<
   47     45   
        crate::operation::put_multi_region_access_point_policy::PutMultiRegionAccessPointPolicyOutput,
   48     46   
        crate::operation::put_multi_region_access_point_policy::PutMultiRegionAccessPointPolicyError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_public_access_block/builders.rs

@@ -1,1 +67,65 @@
   18     18   
        let mut fluent_builder = client.put_public_access_block();
   19     19   
        fluent_builder.inner = self;
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `PutPublicAccessBlock`.
   24     24   
///
   25     25   
/// <note>
   26     26   
/// <p>This operation is not supported by directory buckets.</p>
   27     27   
/// </note>
   28         -
/// <p>Creates or modifies the <code>PublicAccessBlock</code> configuration for an Amazon Web Services account. For this operation, users must have the <code>s3:PutAccountPublicAccessBlock</code> permission. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html"> Using Amazon S3 block public access</a>.</p>
          28  +
/// <p>Creates or modifies the <code>PublicAccessBlock</code> configuration for an Amazon Web Services account. This operation may be restricted when the account is managed by organization-level Block Public Access policies. You might get an Access Denied (403) error when the account is managed by organization-level Block Public Access policies. Organization-level policies override account-level settings, preventing direct account-level modifications. For this operation, users must have the <code>s3:PutAccountPublicAccessBlock</code> permission. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html"> Using Amazon S3 block public access</a>.</p>
   29     29   
/// <p>Related actions include:</p>
   30     30   
/// <ul>
   31     31   
/// <li>
   32     32   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetPublicAccessBlock.html">GetPublicAccessBlock</a></p></li>
   33     33   
/// <li>
   34     34   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a></p></li>
   35         -
/// </ul><important>
   36         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   37         -
/// </important>
          35  +
/// </ul>
   38     36   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   39     37   
pub struct PutPublicAccessBlockFluentBuilder {
   40     38   
    handle: ::std::sync::Arc<crate::client::Handle>,
   41     39   
    inner: crate::operation::put_public_access_block::builders::PutPublicAccessBlockInputBuilder,
   42     40   
    config_override: ::std::option::Option<crate::config::Builder>,
   43     41   
}
   44     42   
impl
   45     43   
    crate::client::customize::internal::CustomizableSend<
   46     44   
        crate::operation::put_public_access_block::PutPublicAccessBlockOutput,
   47     45   
        crate::operation::put_public_access_block::PutPublicAccessBlockError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_storage_lens_configuration/builders.rs

@@ -1,1 +62,60 @@
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `PutStorageLensConfiguration`.
   24     24   
///
   25     25   
/// <note>
   26     26   
/// <p>This operation is not supported by directory buckets.</p>
   27     27   
/// </note>
   28     28   
/// <p>Puts an Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html">Working with Amazon S3 Storage Lens</a> in the <i>Amazon S3 User Guide</i>. For a complete list of S3 Storage Lens metrics, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html">S3 Storage Lens metrics glossary</a> in the <i>Amazon S3 User Guide</i>.</p><note>
   29     29   
/// <p>To use this action, you must have permission to perform the <code>s3:PutStorageLensConfiguration</code> action. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html">Setting permissions to use Amazon S3 Storage Lens</a> in the <i>Amazon S3 User Guide</i>.</p>
   30         -
/// </note> <important>
   31         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   32         -
/// </important>
          30  +
/// </note>
   33     31   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   34     32   
pub struct PutStorageLensConfigurationFluentBuilder {
   35     33   
    handle: ::std::sync::Arc<crate::client::Handle>,
   36     34   
    inner: crate::operation::put_storage_lens_configuration::builders::PutStorageLensConfigurationInputBuilder,
   37     35   
    config_override: ::std::option::Option<crate::config::Builder>,
   38     36   
}
   39     37   
impl
   40     38   
    crate::client::customize::internal::CustomizableSend<
   41     39   
        crate::operation::put_storage_lens_configuration::PutStorageLensConfigurationOutput,
   42     40   
        crate::operation::put_storage_lens_configuration::PutStorageLensConfigurationError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_storage_lens_configuration_tagging/builders.rs

@@ -1,1 +62,60 @@
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `PutStorageLensConfigurationTagging`.
   24     24   
///
   25     25   
/// <note>
   26     26   
/// <p>This operation is not supported by directory buckets.</p>
   27     27   
/// </note>
   28     28   
/// <p>Put or replace tags on an existing Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html">Assessing your storage activity and usage with Amazon S3 Storage Lens </a> in the <i>Amazon S3 User Guide</i>.</p><note>
   29     29   
/// <p>To use this action, you must have permission to perform the <code>s3:PutStorageLensConfigurationTagging</code> action. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html">Setting permissions to use Amazon S3 Storage Lens</a> in the <i>Amazon S3 User Guide</i>.</p>
   30         -
/// </note> <important>
   31         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   32         -
/// </important>
          30  +
/// </note>
   33     31   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   34     32   
pub struct PutStorageLensConfigurationTaggingFluentBuilder {
   35     33   
    handle: ::std::sync::Arc<crate::client::Handle>,
   36     34   
    inner: crate::operation::put_storage_lens_configuration_tagging::builders::PutStorageLensConfigurationTaggingInputBuilder,
   37     35   
    config_override: ::std::option::Option<crate::config::Builder>,
   38     36   
}
   39     37   
impl
   40     38   
    crate::client::customize::internal::CustomizableSend<
   41     39   
        crate::operation::put_storage_lens_configuration_tagging::PutStorageLensConfigurationTaggingOutput,
   42     40   
        crate::operation::put_storage_lens_configuration_tagging::PutStorageLensConfigurationTaggingError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/submit_multi_region_access_point_routes/builders.rs

@@ -14,14 +76,74 @@
   34     34   
/// <li>
   35     35   
/// <p><code>us-east-1</code></p></li>
   36     36   
/// <li>
   37     37   
/// <p><code>us-west-2</code></p></li>
   38     38   
/// <li>
   39     39   
/// <p><code>ap-southeast-2</code></p></li>
   40     40   
/// <li>
   41     41   
/// <p><code>ap-northeast-1</code></p></li>
   42     42   
/// <li>
   43     43   
/// <p><code>eu-west-1</code></p></li>
   44         -
/// </ul><important>
   45         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   46         -
/// </important>
          44  +
/// </ul>
   47     45   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   48     46   
pub struct SubmitMultiRegionAccessPointRoutesFluentBuilder {
   49     47   
    handle: ::std::sync::Arc<crate::client::Handle>,
   50     48   
    inner: crate::operation::submit_multi_region_access_point_routes::builders::SubmitMultiRegionAccessPointRoutesInputBuilder,
   51     49   
    config_override: ::std::option::Option<crate::config::Builder>,
   52     50   
}
   53     51   
impl
   54     52   
    crate::client::customize::internal::CustomizableSend<
   55     53   
        crate::operation::submit_multi_region_access_point_routes::SubmitMultiRegionAccessPointRoutesOutput,
   56     54   
        crate::operation::submit_multi_region_access_point_routes::SubmitMultiRegionAccessPointRoutesError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/tag_resource/builders.rs

@@ -1,1 +103,92 @@
   19     19   
        fluent_builder.inner = self;
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `TagResource`.
   24     24   
///
   25     25   
/// <p>Creates a new user-defined tag or updates an existing tag. Each tag is a label consisting of a key and value that is applied to your resource. Tags can help you organize, track costs for, and control access to your resources. You can add up to 50 Amazon Web Services resource tags for each S3 resource.</p><note>
   26     26   
/// <p>This operation is only supported for the following Amazon S3 resource:</p>
   27     27   
/// <ul>
   28     28   
/// <li>
          29  +
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/buckets-tagging.html">General purpose buckets</a></p></li>
          30  +
/// <li>
   29     31   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-db-tagging.html">Access Points for directory buckets</a></p></li>
   30     32   
/// <li>
   31     33   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-tagging.html">Access Points for general purpose buckets</a></p></li>
   32     34   
/// <li>
   33     35   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html">Directory buckets</a></p></li>
   34     36   
/// <li>
   35     37   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html">S3 Storage Lens groups</a></p></li>
   36     38   
/// <li>
   37     39   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html">S3 Access Grants instances, registered locations, or grants</a>.</p></li>
   38     40   
/// </ul>
   39         -
/// </note> <note>
   40         -
/// <p>This operation is only supported for the following Amazon S3 resource:</p>
   41         -
/// <ul>
   42         -
/// <li>
   43         -
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html">Directory buckets</a></p></li>
   44         -
/// <li>
   45         -
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html">S3 Storage Lens groups</a></p></li>
   46         -
/// <li>
   47         -
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html">S3 Access Grants instances, registered locations, or grants</a>.</p></li>
   48         -
/// </ul>
   49     41   
/// </note>
   50     42   
/// <dl>
   51     43   
/// <dt>
   52     44   
/// Permissions
   53     45   
/// </dt>
   54     46   
/// <dd>
   55         -
/// <p>For Storage Lens groups and S3 Access Grants, you must have the <code>s3:TagResource</code> permission to use this operation.</p>
   56         -
/// <p>For more information about the required Storage Lens Groups permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions">Setting account permissions to use S3 Storage Lens groups</a>.</p>
          47  +
/// <p>For general purpose buckets, access points for general purpose buckets, Storage Lens groups, and S3 Access Grants, you must have the <code>s3:TagResource</code> permission to use this operation.</p>
   57     48   
/// </dd>
   58     49   
/// <dt>
   59     50   
/// Directory bucket permissions
   60     51   
/// </dt>
   61     52   
/// <dd>
   62         -
/// <p>For directory buckets and access points for directory buckets, you must have the <code>s3express:TagResource</code> permission to use this operation. For more information about directory buckets policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-permissions.html">Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
          53  +
/// <p>For directory buckets, you must have the <code>s3express:TagResource</code> permission to use this operation. For more information about directory buckets policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-permissions.html">Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
   63     54   
/// </dd>
   64     55   
/// <dt>
   65     56   
/// HTTP Host header syntax
   66     57   
/// </dt>
   67     58   
/// <dd>
   68     59   
/// <p><b>Directory buckets </b> - The HTTP Host header syntax is <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
   69     60   
/// </dd>
   70     61   
/// </dl>
   71         -
/// <p>For information about S3 Tagging errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList">List of Amazon S3 Tagging error codes</a>.</p><important>
   72         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   73         -
/// </important>
          62  +
/// <p>For information about S3 Tagging errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList">List of Amazon S3 Tagging error codes</a>.</p>
   74     63   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   75     64   
pub struct TagResourceFluentBuilder {
   76     65   
    handle: ::std::sync::Arc<crate::client::Handle>,
   77     66   
    inner: crate::operation::tag_resource::builders::TagResourceInputBuilder,
   78     67   
    config_override: ::std::option::Option<crate::config::Builder>,
   79     68   
}
   80     69   
impl
   81     70   
    crate::client::customize::internal::CustomizableSend<
   82     71   
        crate::operation::tag_resource::TagResourceOutput,
   83     72   
        crate::operation::tag_resource::TagResourceError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/untag_resource/builders.rs

@@ -1,1 +93,92 @@
   19     19   
        fluent_builder.inner = self;
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `UntagResource`.
   24     24   
///
   25     25   
/// <p>This operation removes the specified user-defined tags from an S3 resource. You can pass one or more tag keys.</p><note>
   26     26   
/// <p>This operation is only supported for the following Amazon S3 resources:</p>
   27     27   
/// <ul>
   28     28   
/// <li>
          29  +
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/buckets-tagging.html">General purpose buckets</a></p></li>
          30  +
/// <li>
   29     31   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-db-tagging.html">Access Points for directory buckets</a></p></li>
   30     32   
/// <li>
   31     33   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-tagging.html">Access Points for general purpose buckets</a></p></li>
   32     34   
/// <li>
   33     35   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html">Directory buckets</a></p></li>
   34     36   
/// <li>
   35         -
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html">Storage Lens groups</a></p></li>
          37  +
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html">S3 Storage Lens groups</a></p></li>
   36     38   
/// <li>
   37     39   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html">S3 Access Grants instances, registered locations, and grants</a>.</p></li>
   38     40   
/// </ul>
   39     41   
/// </note>
   40     42   
/// <dl>
   41     43   
/// <dt>
   42     44   
/// Permissions
   43     45   
/// </dt>
   44     46   
/// <dd>
   45         -
/// <p>For Storage Lens groups and S3 Access Grants, you must have the <code>s3:UntagResource</code> permission to use this operation.</p>
   46         -
/// <p>For more information about the required Storage Lens Groups permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions">Setting account permissions to use S3 Storage Lens groups</a>.</p>
          47  +
/// <p>For general purpose buckets, access points for general purpose buckets, Storage Lens groups, and S3 Access Grants, you must have the <code>s3:UntagResource</code> permission to use this operation.</p>
   47     48   
/// </dd>
   48     49   
/// <dt>
   49     50   
/// Directory bucket permissions
   50     51   
/// </dt>
   51     52   
/// <dd>
   52         -
/// <p>For directory buckets and access points for directory buckets, you must have the <code>s3express:UntagResource</code> permission to use this operation. For more information about directory buckets policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-permissions.html">Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
          53  +
/// <p>For directory buckets, you must have the <code>s3express:UntagResource</code> permission to use this operation. For more information about directory buckets policies and permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-permissions.html">Identity and Access Management (IAM) for S3 Express One Zone</a> in the <i>Amazon S3 User Guide</i>.</p>
   53     54   
/// </dd>
   54     55   
/// <dt>
   55     56   
/// HTTP Host header syntax
   56     57   
/// </dt>
   57     58   
/// <dd>
   58     59   
/// <p><b>Directory buckets </b> - The HTTP Host header syntax is <code>s3express-control.<i>region</i>.amazonaws.com</code>.</p>
   59     60   
/// </dd>
   60     61   
/// </dl>
   61         -
/// <p>For information about S3 Tagging errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList">List of Amazon S3 Tagging error codes</a>.</p><important>
   62         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   63         -
/// </important>
          62  +
/// <p>For information about S3 Tagging errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList">List of Amazon S3 Tagging error codes</a>.</p>
   64     63   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   65     64   
pub struct UntagResourceFluentBuilder {
   66     65   
    handle: ::std::sync::Arc<crate::client::Handle>,
   67     66   
    inner: crate::operation::untag_resource::builders::UntagResourceInputBuilder,
   68     67   
    config_override: ::std::option::Option<crate::config::Builder>,
   69     68   
}
   70     69   
impl
   71     70   
    crate::client::customize::internal::CustomizableSend<
   72     71   
        crate::operation::untag_resource::UntagResourceOutput,
   73     72   
        crate::operation::untag_resource::UntagResourceError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/update_access_grants_location/builders.rs

@@ -9,9 +71,69 @@
   29     29   
/// </dt>
   30     30   
/// <dd>
   31     31   
/// <p>You must have the <code>s3:UpdateAccessGrantsLocation</code> permission to use this operation.</p>
   32     32   
/// </dd>
   33     33   
/// <dt>
   34     34   
/// Additional Permissions
   35     35   
/// </dt>
   36     36   
/// <dd>
   37     37   
/// <p>You must also have the following permission: <code>iam:PassRole</code></p>
   38     38   
/// </dd>
   39         -
/// </dl><important>
   40         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   41         -
/// </important>
          39  +
/// </dl>
   42     40   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   43     41   
pub struct UpdateAccessGrantsLocationFluentBuilder {
   44     42   
    handle: ::std::sync::Arc<crate::client::Handle>,
   45     43   
    inner: crate::operation::update_access_grants_location::builders::UpdateAccessGrantsLocationInputBuilder,
   46     44   
    config_override: ::std::option::Option<crate::config::Builder>,
   47     45   
}
   48     46   
impl
   49     47   
    crate::client::customize::internal::CustomizableSend<
   50     48   
        crate::operation::update_access_grants_location::UpdateAccessGrantsLocationOutput,
   51     49   
        crate::operation::update_access_grants_location::UpdateAccessGrantsLocationError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/update_job_priority/builders.rs

@@ -14,14 +76,74 @@
   34     34   
/// <p>Related actions include:</p>
   35     35   
/// <ul>
   36     36   
/// <li>
   37     37   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html">CreateJob</a></p></li>
   38     38   
/// <li>
   39     39   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html">ListJobs</a></p></li>
   40     40   
/// <li>
   41     41   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html">DescribeJob</a></p></li>
   42     42   
/// <li>
   43     43   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html">UpdateJobStatus</a></p></li>
   44         -
/// </ul><important>
   45         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   46         -
/// </important>
          44  +
/// </ul>
   47     45   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   48     46   
pub struct UpdateJobPriorityFluentBuilder {
   49     47   
    handle: ::std::sync::Arc<crate::client::Handle>,
   50     48   
    inner: crate::operation::update_job_priority::builders::UpdateJobPriorityInputBuilder,
   51     49   
    config_override: ::std::option::Option<crate::config::Builder>,
   52     50   
}
   53     51   
impl
   54     52   
    crate::client::customize::internal::CustomizableSend<
   55     53   
        crate::operation::update_job_priority::UpdateJobPriorityOutput,
   56     54   
        crate::operation::update_job_priority::UpdateJobPriorityError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/update_job_status/builders.rs

@@ -14,14 +76,74 @@
   34     34   
/// <p>Related actions include:</p>
   35     35   
/// <ul>
   36     36   
/// <li>
   37     37   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html">CreateJob</a></p></li>
   38     38   
/// <li>
   39     39   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html">ListJobs</a></p></li>
   40     40   
/// <li>
   41     41   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html">DescribeJob</a></p></li>
   42     42   
/// <li>
   43     43   
/// <p><a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobStatus.html">UpdateJobStatus</a></p></li>
   44         -
/// </ul><important>
   45         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   46         -
/// </important>
          44  +
/// </ul>
   47     45   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   48     46   
pub struct UpdateJobStatusFluentBuilder {
   49     47   
    handle: ::std::sync::Arc<crate::client::Handle>,
   50     48   
    inner: crate::operation::update_job_status::builders::UpdateJobStatusInputBuilder,
   51     49   
    config_override: ::std::option::Option<crate::config::Builder>,
   52     50   
}
   53     51   
impl
   54     52   
    crate::client::customize::internal::CustomizableSend<
   55     53   
        crate::operation::update_job_status::UpdateJobStatusOutput,
   56     54   
        crate::operation::update_job_status::UpdateJobStatusError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/update_storage_lens_group/builders.rs

@@ -1,1 +59,57 @@
   17     17   
    > {
   18     18   
        let mut fluent_builder = client.update_storage_lens_group();
   19     19   
        fluent_builder.inner = self;
   20     20   
        fluent_builder.send().await
   21     21   
    }
   22     22   
}
   23     23   
/// Fluent builder constructing a request to `UpdateStorageLensGroup`.
   24     24   
///
   25     25   
/// <p>Updates the existing Storage Lens group.</p>
   26     26   
/// <p>To use this operation, you must have the permission to perform the <code>s3:UpdateStorageLensGroup</code> action. For more information about the required Storage Lens Groups permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions">Setting account permissions to use S3 Storage Lens groups</a>.</p>
   27         -
/// <p>For information about Storage Lens groups errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList">List of Amazon S3 Storage Lens error codes</a>.</p><important>
   28         -
/// <p>You must URL encode any signed header values that contain spaces. For example, if your header value is <code>my file.txt</code>, containing two spaces after <code>my</code>, you must URL encode this value to <code>my%20%20file.txt</code>.</p>
   29         -
/// </important>
          27  +
/// <p>For information about Storage Lens groups errors, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList">List of Amazon S3 Storage Lens error codes</a>.</p>
   30     28   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   31     29   
pub struct UpdateStorageLensGroupFluentBuilder {
   32     30   
    handle: ::std::sync::Arc<crate::client::Handle>,
   33     31   
    inner: crate::operation::update_storage_lens_group::builders::UpdateStorageLensGroupInputBuilder,
   34     32   
    config_override: ::std::option::Option<crate::config::Builder>,
   35     33   
}
   36     34   
impl
   37     35   
    crate::client::customize::internal::CustomizableSend<
   38     36   
        crate::operation::update_storage_lens_group::UpdateStorageLensGroupOutput,
   39     37   
        crate::operation::update_storage_lens_group::UpdateStorageLensGroupError,

tmp-codegen-diff/aws-sdk/sdk/s3control/src/protocol_serde.rs

@@ -452,452 +647,659 @@
  472    472   
pub(crate) mod shape_s3_job_manifest_generator;
  473    473   
  474    474   
pub(crate) mod shape_s3_set_object_acl_operation;
  475    475   
  476    476   
pub(crate) mod shape_s3_set_object_legal_hold_operation;
  477    477   
  478    478   
pub(crate) mod shape_s3_set_object_retention_operation;
  479    479   
  480    480   
pub(crate) mod shape_s3_set_object_tagging_operation;
  481    481   
         482  +
pub(crate) mod shape_s3_update_object_encryption_operation;
         483  +
  482    484   
pub(crate) mod shape_scope_permission_list;
  483    485   
  484    486   
pub(crate) mod shape_storage_lens_aws_org;
  485    487   
  486    488   
pub(crate) mod shape_storage_lens_data_export;
  487    489   
         490  +
pub(crate) mod shape_storage_lens_expanded_prefixes_data_export;
         491  +
  488    492   
pub(crate) mod shape_storage_lens_group_filter;
  489    493   
  490    494   
pub(crate) mod shape_abort_incomplete_multipart_upload;
  491    495   
  492    496   
pub(crate) mod shape_activity_metrics;
  493    497   
  494    498   
pub(crate) mod shape_advanced_cost_optimization_metrics;
  495    499   
  496    500   
pub(crate) mod shape_advanced_data_protection_metrics;
  497    501   
         502  +
pub(crate) mod shape_advanced_performance_metrics;
         503  +
  498    504   
pub(crate) mod shape_async_error_details;
  499    505   
  500    506   
pub(crate) mod shape_bucket_level;
  501    507   
  502    508   
pub(crate) mod shape_cloud_watch_metrics;
  503    509   
  504    510   
pub(crate) mod shape_delete_marker_replication;
  505    511   
  506    512   
pub(crate) mod shape_destination;
  507    513   
  508    514   
pub(crate) mod shape_detailed_status_codes_metrics;
  509    515   
  510    516   
pub(crate) mod shape_existing_object_replication;
  511    517   
  512    518   
pub(crate) mod shape_job_failure;
  513    519   
  514    520   
pub(crate) mod shape_job_manifest_generator_filter;
  515    521   
  516    522   
pub(crate) mod shape_job_timers;
  517    523   
  518    524   
pub(crate) mod shape_lifecycle_expiration;
  519    525   
  520    526   
pub(crate) mod shape_lifecycle_rule_filter;
  521    527   
  522    528   
pub(crate) mod shape_match_object_age;
  523    529   
  524    530   
pub(crate) mod shape_match_object_size;
  525    531   
  526    532   
pub(crate) mod shape_multi_region_access_points_async_response;
  527    533   
  528    534   
pub(crate) mod shape_noncurrent_version_expiration;
  529    535   
  530    536   
pub(crate) mod shape_noncurrent_version_transition;
  531    537   
  532    538   
pub(crate) mod shape_noncurrent_version_transition_list;
  533    539   
         540  +
pub(crate) mod shape_object_encryption;
         541  +
  534    542   
pub(crate) mod shape_object_lambda_content_transformation;
  535    543   
  536    544   
pub(crate) mod shape_region_report;
  537    545   
  538    546   
pub(crate) mod shape_replication_rule_filter;
  539    547   
  540    548   
pub(crate) mod shape_s3_access_control_policy;
  541    549   
  542    550   
pub(crate) mod shape_s3_bucket_destination;
  543    551   
  544    552   
pub(crate) mod shape_s3_delete_object_tagging_operation;
  545    553   
  546    554   
pub(crate) mod shape_s3_grant;
  547    555   
  548    556   
pub(crate) mod shape_s3_manifest_output_location;
  549    557   
  550    558   
pub(crate) mod shape_s3_object_lock_legal_hold;
  551    559   
  552    560   
pub(crate) mod shape_s3_object_metadata;
  553    561   
  554    562   
pub(crate) mod shape_s3_replicate_object_operation;
  555    563   
  556    564   
pub(crate) mod shape_s3_retention;
  557    565   
  558    566   
pub(crate) mod shape_source_selection_criteria;
  559    567   
  560    568   
pub(crate) mod shape_storage_lens_group_and_operator;
  561    569   
  562    570   
pub(crate) mod shape_storage_lens_group_level;
  563    571   
  564    572   
pub(crate) mod shape_storage_lens_group_or_operator;
  565    573   
         574  +
pub(crate) mod shape_storage_lens_table_destination;
         575  +
  566    576   
pub(crate) mod shape_transition;
  567    577   
  568    578   
pub(crate) mod shape_transition_list;
  569    579   
  570    580   
pub(crate) mod shape_access_control_translation;
  571    581   
  572    582   
pub(crate) mod shape_aws_lambda_transformation;
  573    583   
  574    584   
pub(crate) mod shape_buckets;
  575    585   
  576    586   
pub(crate) mod shape_encryption_configuration;
  577    587   
  578    588   
pub(crate) mod shape_generated_manifest_encryption;
  579    589   
  580    590   
pub(crate) mod shape_job_manifest_field_list;
  581    591   
  582    592   
pub(crate) mod shape_key_name_constraint;
  583    593   
  584    594   
pub(crate) mod shape_lifecycle_rule_and_operator;
  585    595   
  586    596   
pub(crate) mod shape_match_any_prefix;
  587    597   
  588    598   
pub(crate) mod shape_match_any_suffix;
  589    599   
  590    600   
pub(crate) mod shape_match_any_tag;
  591    601   
  592    602   
pub(crate) mod shape_metrics;
  593    603   
  594    604   
pub(crate) mod shape_multi_region_access_point_regional_response_list;
  595    605   
  596    606   
pub(crate) mod shape_object_encryption_filter;
  597    607   
  598    608   
pub(crate) mod shape_object_lambda_transformation_configuration_actions_list;
  599    609   
  600    610   
pub(crate) mod shape_prefix_level;
  601    611   
  602    612   
pub(crate) mod shape_region_creation_list;
  603    613   
  604    614   
pub(crate) mod shape_regions;
  605    615   
  606    616   
pub(crate) mod shape_replica_modifications;
  607    617   
  608    618   
pub(crate) mod shape_replication_rule_and_operator;
  609    619   
  610    620   
pub(crate) mod shape_replication_time;
  611    621   
  612    622   
pub(crate) mod shape_s3_access_control_list;
  613    623   
  614    624   
pub(crate) mod shape_s3_grant_list;
  615    625   
  616    626   
pub(crate) mod shape_s3_grantee;
  617    627   
         628  +
pub(crate) mod shape_s3_update_object_encryption_ssekms;
         629  +
  618    630   
pub(crate) mod shape_sse_kms_encrypted_objects;
  619    631   
  620    632   
pub(crate) mod shape_storage_lens_data_export_encryption;
  621    633   
  622    634   
pub(crate) mod shape_storage_lens_group_level_selection_criteria;
  623    635   
  624    636   
pub(crate) mod shape_user_arguments;
  625    637   
  626    638   
pub(crate) mod shape_dssekms_filter;
  627    639   

tmp-codegen-diff/aws-sdk/sdk/s3control/src/protocol_serde/shape_account_level.rs

@@ -1,1 +108,122 @@
   18     18   
        crate::protocol_serde::shape_advanced_cost_optimization_metrics::ser_advanced_cost_optimization_metrics(var_3, inner_writer)?
   19     19   
    }
   20     20   
    if let Some(var_4) = &input.advanced_data_protection_metrics {
   21     21   
        let inner_writer = scope.start_el("AdvancedDataProtectionMetrics");
   22     22   
        crate::protocol_serde::shape_advanced_data_protection_metrics::ser_advanced_data_protection_metrics(var_4, inner_writer)?
   23     23   
    }
   24     24   
    if let Some(var_5) = &input.detailed_status_codes_metrics {
   25     25   
        let inner_writer = scope.start_el("DetailedStatusCodesMetrics");
   26     26   
        crate::protocol_serde::shape_detailed_status_codes_metrics::ser_detailed_status_codes_metrics(var_5, inner_writer)?
   27     27   
    }
   28         -
    if let Some(var_6) = &input.storage_lens_group_level {
          28  +
    if let Some(var_6) = &input.advanced_performance_metrics {
          29  +
        let inner_writer = scope.start_el("AdvancedPerformanceMetrics");
          30  +
        crate::protocol_serde::shape_advanced_performance_metrics::ser_advanced_performance_metrics(var_6, inner_writer)?
          31  +
    }
          32  +
    if let Some(var_7) = &input.storage_lens_group_level {
   29     33   
        let inner_writer = scope.start_el("StorageLensGroupLevel");
   30         -
        crate::protocol_serde::shape_storage_lens_group_level::ser_storage_lens_group_level(var_6, inner_writer)?
          34  +
        crate::protocol_serde::shape_storage_lens_group_level::ser_storage_lens_group_level(var_7, inner_writer)?
   31     35   
    }
   32     36   
    scope.finish();
   33     37   
    Ok(())
   34     38   
}
   35     39   
   36     40   
#[allow(clippy::needless_question_mark)]
   37     41   
pub fn de_account_level(
   38     42   
    decoder: &mut ::aws_smithy_xml::decode::ScopedDecoder,
   39     43   
) -> ::std::result::Result<crate::types::AccountLevel, ::aws_smithy_xml::decode::XmlDecodeError> {
   40     44   
    #[allow(unused_mut)]
   41     45   
    let mut builder = crate::types::AccountLevel::builder();
   42     46   
    while let Some(mut tag) = decoder.next_tag() {
   43     47   
        match tag.start_el() {
   44     48   
            s if s.matches("ActivityMetrics") /* ActivityMetrics com.amazonaws.s3control#AccountLevel$ActivityMetrics */ =>  {
   45         -
                let var_7 =
          49  +
                let var_8 =
   46     50   
                    Some(
   47     51   
                        crate::protocol_serde::shape_activity_metrics::de_activity_metrics(&mut tag)
   48     52   
                        ?
   49     53   
                    )
   50     54   
                ;
   51         -
                builder = builder.set_activity_metrics(var_7);
          55  +
                builder = builder.set_activity_metrics(var_8);
   52     56   
            }
   53     57   
            ,
   54     58   
            s if s.matches("BucketLevel") /* BucketLevel com.amazonaws.s3control#AccountLevel$BucketLevel */ =>  {
   55         -
                let var_8 =
          59  +
                let var_9 =
   56     60   
                    Some(
   57     61   
                        crate::protocol_serde::shape_bucket_level::de_bucket_level(&mut tag)
   58     62   
                        ?
   59     63   
                    )
   60     64   
                ;
   61         -
                builder = builder.set_bucket_level(var_8);
          65  +
                builder = builder.set_bucket_level(var_9);
   62     66   
            }
   63     67   
            ,
   64     68   
            s if s.matches("AdvancedCostOptimizationMetrics") /* AdvancedCostOptimizationMetrics com.amazonaws.s3control#AccountLevel$AdvancedCostOptimizationMetrics */ =>  {
   65         -
                let var_9 =
          69  +
                let var_10 =
   66     70   
                    Some(
   67     71   
                        crate::protocol_serde::shape_advanced_cost_optimization_metrics::de_advanced_cost_optimization_metrics(&mut tag)
   68     72   
                        ?
   69     73   
                    )
   70     74   
                ;
   71         -
                builder = builder.set_advanced_cost_optimization_metrics(var_9);
          75  +
                builder = builder.set_advanced_cost_optimization_metrics(var_10);
   72     76   
            }
   73     77   
            ,
   74     78   
            s if s.matches("AdvancedDataProtectionMetrics") /* AdvancedDataProtectionMetrics com.amazonaws.s3control#AccountLevel$AdvancedDataProtectionMetrics */ =>  {
   75         -
                let var_10 =
          79  +
                let var_11 =
   76     80   
                    Some(
   77     81   
                        crate::protocol_serde::shape_advanced_data_protection_metrics::de_advanced_data_protection_metrics(&mut tag)
   78     82   
                        ?
   79     83   
                    )
   80     84   
                ;
   81         -
                builder = builder.set_advanced_data_protection_metrics(var_10);
          85  +
                builder = builder.set_advanced_data_protection_metrics(var_11);
   82     86   
            }
   83     87   
            ,
   84     88   
            s if s.matches("DetailedStatusCodesMetrics") /* DetailedStatusCodesMetrics com.amazonaws.s3control#AccountLevel$DetailedStatusCodesMetrics */ =>  {
   85         -
                let var_11 =
          89  +
                let var_12 =
   86     90   
                    Some(
   87     91   
                        crate::protocol_serde::shape_detailed_status_codes_metrics::de_detailed_status_codes_metrics(&mut tag)
   88     92   
                        ?
   89     93   
                    )
   90     94   
                ;
   91         -
                builder = builder.set_detailed_status_codes_metrics(var_11);
          95  +
                builder = builder.set_detailed_status_codes_metrics(var_12);
          96  +
            }
          97  +
            ,
          98  +
            s if s.matches("AdvancedPerformanceMetrics") /* AdvancedPerformanceMetrics com.amazonaws.s3control#AccountLevel$AdvancedPerformanceMetrics */ =>  {
          99  +
                let var_13 =
         100  +
                    Some(
         101  +
                        crate::protocol_serde::shape_advanced_performance_metrics::de_advanced_performance_metrics(&mut tag)
         102  +
                        ?
         103  +
                    )
         104  +
                ;
         105  +
                builder = builder.set_advanced_performance_metrics(var_13);
   92    106   
            }
   93    107   
            ,
   94    108   
            s if s.matches("StorageLensGroupLevel") /* StorageLensGroupLevel com.amazonaws.s3control#AccountLevel$StorageLensGroupLevel */ =>  {
   95         -
                let var_12 =
         109  +
                let var_14 =
   96    110   
                    Some(
   97    111   
                        crate::protocol_serde::shape_storage_lens_group_level::de_storage_lens_group_level(&mut tag)
   98    112   
                        ?
   99    113   
                    )
  100    114   
                ;
  101         -
                builder = builder.set_storage_lens_group_level(var_12);
         115  +
                builder = builder.set_storage_lens_group_level(var_14);
  102    116   
            }
  103    117   
            ,
  104    118   
            _ => {}
  105    119   
        }
  106    120   
    }
  107    121   
    Ok(crate::serde_util::account_level_correct_errors(builder).build())
  108    122   
}