AWS SDK

AWS SDK

rev. dc1b11a614d928cff165eac12e20d37ae979d6cc

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_lifecycle_rule.rs

@@ -1,1 +86,84 @@
    7      7   
pub struct LifecycleRule {
    8      8   
    /// <p>Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.</p>
    9      9   
    pub expiration: ::std::option::Option<crate::types::LifecycleExpiration>,
   10     10   
    /// <p>Unique identifier for the rule. The value cannot be longer than 255 characters.</p>
   11     11   
    pub id: ::std::option::Option<::std::string::String>,
   12     12   
    /// <p>Prefix identifying one or more objects to which the rule applies. This is no longer used; use <code>Filter</code> instead.</p><important>
   13     13   
    /// <p>Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> XML related object key constraints</a>.</p>
   14     14   
    /// </important>
   15     15   
    #[deprecated]
   16     16   
    pub prefix: ::std::option::Option<::std::string::String>,
   17         -
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p>
   18         -
    /// <p>For more information about <code>Tag</code> filters, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-filters.html">Adding filters to Lifecycle rules</a> in the <i>Amazon S3 User Guide</i>.</p><note>
          17  +
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p><note>
   19     18   
    /// <p><code>Tag</code> filters are not supported for directory buckets.</p>
   20     19   
    /// </note>
   21     20   
    pub filter: ::std::option::Option<crate::types::LifecycleRuleFilter>,
   22     21   
    /// <p>If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.</p>
   23     22   
    pub status: crate::types::ExpirationStatus,
   24     23   
    /// <p>Specifies when an Amazon S3 object transitions to a specified storage class.</p><note>
   25     24   
    /// <p>This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.</p>
   26     25   
    /// </note>
   27     26   
    pub transitions: ::std::option::Option<::std::vec::Vec<crate::types::Transition>>,
   28     27   
    /// <p>Specifies the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to a specific storage class at a set period in the object's lifetime.</p><note>
   29     28   
    /// <p>This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.</p>
   30     29   
    /// </note>
   31     30   
    pub noncurrent_version_transitions: ::std::option::Option<::std::vec::Vec<crate::types::NoncurrentVersionTransition>>,
   32     31   
    /// <p>Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.</p><note>
   33     32   
    /// <p>This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.</p>
   34     33   
    /// </note>
   35     34   
    pub noncurrent_version_expiration: ::std::option::Option<crate::types::NoncurrentVersionExpiration>,
   36     35   
    /// <p>Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config"> Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a> in the <i>Amazon S3 User Guide</i>.</p>
   37     36   
    pub abort_incomplete_multipart_upload: ::std::option::Option<crate::types::AbortIncompleteMultipartUpload>,
   38     37   
}
   39     38   
impl LifecycleRule {
   40     39   
    /// <p>Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.</p>
   41     40   
    pub fn expiration(&self) -> ::std::option::Option<&crate::types::LifecycleExpiration> {
   42     41   
        self.expiration.as_ref()
   43     42   
    }
   44     43   
    /// <p>Unique identifier for the rule. The value cannot be longer than 255 characters.</p>
   45     44   
    pub fn id(&self) -> ::std::option::Option<&str> {
   46     45   
        self.id.as_deref()
   47     46   
    }
   48     47   
    /// <p>Prefix identifying one or more objects to which the rule applies. This is no longer used; use <code>Filter</code> instead.</p><important>
   49     48   
    /// <p>Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> XML related object key constraints</a>.</p>
   50     49   
    /// </important>
   51     50   
    #[deprecated]
   52     51   
    pub fn prefix(&self) -> ::std::option::Option<&str> {
   53     52   
        self.prefix.as_deref()
   54     53   
    }
   55         -
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p>
   56         -
    /// <p>For more information about <code>Tag</code> filters, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-filters.html">Adding filters to Lifecycle rules</a> in the <i>Amazon S3 User Guide</i>.</p><note>
          54  +
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p><note>
   57     55   
    /// <p><code>Tag</code> filters are not supported for directory buckets.</p>
   58     56   
    /// </note>
   59     57   
    pub fn filter(&self) -> ::std::option::Option<&crate::types::LifecycleRuleFilter> {
   60     58   
        self.filter.as_ref()
   61     59   
    }
   62     60   
    /// <p>If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.</p>
   63     61   
    pub fn status(&self) -> &crate::types::ExpirationStatus {
   64     62   
        &self.status
   65     63   
    }
   66     64   
    /// <p>Specifies when an Amazon S3 object transitions to a specified storage class.</p><note>
@@ -136,134 +213,208 @@
  156    154   
        self.prefix = input;
  157    155   
        self
  158    156   
    }
  159    157   
    /// <p>Prefix identifying one or more objects to which the rule applies. This is no longer used; use <code>Filter</code> instead.</p><important>
  160    158   
    /// <p>Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints"> XML related object key constraints</a>.</p>
  161    159   
    /// </important>
  162    160   
    #[deprecated]
  163    161   
    pub fn get_prefix(&self) -> &::std::option::Option<::std::string::String> {
  164    162   
        &self.prefix
  165    163   
    }
  166         -
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p>
  167         -
    /// <p>For more information about <code>Tag</code> filters, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-filters.html">Adding filters to Lifecycle rules</a> in the <i>Amazon S3 User Guide</i>.</p><note>
         164  +
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p><note>
  168    165   
    /// <p><code>Tag</code> filters are not supported for directory buckets.</p>
  169    166   
    /// </note>
  170    167   
    pub fn filter(mut self, input: crate::types::LifecycleRuleFilter) -> Self {
  171    168   
        self.filter = ::std::option::Option::Some(input);
  172    169   
        self
  173    170   
    }
  174         -
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p>
  175         -
    /// <p>For more information about <code>Tag</code> filters, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-filters.html">Adding filters to Lifecycle rules</a> in the <i>Amazon S3 User Guide</i>.</p><note>
         171  +
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p><note>
  176    172   
    /// <p><code>Tag</code> filters are not supported for directory buckets.</p>
  177    173   
    /// </note>
  178    174   
    pub fn set_filter(mut self, input: ::std::option::Option<crate::types::LifecycleRuleFilter>) -> Self {
  179    175   
        self.filter = input;
  180    176   
        self
  181    177   
    }
  182         -
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p>
  183         -
    /// <p>For more information about <code>Tag</code> filters, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-filters.html">Adding filters to Lifecycle rules</a> in the <i>Amazon S3 User Guide</i>.</p><note>
         178  +
    /// <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>, <code>Tag</code>, <code>ObjectSizeGreaterThan</code>, <code>ObjectSizeLessThan</code>, or <code>And</code> specified. <code>Filter</code> is required if the <code>LifecycleRule</code> does not contain a <code>Prefix</code> element.</p><note>
  184    179   
    /// <p><code>Tag</code> filters are not supported for directory buckets.</p>
  185    180   
    /// </note>
  186    181   
    pub fn get_filter(&self) -> &::std::option::Option<crate::types::LifecycleRuleFilter> {
  187    182   
        &self.filter
  188    183   
    }
  189    184   
    /// <p>If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.</p>
  190    185   
    /// This field is required.
  191    186   
    pub fn status(mut self, input: crate::types::ExpirationStatus) -> Self {
  192    187   
        self.status = ::std::option::Option::Some(input);
  193    188   
        self

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_metadata_configuration.rs

@@ -1,0 +73,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>The S3 Metadata configuration for a general purpose bucket.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct MetadataConfiguration {
    7         -
    /// <p>The journal table configuration for a metadata configuration.</p>
    8         -
    pub journal_table_configuration: ::std::option::Option<crate::types::JournalTableConfiguration>,
    9         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   10         -
    pub inventory_table_configuration: ::std::option::Option<crate::types::InventoryTableConfiguration>,
   11         -
}
   12         -
impl MetadataConfiguration {
   13         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   14         -
    pub fn journal_table_configuration(&self) -> ::std::option::Option<&crate::types::JournalTableConfiguration> {
   15         -
        self.journal_table_configuration.as_ref()
   16         -
    }
   17         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   18         -
    pub fn inventory_table_configuration(&self) -> ::std::option::Option<&crate::types::InventoryTableConfiguration> {
   19         -
        self.inventory_table_configuration.as_ref()
   20         -
    }
   21         -
}
   22         -
impl MetadataConfiguration {
   23         -
    /// Creates a new builder-style object to manufacture [`MetadataConfiguration`](crate::types::MetadataConfiguration).
   24         -
    pub fn builder() -> crate::types::builders::MetadataConfigurationBuilder {
   25         -
        crate::types::builders::MetadataConfigurationBuilder::default()
   26         -
    }
   27         -
}
   28         -
   29         -
/// A builder for [`MetadataConfiguration`](crate::types::MetadataConfiguration).
   30         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   31         -
#[non_exhaustive]
   32         -
pub struct MetadataConfigurationBuilder {
   33         -
    pub(crate) journal_table_configuration: ::std::option::Option<crate::types::JournalTableConfiguration>,
   34         -
    pub(crate) inventory_table_configuration: ::std::option::Option<crate::types::InventoryTableConfiguration>,
   35         -
}
   36         -
impl MetadataConfigurationBuilder {
   37         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   38         -
    /// This field is required.
   39         -
    pub fn journal_table_configuration(mut self, input: crate::types::JournalTableConfiguration) -> Self {
   40         -
        self.journal_table_configuration = ::std::option::Option::Some(input);
   41         -
        self
   42         -
    }
   43         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   44         -
    pub fn set_journal_table_configuration(mut self, input: ::std::option::Option<crate::types::JournalTableConfiguration>) -> Self {
   45         -
        self.journal_table_configuration = input;
   46         -
        self
   47         -
    }
   48         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   49         -
    pub fn get_journal_table_configuration(&self) -> &::std::option::Option<crate::types::JournalTableConfiguration> {
   50         -
        &self.journal_table_configuration
   51         -
    }
   52         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   53         -
    pub fn inventory_table_configuration(mut self, input: crate::types::InventoryTableConfiguration) -> Self {
   54         -
        self.inventory_table_configuration = ::std::option::Option::Some(input);
   55         -
        self
   56         -
    }
   57         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   58         -
    pub fn set_inventory_table_configuration(mut self, input: ::std::option::Option<crate::types::InventoryTableConfiguration>) -> Self {
   59         -
        self.inventory_table_configuration = input;
   60         -
        self
   61         -
    }
   62         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   63         -
    pub fn get_inventory_table_configuration(&self) -> &::std::option::Option<crate::types::InventoryTableConfiguration> {
   64         -
        &self.inventory_table_configuration
   65         -
    }
   66         -
    /// Consumes the builder and constructs a [`MetadataConfiguration`](crate::types::MetadataConfiguration).
   67         -
    pub fn build(self) -> crate::types::MetadataConfiguration {
   68         -
        crate::types::MetadataConfiguration {
   69         -
            journal_table_configuration: self.journal_table_configuration,
   70         -
            inventory_table_configuration: self.inventory_table_configuration,
   71         -
        }
   72         -
    }
   73         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_metadata_configuration_result.rs

@@ -1,0 +95,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>The S3 Metadata configuration for a general purpose bucket.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct MetadataConfigurationResult {
    7         -
    /// <p>The destination settings for a metadata configuration.</p>
    8         -
    pub destination_result: ::std::option::Option<crate::types::DestinationResult>,
    9         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   10         -
    pub journal_table_configuration_result: ::std::option::Option<crate::types::JournalTableConfigurationResult>,
   11         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   12         -
    pub inventory_table_configuration_result: ::std::option::Option<crate::types::InventoryTableConfigurationResult>,
   13         -
}
   14         -
impl MetadataConfigurationResult {
   15         -
    /// <p>The destination settings for a metadata configuration.</p>
   16         -
    pub fn destination_result(&self) -> ::std::option::Option<&crate::types::DestinationResult> {
   17         -
        self.destination_result.as_ref()
   18         -
    }
   19         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   20         -
    pub fn journal_table_configuration_result(&self) -> ::std::option::Option<&crate::types::JournalTableConfigurationResult> {
   21         -
        self.journal_table_configuration_result.as_ref()
   22         -
    }
   23         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   24         -
    pub fn inventory_table_configuration_result(&self) -> ::std::option::Option<&crate::types::InventoryTableConfigurationResult> {
   25         -
        self.inventory_table_configuration_result.as_ref()
   26         -
    }
   27         -
}
   28         -
impl MetadataConfigurationResult {
   29         -
    /// Creates a new builder-style object to manufacture [`MetadataConfigurationResult`](crate::types::MetadataConfigurationResult).
   30         -
    pub fn builder() -> crate::types::builders::MetadataConfigurationResultBuilder {
   31         -
        crate::types::builders::MetadataConfigurationResultBuilder::default()
   32         -
    }
   33         -
}
   34         -
   35         -
/// A builder for [`MetadataConfigurationResult`](crate::types::MetadataConfigurationResult).
   36         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   37         -
#[non_exhaustive]
   38         -
pub struct MetadataConfigurationResultBuilder {
   39         -
    pub(crate) destination_result: ::std::option::Option<crate::types::DestinationResult>,
   40         -
    pub(crate) journal_table_configuration_result: ::std::option::Option<crate::types::JournalTableConfigurationResult>,
   41         -
    pub(crate) inventory_table_configuration_result: ::std::option::Option<crate::types::InventoryTableConfigurationResult>,
   42         -
}
   43         -
impl MetadataConfigurationResultBuilder {
   44         -
    /// <p>The destination settings for a metadata configuration.</p>
   45         -
    /// This field is required.
   46         -
    pub fn destination_result(mut self, input: crate::types::DestinationResult) -> Self {
   47         -
        self.destination_result = ::std::option::Option::Some(input);
   48         -
        self
   49         -
    }
   50         -
    /// <p>The destination settings for a metadata configuration.</p>
   51         -
    pub fn set_destination_result(mut self, input: ::std::option::Option<crate::types::DestinationResult>) -> Self {
   52         -
        self.destination_result = input;
   53         -
        self
   54         -
    }
   55         -
    /// <p>The destination settings for a metadata configuration.</p>
   56         -
    pub fn get_destination_result(&self) -> &::std::option::Option<crate::types::DestinationResult> {
   57         -
        &self.destination_result
   58         -
    }
   59         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   60         -
    pub fn journal_table_configuration_result(mut self, input: crate::types::JournalTableConfigurationResult) -> Self {
   61         -
        self.journal_table_configuration_result = ::std::option::Option::Some(input);
   62         -
        self
   63         -
    }
   64         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   65         -
    pub fn set_journal_table_configuration_result(mut self, input: ::std::option::Option<crate::types::JournalTableConfigurationResult>) -> Self {
   66         -
        self.journal_table_configuration_result = input;
   67         -
        self
   68         -
    }
   69         -
    /// <p>The journal table configuration for a metadata configuration.</p>
   70         -
    pub fn get_journal_table_configuration_result(&self) -> &::std::option::Option<crate::types::JournalTableConfigurationResult> {
   71         -
        &self.journal_table_configuration_result
   72         -
    }
   73         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   74         -
    pub fn inventory_table_configuration_result(mut self, input: crate::types::InventoryTableConfigurationResult) -> Self {
   75         -
        self.inventory_table_configuration_result = ::std::option::Option::Some(input);
   76         -
        self
   77         -
    }
   78         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   79         -
    pub fn set_inventory_table_configuration_result(mut self, input: ::std::option::Option<crate::types::InventoryTableConfigurationResult>) -> Self {
   80         -
        self.inventory_table_configuration_result = input;
   81         -
        self
   82         -
    }
   83         -
    /// <p>The inventory table configuration for a metadata configuration.</p>
   84         -
    pub fn get_inventory_table_configuration_result(&self) -> &::std::option::Option<crate::types::InventoryTableConfigurationResult> {
   85         -
        &self.inventory_table_configuration_result
   86         -
    }
   87         -
    /// Consumes the builder and constructs a [`MetadataConfigurationResult`](crate::types::MetadataConfigurationResult).
   88         -
    pub fn build(self) -> crate::types::MetadataConfigurationResult {
   89         -
        crate::types::MetadataConfigurationResult {
   90         -
            destination_result: self.destination_result,
   91         -
            journal_table_configuration_result: self.journal_table_configuration_result,
   92         -
            inventory_table_configuration_result: self.inventory_table_configuration_result,
   93         -
        }
   94         -
    }
   95         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_metadata_table_configuration.rs

@@ -1,1 +35,33 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
    3         -
/// <p>The V1 S3 Metadata configuration for a general purpose bucket.</p><note>
    4         -
/// <p>If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete and re-create your configuration by using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> so that you can expire journal table records and create a live inventory table.</p>
    5         -
/// </note>
           3  +
/// <p>The metadata table configuration for a general purpose bucket.</p>
    6      4   
#[non_exhaustive]
    7      5   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    8      6   
pub struct MetadataTableConfiguration {
    9      7   
    /// <p>The destination information for the metadata table configuration. The destination table bucket must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket.</p>
   10      8   
    pub s3_tables_destination: ::std::option::Option<crate::types::S3TablesDestination>,
   11      9   
}
   12     10   
impl MetadataTableConfiguration {
   13     11   
    /// <p>The destination information for the metadata table configuration. The destination table bucket must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket.</p>
   14     12   
    pub fn s3_tables_destination(&self) -> ::std::option::Option<&crate::types::S3TablesDestination> {
   15     13   
        self.s3_tables_destination.as_ref()

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_metadata_table_configuration_result.rs

@@ -1,1 +35,33 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
    3         -
/// <p>The V1 S3 Metadata configuration for a general purpose bucket. The destination table bucket must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket.</p><note>
    4         -
/// <p>If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete and re-create your configuration by using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> so that you can expire journal table records and create a live inventory table.</p>
    5         -
/// </note>
           3  +
/// <p>The metadata table configuration for a general purpose bucket. The destination table bucket must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket.</p>
    6      4   
#[non_exhaustive]
    7      5   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    8      6   
pub struct MetadataTableConfigurationResult {
    9      7   
    /// <p>The destination information for the metadata table configuration. The destination table bucket must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket.</p>
   10      8   
    pub s3_tables_destination_result: ::std::option::Option<crate::types::S3TablesDestinationResult>,
   11      9   
}
   12     10   
impl MetadataTableConfigurationResult {
   13     11   
    /// <p>The destination information for the metadata table configuration. The destination table bucket must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name must be unique within the <code>aws_s3_metadata</code> namespace in the destination table bucket.</p>
   14     12   
    pub fn s3_tables_destination_result(&self) -> ::std::option::Option<&crate::types::S3TablesDestinationResult> {
   15     13   
        self.s3_tables_destination_result.as_ref()

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_metadata_table_encryption_configuration.rs

@@ -1,0 +82,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>The encryption settings for an S3 Metadata journal table or inventory table configuration.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct MetadataTableEncryptionConfiguration {
    7         -
    /// <p>The encryption type specified for a metadata table. To specify server-side encryption with Key Management Service (KMS) keys (SSE-KMS), use the <code>aws:kms</code> value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the <code>AES256</code> value.</p>
    8         -
    pub sse_algorithm: crate::types::TableSseAlgorithm,
    9         -
    /// <p>If server-side encryption with Key Management Service (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.</p>
   10         -
    pub kms_key_arn: ::std::option::Option<::std::string::String>,
   11         -
}
   12         -
impl MetadataTableEncryptionConfiguration {
   13         -
    /// <p>The encryption type specified for a metadata table. To specify server-side encryption with Key Management Service (KMS) keys (SSE-KMS), use the <code>aws:kms</code> value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the <code>AES256</code> value.</p>
   14         -
    pub fn sse_algorithm(&self) -> &crate::types::TableSseAlgorithm {
   15         -
        &self.sse_algorithm
   16         -
    }
   17         -
    /// <p>If server-side encryption with Key Management Service (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.</p>
   18         -
    pub fn kms_key_arn(&self) -> ::std::option::Option<&str> {
   19         -
        self.kms_key_arn.as_deref()
   20         -
    }
   21         -
}
   22         -
impl MetadataTableEncryptionConfiguration {
   23         -
    /// Creates a new builder-style object to manufacture [`MetadataTableEncryptionConfiguration`](crate::types::MetadataTableEncryptionConfiguration).
   24         -
    pub fn builder() -> crate::types::builders::MetadataTableEncryptionConfigurationBuilder {
   25         -
        crate::types::builders::MetadataTableEncryptionConfigurationBuilder::default()
   26         -
    }
   27         -
}
   28         -
   29         -
/// A builder for [`MetadataTableEncryptionConfiguration`](crate::types::MetadataTableEncryptionConfiguration).
   30         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   31         -
#[non_exhaustive]
   32         -
pub struct MetadataTableEncryptionConfigurationBuilder {
   33         -
    pub(crate) sse_algorithm: ::std::option::Option<crate::types::TableSseAlgorithm>,
   34         -
    pub(crate) kms_key_arn: ::std::option::Option<::std::string::String>,
   35         -
}
   36         -
impl MetadataTableEncryptionConfigurationBuilder {
   37         -
    /// <p>The encryption type specified for a metadata table. To specify server-side encryption with Key Management Service (KMS) keys (SSE-KMS), use the <code>aws:kms</code> value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the <code>AES256</code> value.</p>
   38         -
    /// This field is required.
   39         -
    pub fn sse_algorithm(mut self, input: crate::types::TableSseAlgorithm) -> Self {
   40         -
        self.sse_algorithm = ::std::option::Option::Some(input);
   41         -
        self
   42         -
    }
   43         -
    /// <p>The encryption type specified for a metadata table. To specify server-side encryption with Key Management Service (KMS) keys (SSE-KMS), use the <code>aws:kms</code> value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the <code>AES256</code> value.</p>
   44         -
    pub fn set_sse_algorithm(mut self, input: ::std::option::Option<crate::types::TableSseAlgorithm>) -> Self {
   45         -
        self.sse_algorithm = input;
   46         -
        self
   47         -
    }
   48         -
    /// <p>The encryption type specified for a metadata table. To specify server-side encryption with Key Management Service (KMS) keys (SSE-KMS), use the <code>aws:kms</code> value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the <code>AES256</code> value.</p>
   49         -
    pub fn get_sse_algorithm(&self) -> &::std::option::Option<crate::types::TableSseAlgorithm> {
   50         -
        &self.sse_algorithm
   51         -
    }
   52         -
    /// <p>If server-side encryption with Key Management Service (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.</p>
   53         -
    pub fn kms_key_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
   54         -
        self.kms_key_arn = ::std::option::Option::Some(input.into());
   55         -
        self
   56         -
    }
   57         -
    /// <p>If server-side encryption with Key Management Service (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.</p>
   58         -
    pub fn set_kms_key_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
   59         -
        self.kms_key_arn = input;
   60         -
        self
   61         -
    }
   62         -
    /// <p>If server-side encryption with Key Management Service (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.</p>
   63         -
    pub fn get_kms_key_arn(&self) -> &::std::option::Option<::std::string::String> {
   64         -
        &self.kms_key_arn
   65         -
    }
   66         -
    /// Consumes the builder and constructs a [`MetadataTableEncryptionConfiguration`](crate::types::MetadataTableEncryptionConfiguration).
   67         -
    /// This method will fail if any of the following fields are not set:
   68         -
    /// - [`sse_algorithm`](crate::types::builders::MetadataTableEncryptionConfigurationBuilder::sse_algorithm)
   69         -
    pub fn build(
   70         -
        self,
   71         -
    ) -> ::std::result::Result<crate::types::MetadataTableEncryptionConfiguration, ::aws_smithy_types::error::operation::BuildError> {
   72         -
        ::std::result::Result::Ok(crate::types::MetadataTableEncryptionConfiguration {
   73         -
            sse_algorithm: self.sse_algorithm.ok_or_else(|| {
   74         -
                ::aws_smithy_types::error::operation::BuildError::missing_field(
   75         -
                    "sse_algorithm",
   76         -
                    "sse_algorithm was not specified but it is required when building MetadataTableEncryptionConfiguration",
   77         -
                )
   78         -
            })?,
   79         -
            kms_key_arn: self.kms_key_arn,
   80         -
        })
   81         -
    }
   82         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_object_ownership.rs

@@ -12,12 +86,89 @@
   32     32   
/// the execution path will hit the second last match arm as before by virtue of
   33     33   
/// calling `as_str` on `ObjectOwnership::NewFeature` also yielding `"NewFeature"`.
   34     34   
///
   35     35   
/// Explicitly matching on the `Unknown` variant should
   36     36   
/// be avoided for two reasons:
   37     37   
/// - The inner data `UnknownVariantValue` is opaque, and no further information can be extracted.
   38     38   
/// - It might inadvertently shadow other intended match arms.
   39     39   
///
   40     40   
/// <p>The container element for object ownership for a bucket's ownership controls.</p>
   41     41   
/// <p>
   42         -
/// <code>BucketOwnerPreferred</code> - Objects uploaded to the bucket change ownership to the bucket
   43         -
/// owner if the objects are uploaded with the <code>bucket-owner-full-control</code> canned ACL.</p>
          42  +
/// <code>BucketOwnerPreferred</code> - Objects uploaded to the bucket change ownership to
          43  +
/// the bucket owner if the objects are uploaded with the
          44  +
/// <code>bucket-owner-full-control</code> canned ACL.</p>
   44     45   
/// <p>
   45         -
/// <code>ObjectWriter</code> - The uploading account will own the object if the object is uploaded with
   46         -
/// the <code>bucket-owner-full-control</code> canned ACL.</p>
          46  +
/// <code>ObjectWriter</code> - The uploading account will own the object if the object is
          47  +
/// uploaded with the <code>bucket-owner-full-control</code> canned ACL.</p>
   47     48   
/// <p>
   48         -
/// <code>BucketOwnerEnforced</code> - Access control lists (ACLs) are disabled and no longer affect
   49         -
/// permissions. The bucket owner automatically owns and has full control over every object in the bucket.
   50         -
/// The bucket only accepts PUT requests that don't specify an ACL or specify bucket owner full control ACLs
   51         -
/// (such as the predefined <code>bucket-owner-full-control</code> canned ACL or a custom ACL in XML format
   52         -
/// that grants the same permissions).</p>
   53         -
/// <p>By default, <code>ObjectOwnership</code> is set to <code>BucketOwnerEnforced</code> and ACLs are
   54         -
/// disabled. We recommend keeping ACLs disabled, except in uncommon use cases where you must control access
   55         -
/// for each object individually. For more information about S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling
   56         -
/// ownership of objects and disabling ACLs for your bucket</a> in the
          49  +
/// <code>BucketOwnerEnforced</code> - Access control lists (ACLs) are disabled and no
          50  +
/// longer affect permissions. The bucket owner automatically owns and has full control over
          51  +
/// every object in the bucket. The bucket only accepts PUT requests that don't specify an ACL
          52  +
/// or specify bucket owner full control ACLs (such as the predefined
          53  +
/// <code>bucket-owner-full-control</code> canned ACL or a custom ACL in XML format that
          54  +
/// grants the same permissions).</p>
          55  +
/// <p>By default, <code>ObjectOwnership</code> is set to <code>BucketOwnerEnforced</code> and
          56  +
/// ACLs are disabled. We recommend keeping ACLs disabled, except in uncommon use cases where
          57  +
/// you must control access for each object individually. For more information about S3 Object
          58  +
/// Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling ownership of
          59  +
/// objects and disabling ACLs for your bucket</a> in the
   57     60   
/// <i>Amazon S3 User Guide</i>. </p>
   58     61   
/// <note>
   59     62   
/// <p>This functionality is not supported for directory buckets. Directory buckets use the bucket owner enforced setting for S3 Object Ownership.</p>
   60     63   
/// </note>
   61     64   
#[non_exhaustive]
   62     65   
#[derive(
   63     66   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
   64     67   
)]
   65     68   
pub enum ObjectOwnership {
   66     69   
    #[allow(missing_docs)] // documentation missing in model

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_object_storage_class.rs

@@ -1,1 +181,174 @@
    7      7   
/// upgrade SDK to a future version in which the enum does include a variant for that
    8      8   
/// feature.
    9      9   
///
   10     10   
/// Here is an example of how you can make a match expression forward-compatible:
   11     11   
///
   12     12   
/// ```text
   13     13   
/// # let objectstorageclass = unimplemented!();
   14     14   
/// match objectstorageclass {
   15     15   
///     ObjectStorageClass::DeepArchive => { /* ... */ },
   16     16   
///     ObjectStorageClass::ExpressOnezone => { /* ... */ },
   17         -
///     ObjectStorageClass::FsxOpenzfs => { /* ... */ },
   18     17   
///     ObjectStorageClass::Glacier => { /* ... */ },
   19     18   
///     ObjectStorageClass::GlacierIr => { /* ... */ },
   20     19   
///     ObjectStorageClass::IntelligentTiering => { /* ... */ },
   21     20   
///     ObjectStorageClass::OnezoneIa => { /* ... */ },
   22     21   
///     ObjectStorageClass::Outposts => { /* ... */ },
   23     22   
///     ObjectStorageClass::ReducedRedundancy => { /* ... */ },
   24     23   
///     ObjectStorageClass::Snow => { /* ... */ },
   25     24   
///     ObjectStorageClass::Standard => { /* ... */ },
   26     25   
///     ObjectStorageClass::StandardIa => { /* ... */ },
   27     26   
///     other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
   28     27   
///     _ => { /* ... */ },
   29     28   
/// }
   30     29   
/// ```
   31     30   
/// The above code demonstrates that when `objectstorageclass` represents
   32     31   
/// `NewFeature`, the execution path will lead to the second last match arm,
   33     32   
/// even though the enum does not contain a variant `ObjectStorageClass::NewFeature`
   34     33   
/// in the current version of SDK. The reason is that the variable `other`,
   35     34   
/// created by the `@` operator, is bound to
   36     35   
/// `ObjectStorageClass::Unknown(UnknownVariantValue("NewFeature".to_owned()))`
   37     36   
/// and calling `as_str` on it yields `"NewFeature"`.
   38     37   
/// This match expression is forward-compatible when executed with a newer
   39     38   
/// version of SDK where the variant `ObjectStorageClass::NewFeature` is defined.
   40     39   
/// Specifically, when `objectstorageclass` represents `NewFeature`,
   41     40   
/// the execution path will hit the second last match arm as before by virtue of
   42     41   
/// calling `as_str` on `ObjectStorageClass::NewFeature` also yielding `"NewFeature"`.
   43     42   
///
   44     43   
/// Explicitly matching on the `Unknown` variant should
   45     44   
/// be avoided for two reasons:
   46     45   
/// - The inner data `UnknownVariantValue` is opaque, and no further information can be extracted.
   47     46   
/// - It might inadvertently shadow other intended match arms.
   48     47   
///
   49     48   
#[allow(missing_docs)] // documentation missing in model
   50     49   
#[non_exhaustive]
   51     50   
#[derive(
   52     51   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
   53     52   
)]
   54     53   
pub enum ObjectStorageClass {
   55     54   
    #[allow(missing_docs)] // documentation missing in model
   56     55   
    DeepArchive,
   57     56   
    #[allow(missing_docs)] // documentation missing in model
   58     57   
    ExpressOnezone,
   59     58   
    #[allow(missing_docs)] // documentation missing in model
   60         -
    FsxOpenzfs,
   61         -
    #[allow(missing_docs)] // documentation missing in model
   62     59   
    Glacier,
   63     60   
    #[allow(missing_docs)] // documentation missing in model
   64     61   
    GlacierIr,
   65     62   
    #[allow(missing_docs)] // documentation missing in model
   66     63   
    IntelligentTiering,
   67     64   
    #[allow(missing_docs)] // documentation missing in model
   68     65   
    OnezoneIa,
   69     66   
    #[allow(missing_docs)] // documentation missing in model
   70     67   
    Outposts,
   71     68   
    #[allow(missing_docs)] // documentation missing in model
   72     69   
    ReducedRedundancy,
   73     70   
    #[allow(missing_docs)] // documentation missing in model
   74     71   
    Snow,
   75     72   
    #[allow(missing_docs)] // documentation missing in model
   76     73   
    Standard,
   77     74   
    #[allow(missing_docs)] // documentation missing in model
   78     75   
    StandardIa,
   79     76   
    /// `Unknown` contains new variants that have been added since this code was generated.
   80     77   
    #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
   81     78   
    Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
   82     79   
}
   83     80   
impl ::std::convert::From<&str> for ObjectStorageClass {
   84     81   
    fn from(s: &str) -> Self {
   85     82   
        match s {
   86     83   
            "DEEP_ARCHIVE" => ObjectStorageClass::DeepArchive,
   87     84   
            "EXPRESS_ONEZONE" => ObjectStorageClass::ExpressOnezone,
   88         -
            "FSX_OPENZFS" => ObjectStorageClass::FsxOpenzfs,
   89     85   
            "GLACIER" => ObjectStorageClass::Glacier,
   90     86   
            "GLACIER_IR" => ObjectStorageClass::GlacierIr,
   91     87   
            "INTELLIGENT_TIERING" => ObjectStorageClass::IntelligentTiering,
   92     88   
            "ONEZONE_IA" => ObjectStorageClass::OnezoneIa,
   93     89   
            "OUTPOSTS" => ObjectStorageClass::Outposts,
   94     90   
            "REDUCED_REDUNDANCY" => ObjectStorageClass::ReducedRedundancy,
   95     91   
            "SNOW" => ObjectStorageClass::Snow,
   96     92   
            "STANDARD" => ObjectStorageClass::Standard,
   97     93   
            "STANDARD_IA" => ObjectStorageClass::StandardIa,
   98     94   
            other => ObjectStorageClass::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
   99     95   
        }
  100     96   
    }
  101     97   
}
  102     98   
impl ::std::str::FromStr for ObjectStorageClass {
  103     99   
    type Err = ::std::convert::Infallible;
  104    100   
  105    101   
    fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
  106    102   
        ::std::result::Result::Ok(ObjectStorageClass::from(s))
  107    103   
    }
  108    104   
}
  109    105   
impl ObjectStorageClass {
  110    106   
    /// Returns the `&str` value of the enum member.
  111    107   
    pub fn as_str(&self) -> &str {
  112    108   
        match self {
  113    109   
            ObjectStorageClass::DeepArchive => "DEEP_ARCHIVE",
  114    110   
            ObjectStorageClass::ExpressOnezone => "EXPRESS_ONEZONE",
  115         -
            ObjectStorageClass::FsxOpenzfs => "FSX_OPENZFS",
  116    111   
            ObjectStorageClass::Glacier => "GLACIER",
  117    112   
            ObjectStorageClass::GlacierIr => "GLACIER_IR",
  118    113   
            ObjectStorageClass::IntelligentTiering => "INTELLIGENT_TIERING",
  119    114   
            ObjectStorageClass::OnezoneIa => "ONEZONE_IA",
  120    115   
            ObjectStorageClass::Outposts => "OUTPOSTS",
  121    116   
            ObjectStorageClass::ReducedRedundancy => "REDUCED_REDUNDANCY",
  122    117   
            ObjectStorageClass::Snow => "SNOW",
  123    118   
            ObjectStorageClass::Standard => "STANDARD",
  124    119   
            ObjectStorageClass::StandardIa => "STANDARD_IA",
  125    120   
            ObjectStorageClass::Unknown(value) => value.as_str(),
  126    121   
        }
  127    122   
    }
  128    123   
    /// Returns all the `&str` representations of the enum members.
  129    124   
    pub const fn values() -> &'static [&'static str] {
  130    125   
        &[
  131    126   
            "DEEP_ARCHIVE",
  132    127   
            "EXPRESS_ONEZONE",
  133         -
            "FSX_OPENZFS",
  134    128   
            "GLACIER",
  135    129   
            "GLACIER_IR",
  136    130   
            "INTELLIGENT_TIERING",
  137    131   
            "ONEZONE_IA",
  138    132   
            "OUTPOSTS",
  139    133   
            "REDUCED_REDUNDANCY",
  140    134   
            "SNOW",
  141    135   
            "STANDARD",
  142    136   
            "STANDARD_IA",
  143    137   
        ]
  144    138   
    }
  145    139   
}
  146    140   
impl ::std::convert::AsRef<str> for ObjectStorageClass {
  147    141   
    fn as_ref(&self) -> &str {
  148    142   
        self.as_str()
  149    143   
    }
  150    144   
}
  151    145   
impl ObjectStorageClass {
  152    146   
    /// Parses the enum value while disallowing unknown variants.
  153    147   
    ///
  154    148   
    /// Unknown variants will result in an error.
  155    149   
    pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
  156    150   
        match Self::from(value) {
  157    151   
            #[allow(deprecated)]
  158    152   
            Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
  159    153   
            known => Ok(known),
  160    154   
        }
  161    155   
    }
  162    156   
}
  163    157   
impl ::std::fmt::Display for ObjectStorageClass {
  164    158   
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
  165    159   
        match self {
  166    160   
            ObjectStorageClass::DeepArchive => write!(f, "DEEP_ARCHIVE"),
  167    161   
            ObjectStorageClass::ExpressOnezone => write!(f, "EXPRESS_ONEZONE"),
  168         -
            ObjectStorageClass::FsxOpenzfs => write!(f, "FSX_OPENZFS"),
  169    162   
            ObjectStorageClass::Glacier => write!(f, "GLACIER"),
  170    163   
            ObjectStorageClass::GlacierIr => write!(f, "GLACIER_IR"),
  171    164   
            ObjectStorageClass::IntelligentTiering => write!(f, "INTELLIGENT_TIERING"),
  172    165   
            ObjectStorageClass::OnezoneIa => write!(f, "ONEZONE_IA"),
  173    166   
            ObjectStorageClass::Outposts => write!(f, "OUTPOSTS"),
  174    167   
            ObjectStorageClass::ReducedRedundancy => write!(f, "REDUCED_REDUNDANCY"),
  175    168   
            ObjectStorageClass::Snow => write!(f, "SNOW"),
  176    169   
            ObjectStorageClass::Standard => write!(f, "STANDARD"),
  177    170   
            ObjectStorageClass::StandardIa => write!(f, "STANDARD_IA"),
  178    171   
            ObjectStorageClass::Unknown(value) => write!(f, "{value}"),

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_output_serialization.rs

@@ -1,0 +72,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>Describes how results of the Select job are serialized.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct OutputSerialization {
    7         -
    /// <p>Describes the serialization of CSV-encoded Select results.</p>
    8         -
    pub csv: ::std::option::Option<crate::types::CsvOutput>,
    9         -
    /// <p>Specifies JSON as request's output serialization format.</p>
   10         -
    pub json: ::std::option::Option<crate::types::JsonOutput>,
   11         -
}
   12         -
impl OutputSerialization {
   13         -
    /// <p>Describes the serialization of CSV-encoded Select results.</p>
   14         -
    pub fn csv(&self) -> ::std::option::Option<&crate::types::CsvOutput> {
   15         -
        self.csv.as_ref()
   16         -
    }
   17         -
    /// <p>Specifies JSON as request's output serialization format.</p>
   18         -
    pub fn json(&self) -> ::std::option::Option<&crate::types::JsonOutput> {
   19         -
        self.json.as_ref()
   20         -
    }
   21         -
}
   22         -
impl OutputSerialization {
   23         -
    /// Creates a new builder-style object to manufacture [`OutputSerialization`](crate::types::OutputSerialization).
   24         -
    pub fn builder() -> crate::types::builders::OutputSerializationBuilder {
   25         -
        crate::types::builders::OutputSerializationBuilder::default()
   26         -
    }
   27         -
}
   28         -
   29         -
/// A builder for [`OutputSerialization`](crate::types::OutputSerialization).
   30         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   31         -
#[non_exhaustive]
   32         -
pub struct OutputSerializationBuilder {
   33         -
    pub(crate) csv: ::std::option::Option<crate::types::CsvOutput>,
   34         -
    pub(crate) json: ::std::option::Option<crate::types::JsonOutput>,
   35         -
}
   36         -
impl OutputSerializationBuilder {
   37         -
    /// <p>Describes the serialization of CSV-encoded Select results.</p>
   38         -
    pub fn csv(mut self, input: crate::types::CsvOutput) -> Self {
   39         -
        self.csv = ::std::option::Option::Some(input);
   40         -
        self
   41         -
    }
   42         -
    /// <p>Describes the serialization of CSV-encoded Select results.</p>
   43         -
    pub fn set_csv(mut self, input: ::std::option::Option<crate::types::CsvOutput>) -> Self {
   44         -
        self.csv = input;
   45         -
        self
   46         -
    }
   47         -
    /// <p>Describes the serialization of CSV-encoded Select results.</p>
   48         -
    pub fn get_csv(&self) -> &::std::option::Option<crate::types::CsvOutput> {
   49         -
        &self.csv
   50         -
    }
   51         -
    /// <p>Specifies JSON as request's output serialization format.</p>
   52         -
    pub fn json(mut self, input: crate::types::JsonOutput) -> Self {
   53         -
        self.json = ::std::option::Option::Some(input);
   54         -
        self
   55         -
    }
   56         -
    /// <p>Specifies JSON as request's output serialization format.</p>
   57         -
    pub fn set_json(mut self, input: ::std::option::Option<crate::types::JsonOutput>) -> Self {
   58         -
        self.json = input;
   59         -
        self
   60         -
    }
   61         -
    /// <p>Specifies JSON as request's output serialization format.</p>
   62         -
    pub fn get_json(&self) -> &::std::option::Option<crate::types::JsonOutput> {
   63         -
        &self.json
   64         -
    }
   65         -
    /// Consumes the builder and constructs a [`OutputSerialization`](crate::types::OutputSerialization).
   66         -
    pub fn build(self) -> crate::types::OutputSerialization {
   67         -
        crate::types::OutputSerialization {
   68         -
            csv: self.csv,
   69         -
            json: self.json,
   70         -
        }
   71         -
    }
   72         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_owner.rs

@@ -1,1 +36,32 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
    3         -
/// <important>
    4         -
/// <p>End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning <code>DisplayName</code>. Update your applications to use canonical IDs (unique identifier for Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of <code>DisplayName</code>.</p>
    5         -
/// <p>This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.</p>
    6         -
/// </important>
    7      3   
/// <p>Container for the owner's display name and ID.</p>
    8      4   
#[non_exhaustive]
    9      5   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
   10      6   
pub struct Owner {
   11      7   
    /// <p>Container for the display name of the owner. This value is only supported in the following Amazon Web Services Regions:</p>
   12      8   
    /// <ul>
   13      9   
    /// <li>
   14     10   
    /// <p>US East (N. Virginia)</p></li>
   15     11   
    /// <li>
   16     12   
    /// <p>US West (N. California)</p></li>

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_parquet_input.rs

@@ -1,0 +23,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>Container for Parquet.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct ParquetInput {}
    7         -
impl ParquetInput {
    8         -
    /// Creates a new builder-style object to manufacture [`ParquetInput`](crate::types::ParquetInput).
    9         -
    pub fn builder() -> crate::types::builders::ParquetInputBuilder {
   10         -
        crate::types::builders::ParquetInputBuilder::default()
   11         -
    }
   12         -
}
   13         -
   14         -
/// A builder for [`ParquetInput`](crate::types::ParquetInput).
   15         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   16         -
#[non_exhaustive]
   17         -
pub struct ParquetInputBuilder {}
   18         -
impl ParquetInputBuilder {
   19         -
    /// Consumes the builder and constructs a [`ParquetInput`](crate::types::ParquetInput).
   20         -
    pub fn build(self) -> crate::types::ParquetInput {
   21         -
        crate::types::ParquetInput {}
   22         -
    }
   23         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_progress.rs

@@ -1,0 +94,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>This data type contains information about progress of an operation.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct Progress {
    7         -
    /// <p>The current number of object bytes scanned.</p>
    8         -
    pub bytes_scanned: ::std::option::Option<i64>,
    9         -
    /// <p>The current number of uncompressed object bytes processed.</p>
   10         -
    pub bytes_processed: ::std::option::Option<i64>,
   11         -
    /// <p>The current number of bytes of records payload data returned.</p>
   12         -
    pub bytes_returned: ::std::option::Option<i64>,
   13         -
}
   14         -
impl Progress {
   15         -
    /// <p>The current number of object bytes scanned.</p>
   16         -
    pub fn bytes_scanned(&self) -> ::std::option::Option<i64> {
   17         -
        self.bytes_scanned
   18         -
    }
   19         -
    /// <p>The current number of uncompressed object bytes processed.</p>
   20         -
    pub fn bytes_processed(&self) -> ::std::option::Option<i64> {
   21         -
        self.bytes_processed
   22         -
    }
   23         -
    /// <p>The current number of bytes of records payload data returned.</p>
   24         -
    pub fn bytes_returned(&self) -> ::std::option::Option<i64> {
   25         -
        self.bytes_returned
   26         -
    }
   27         -
}
   28         -
impl Progress {
   29         -
    /// Creates a new builder-style object to manufacture [`Progress`](crate::types::Progress).
   30         -
    pub fn builder() -> crate::types::builders::ProgressBuilder {
   31         -
        crate::types::builders::ProgressBuilder::default()
   32         -
    }
   33         -
}
   34         -
   35         -
/// A builder for [`Progress`](crate::types::Progress).
   36         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   37         -
#[non_exhaustive]
   38         -
pub struct ProgressBuilder {
   39         -
    pub(crate) bytes_scanned: ::std::option::Option<i64>,
   40         -
    pub(crate) bytes_processed: ::std::option::Option<i64>,
   41         -
    pub(crate) bytes_returned: ::std::option::Option<i64>,
   42         -
}
   43         -
impl ProgressBuilder {
   44         -
    /// <p>The current number of object bytes scanned.</p>
   45         -
    pub fn bytes_scanned(mut self, input: i64) -> Self {
   46         -
        self.bytes_scanned = ::std::option::Option::Some(input);
   47         -
        self
   48         -
    }
   49         -
    /// <p>The current number of object bytes scanned.</p>
   50         -
    pub fn set_bytes_scanned(mut self, input: ::std::option::Option<i64>) -> Self {
   51         -
        self.bytes_scanned = input;
   52         -
        self
   53         -
    }
   54         -
    /// <p>The current number of object bytes scanned.</p>
   55         -
    pub fn get_bytes_scanned(&self) -> &::std::option::Option<i64> {
   56         -
        &self.bytes_scanned
   57         -
    }
   58         -
    /// <p>The current number of uncompressed object bytes processed.</p>
   59         -
    pub fn bytes_processed(mut self, input: i64) -> Self {
   60         -
        self.bytes_processed = ::std::option::Option::Some(input);
   61         -
        self
   62         -
    }
   63         -
    /// <p>The current number of uncompressed object bytes processed.</p>
   64         -
    pub fn set_bytes_processed(mut self, input: ::std::option::Option<i64>) -> Self {
   65         -
        self.bytes_processed = input;
   66         -
        self
   67         -
    }
   68         -
    /// <p>The current number of uncompressed object bytes processed.</p>
   69         -
    pub fn get_bytes_processed(&self) -> &::std::option::Option<i64> {
   70         -
        &self.bytes_processed
   71         -
    }
   72         -
    /// <p>The current number of bytes of records payload data returned.</p>
   73         -
    pub fn bytes_returned(mut self, input: i64) -> Self {
   74         -
        self.bytes_returned = ::std::option::Option::Some(input);
   75         -
        self
   76         -
    }
   77         -
    /// <p>The current number of bytes of records payload data returned.</p>
   78         -
    pub fn set_bytes_returned(mut self, input: ::std::option::Option<i64>) -> Self {
   79         -
        self.bytes_returned = input;
   80         -
        self
   81         -
    }
   82         -
    /// <p>The current number of bytes of records payload data returned.</p>
   83         -
    pub fn get_bytes_returned(&self) -> &::std::option::Option<i64> {
   84         -
        &self.bytes_returned
   85         -
    }
   86         -
    /// Consumes the builder and constructs a [`Progress`](crate::types::Progress).
   87         -
    pub fn build(self) -> crate::types::Progress {
   88         -
        crate::types::Progress {
   89         -
            bytes_scanned: self.bytes_scanned,
   90         -
            bytes_processed: self.bytes_processed,
   91         -
            bytes_returned: self.bytes_returned,
   92         -
        }
   93         -
    }
   94         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_progress_event.rs

@@ -1,0 +48,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>This data type contains information about the progress event of an operation.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct ProgressEvent {
    7         -
    /// <p>The Progress event details.</p>
    8         -
    pub details: ::std::option::Option<crate::types::Progress>,
    9         -
}
   10         -
impl ProgressEvent {
   11         -
    /// <p>The Progress event details.</p>
   12         -
    pub fn details(&self) -> ::std::option::Option<&crate::types::Progress> {
   13         -
        self.details.as_ref()
   14         -
    }
   15         -
}
   16         -
impl ProgressEvent {
   17         -
    /// Creates a new builder-style object to manufacture [`ProgressEvent`](crate::types::ProgressEvent).
   18         -
    pub fn builder() -> crate::types::builders::ProgressEventBuilder {
   19         -
        crate::types::builders::ProgressEventBuilder::default()
   20         -
    }
   21         -
}
   22         -
   23         -
/// A builder for [`ProgressEvent`](crate::types::ProgressEvent).
   24         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   25         -
#[non_exhaustive]
   26         -
pub struct ProgressEventBuilder {
   27         -
    pub(crate) details: ::std::option::Option<crate::types::Progress>,
   28         -
}
   29         -
impl ProgressEventBuilder {
   30         -
    /// <p>The Progress event details.</p>
   31         -
    pub fn details(mut self, input: crate::types::Progress) -> Self {
   32         -
        self.details = ::std::option::Option::Some(input);
   33         -
        self
   34         -
    }
   35         -
    /// <p>The Progress event details.</p>
   36         -
    pub fn set_details(mut self, input: ::std::option::Option<crate::types::Progress>) -> Self {
   37         -
        self.details = input;
   38         -
        self
   39         -
    }
   40         -
    /// <p>The Progress event details.</p>
   41         -
    pub fn get_details(&self) -> &::std::option::Option<crate::types::Progress> {
   42         -
        &self.details
   43         -
    }
   44         -
    /// Consumes the builder and constructs a [`ProgressEvent`](crate::types::ProgressEvent).
   45         -
    pub fn build(self) -> crate::types::ProgressEvent {
   46         -
        crate::types::ProgressEvent { details: self.details }
   47         -
    }
   48         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_quote_fields.rs

@@ -1,0 +108,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// When writing a match expression against `QuoteFields`, it is important to ensure
    4         -
/// your code is forward-compatible. That is, if a match arm handles a case for a
    5         -
/// feature that is supported by the service but has not been represented as an enum
    6         -
/// variant in a current version of SDK, your code should continue to work when you
    7         -
/// upgrade SDK to a future version in which the enum does include a variant for that
    8         -
/// feature.
    9         -
///
   10         -
/// Here is an example of how you can make a match expression forward-compatible:
   11         -
///
   12         -
/// ```text
   13         -
/// # let quotefields = unimplemented!();
   14         -
/// match quotefields {
   15         -
///     QuoteFields::Always => { /* ... */ },
   16         -
///     QuoteFields::Asneeded => { /* ... */ },
   17         -
///     other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
   18         -
///     _ => { /* ... */ },
   19         -
/// }
   20         -
/// ```
   21         -
/// The above code demonstrates that when `quotefields` represents
   22         -
/// `NewFeature`, the execution path will lead to the second last match arm,
   23         -
/// even though the enum does not contain a variant `QuoteFields::NewFeature`
   24         -
/// in the current version of SDK. The reason is that the variable `other`,
   25         -
/// created by the `@` operator, is bound to
   26         -
/// `QuoteFields::Unknown(UnknownVariantValue("NewFeature".to_owned()))`
   27         -
/// and calling `as_str` on it yields `"NewFeature"`.
   28         -
/// This match expression is forward-compatible when executed with a newer
   29         -
/// version of SDK where the variant `QuoteFields::NewFeature` is defined.
   30         -
/// Specifically, when `quotefields` represents `NewFeature`,
   31         -
/// the execution path will hit the second last match arm as before by virtue of
   32         -
/// calling `as_str` on `QuoteFields::NewFeature` also yielding `"NewFeature"`.
   33         -
///
   34         -
/// Explicitly matching on the `Unknown` variant should
   35         -
/// be avoided for two reasons:
   36         -
/// - The inner data `UnknownVariantValue` is opaque, and no further information can be extracted.
   37         -
/// - It might inadvertently shadow other intended match arms.
   38         -
///
   39         -
#[allow(missing_docs)] // documentation missing in model
   40         -
#[non_exhaustive]
   41         -
#[derive(
   42         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
   43         -
)]
   44         -
pub enum QuoteFields {
   45         -
    #[allow(missing_docs)] // documentation missing in model
   46         -
    Always,
   47         -
    #[allow(missing_docs)] // documentation missing in model
   48         -
    Asneeded,
   49         -
    /// `Unknown` contains new variants that have been added since this code was generated.
   50         -
    #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
   51         -
    Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
   52         -
}
   53         -
impl ::std::convert::From<&str> for QuoteFields {
   54         -
    fn from(s: &str) -> Self {
   55         -
        match s {
   56         -
            "ALWAYS" => QuoteFields::Always,
   57         -
            "ASNEEDED" => QuoteFields::Asneeded,
   58         -
            other => QuoteFields::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
   59         -
        }
   60         -
    }
   61         -
}
   62         -
impl ::std::str::FromStr for QuoteFields {
   63         -
    type Err = ::std::convert::Infallible;
   64         -
   65         -
    fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
   66         -
        ::std::result::Result::Ok(QuoteFields::from(s))
   67         -
    }
   68         -
}
   69         -
impl QuoteFields {
   70         -
    /// Returns the `&str` value of the enum member.
   71         -
    pub fn as_str(&self) -> &str {
   72         -
        match self {
   73         -
            QuoteFields::Always => "ALWAYS",
   74         -
            QuoteFields::Asneeded => "ASNEEDED",
   75         -
            QuoteFields::Unknown(value) => value.as_str(),
   76         -
        }
   77         -
    }
   78         -
    /// Returns all the `&str` representations of the enum members.
   79         -
    pub const fn values() -> &'static [&'static str] {
   80         -
        &["ALWAYS", "ASNEEDED"]
   81         -
    }
   82         -
}
   83         -
impl ::std::convert::AsRef<str> for QuoteFields {
   84         -
    fn as_ref(&self) -> &str {
   85         -
        self.as_str()
   86         -
    }
   87         -
}
   88         -
impl QuoteFields {
   89         -
    /// Parses the enum value while disallowing unknown variants.
   90         -
    ///
   91         -
    /// Unknown variants will result in an error.
   92         -
    pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
   93         -
        match Self::from(value) {
   94         -
            #[allow(deprecated)]
   95         -
            Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
   96         -
            known => Ok(known),
   97         -
        }
   98         -
    }
   99         -
}
  100         -
impl ::std::fmt::Display for QuoteFields {
  101         -
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
  102         -
        match self {
  103         -
            QuoteFields::Always => write!(f, "ALWAYS"),
  104         -
            QuoteFields::Asneeded => write!(f, "ASNEEDED"),
  105         -
            QuoteFields::Unknown(value) => write!(f, "{value}"),
  106         -
        }
  107         -
    }
  108         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_record_expiration.rs

@@ -1,0 +80,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>The journal table record expiration settings for a journal table in an S3 Metadata configuration.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct RecordExpiration {
    7         -
    /// <p>Specifies whether journal table record expiration is enabled or disabled.</p>
    8         -
    pub expiration: crate::types::ExpirationState,
    9         -
    /// <p>If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from <code>7</code> to <code>2147483647</code>. For example, to retain your journal table records for one year, set this value to <code>365</code>.</p>
   10         -
    pub days: ::std::option::Option<i32>,
   11         -
}
   12         -
impl RecordExpiration {
   13         -
    /// <p>Specifies whether journal table record expiration is enabled or disabled.</p>
   14         -
    pub fn expiration(&self) -> &crate::types::ExpirationState {
   15         -
        &self.expiration
   16         -
    }
   17         -
    /// <p>If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from <code>7</code> to <code>2147483647</code>. For example, to retain your journal table records for one year, set this value to <code>365</code>.</p>
   18         -
    pub fn days(&self) -> ::std::option::Option<i32> {
   19         -
        self.days
   20         -
    }
   21         -
}
   22         -
impl RecordExpiration {
   23         -
    /// Creates a new builder-style object to manufacture [`RecordExpiration`](crate::types::RecordExpiration).
   24         -
    pub fn builder() -> crate::types::builders::RecordExpirationBuilder {
   25         -
        crate::types::builders::RecordExpirationBuilder::default()
   26         -
    }
   27         -
}
   28         -
   29         -
/// A builder for [`RecordExpiration`](crate::types::RecordExpiration).
   30         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   31         -
#[non_exhaustive]
   32         -
pub struct RecordExpirationBuilder {
   33         -
    pub(crate) expiration: ::std::option::Option<crate::types::ExpirationState>,
   34         -
    pub(crate) days: ::std::option::Option<i32>,
   35         -
}
   36         -
impl RecordExpirationBuilder {
   37         -
    /// <p>Specifies whether journal table record expiration is enabled or disabled.</p>
   38         -
    /// This field is required.
   39         -
    pub fn expiration(mut self, input: crate::types::ExpirationState) -> Self {
   40         -
        self.expiration = ::std::option::Option::Some(input);
   41         -
        self
   42         -
    }
   43         -
    /// <p>Specifies whether journal table record expiration is enabled or disabled.</p>
   44         -
    pub fn set_expiration(mut self, input: ::std::option::Option<crate::types::ExpirationState>) -> Self {
   45         -
        self.expiration = input;
   46         -
        self
   47         -
    }
   48         -
    /// <p>Specifies whether journal table record expiration is enabled or disabled.</p>
   49         -
    pub fn get_expiration(&self) -> &::std::option::Option<crate::types::ExpirationState> {
   50         -
        &self.expiration
   51         -
    }
   52         -
    /// <p>If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from <code>7</code> to <code>2147483647</code>. For example, to retain your journal table records for one year, set this value to <code>365</code>.</p>
   53         -
    pub fn days(mut self, input: i32) -> Self {
   54         -
        self.days = ::std::option::Option::Some(input);
   55         -
        self
   56         -
    }
   57         -
    /// <p>If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from <code>7</code> to <code>2147483647</code>. For example, to retain your journal table records for one year, set this value to <code>365</code>.</p>
   58         -
    pub fn set_days(mut self, input: ::std::option::Option<i32>) -> Self {
   59         -
        self.days = input;
   60         -
        self
   61         -
    }
   62         -
    /// <p>If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from <code>7</code> to <code>2147483647</code>. For example, to retain your journal table records for one year, set this value to <code>365</code>.</p>
   63         -
    pub fn get_days(&self) -> &::std::option::Option<i32> {
   64         -
        &self.days
   65         -
    }
   66         -
    /// Consumes the builder and constructs a [`RecordExpiration`](crate::types::RecordExpiration).
   67         -
    /// This method will fail if any of the following fields are not set:
   68         -
    /// - [`expiration`](crate::types::builders::RecordExpirationBuilder::expiration)
   69         -
    pub fn build(self) -> ::std::result::Result<crate::types::RecordExpiration, ::aws_smithy_types::error::operation::BuildError> {
   70         -
        ::std::result::Result::Ok(crate::types::RecordExpiration {
   71         -
            expiration: self.expiration.ok_or_else(|| {
   72         -
                ::aws_smithy_types::error::operation::BuildError::missing_field(
   73         -
                    "expiration",
   74         -
                    "expiration was not specified but it is required when building RecordExpiration",
   75         -
                )
   76         -
            })?,
   77         -
            days: self.days,
   78         -
        })
   79         -
    }
   80         -
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/types/_records_event.rs

@@ -1,0 +48,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// <p>The container for the records event.</p>
    4         -
#[non_exhaustive]
    5         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub struct RecordsEvent {
    7         -
    /// <p>The byte array of partial, one or more result records. S3 Select doesn't guarantee that a record will be self-contained in one record frame. To ensure continuous streaming of data, S3 Select might split the same record across multiple record frames instead of aggregating the results in memory. Some S3 clients (for example, the SDK for Java) handle this behavior by creating a <code>ByteStream</code> out of the response by default. Other clients might not handle this behavior by default. In those cases, you must aggregate the results on the client side and parse the response.</p>
    8         -
    pub payload: ::std::option::Option<::aws_smithy_types::Blob>,
    9         -
}
   10         -
impl RecordsEvent {
   11         -
    /// <p>The byte array of partial, one or more result records. S3 Select doesn't guarantee that a record will be self-contained in one record frame. To ensure continuous streaming of data, S3 Select might split the same record across multiple record frames instead of aggregating the results in memory. Some S3 clients (for example, the SDK for Java) handle this behavior by creating a <code>ByteStream</code> out of the response by default. Other clients might not handle this behavior by default. In those cases, you must aggregate the results on the client side and parse the response.</p>
   12         -
    pub fn payload(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
   13         -
        self.payload.as_ref()
   14         -
    }
   15         -
}
   16         -
impl RecordsEvent {
   17         -
    /// Creates a new builder-style object to manufacture [`RecordsEvent`](crate::types::RecordsEvent).
   18         -
    pub fn builder() -> crate::types::builders::RecordsEventBuilder {
   19         -
        crate::types::builders::RecordsEventBuilder::default()
   20         -
    }
   21         -
}
   22         -
   23         -
/// A builder for [`RecordsEvent`](crate::types::RecordsEvent).
   24         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   25         -
#[non_exhaustive]
   26         -
pub struct RecordsEventBuilder {
   27         -
    pub(crate) payload: ::std::option::Option<::aws_smithy_types::Blob>,
   28         -
}
   29         -
impl RecordsEventBuilder {
   30         -
    /// <p>The byte array of partial, one or more result records. S3 Select doesn't guarantee that a record will be self-contained in one record frame. To ensure continuous streaming of data, S3 Select might split the same record across multiple record frames instead of aggregating the results in memory. Some S3 clients (for example, the SDK for Java) handle this behavior by creating a <code>ByteStream</code> out of the response by default. Other clients might not handle this behavior by default. In those cases, you must aggregate the results on the client side and parse the response.</p>
   31         -
    pub fn payload(mut self, input: ::aws_smithy_types::Blob) -> Self {
   32         -
        self.payload = ::std::option::Option::Some(input);
   33         -
        self
   34         -
    }
   35         -
    /// <p>The byte array of partial, one or more result records. S3 Select doesn't guarantee that a record will be self-contained in one record frame. To ensure continuous streaming of data, S3 Select might split the same record across multiple record frames instead of aggregating the results in memory. Some S3 clients (for example, the SDK for Java) handle this behavior by creating a <code>ByteStream</code> out of the response by default. Other clients might not handle this behavior by default. In those cases, you must aggregate the results on the client side and parse the response.</p>
   36         -
    pub fn set_payload(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
   37         -
        self.payload = input;
   38         -
        self
   39         -
    }
   40         -
    /// <p>The byte array of partial, one or more result records. S3 Select doesn't guarantee that a record will be self-contained in one record frame. To ensure continuous streaming of data, S3 Select might split the same record across multiple record frames instead of aggregating the results in memory. Some S3 clients (for example, the SDK for Java) handle this behavior by creating a <code>ByteStream</code> out of the response by default. Other clients might not handle this behavior by default. In those cases, you must aggregate the results on the client side and parse the response.</p>
   41         -
    pub fn get_payload(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
   42         -
        &self.payload
   43         -
    }
   44         -
    /// Consumes the builder and constructs a [`RecordsEvent`](crate::types::RecordsEvent).
   45         -
    pub fn build(self) -> crate::types::RecordsEvent {
   46         -
        crate::types::RecordsEvent { payload: self.payload }
   47         -
    }
   48         -
}