AWS SDK

AWS SDK

rev. e063993ca0ab793f44c575dbe707d50a5e3e2406 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_dssekms_filter.rs

@@ -1,1 +108,119 @@
   19     19   
}
   20     20   
static DSSEKMSFILTER_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   21     21   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#DSSEKMSFilter", "com.amazonaws.s3control", "DSSEKMSFilter");
   22     22   
static DSSEKMSFILTER_MEMBER_KMS_KEY_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   23     23   
    ::aws_smithy_schema::ShapeId::from_static(
   24     24   
        "com.amazonaws.s3control#DSSEKMSFilter$KmsKeyArn",
   25     25   
        "com.amazonaws.s3control",
   26     26   
        "DSSEKMSFilter",
   27     27   
    ),
   28     28   
    ::aws_smithy_schema::ShapeType::String,
   29         -
    "kms_key_arn",
          29  +
    "KmsKeyArn",
   30     30   
    0,
   31     31   
);
   32     32   
static DSSEKMSFILTER_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   33     33   
    DSSEKMSFILTER_SCHEMA_ID,
   34     34   
    ::aws_smithy_schema::ShapeType::Structure,
   35     35   
    &[&DSSEKMSFILTER_MEMBER_KMS_KEY_ARN],
   36     36   
);
   37     37   
impl DssekmsFilter {
   38     38   
    /// The schema for this shape.
   39     39   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DSSEKMSFILTER_SCHEMA;
   40     40   
}
   41     41   
impl ::aws_smithy_schema::serde::SerializableStruct for DssekmsFilter {
   42     42   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   43     43   
    fn serialize_members(
   44     44   
        &self,
   45     45   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   46     46   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   47     47   
        if let Some(ref val) = self.kms_key_arn {
   48     48   
            ser.write_string(&DSSEKMSFILTER_MEMBER_KMS_KEY_ARN, val)?;
   49     49   
        }
   50     50   
        Ok(())
   51     51   
    }
   52     52   
}
   53     53   
impl DssekmsFilter {
   54     54   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   55         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   56         -
        deserializer: &mut D,
          55  +
    pub fn deserialize(
          56  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   57     57   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   58     58   
        #[allow(unused_variables, unused_mut)]
   59     59   
        let mut builder = Self::builder();
   60     60   
        #[allow(
   61     61   
            unused_variables,
   62     62   
            unreachable_code,
   63     63   
            clippy::single_match,
   64     64   
            clippy::match_single_binding,
   65     65   
            clippy::diverging_sub_expression
   66     66   
        )]
   67         -
        deserializer.read_struct(&DSSEKMSFILTER_SCHEMA, (), |_, member, deser| {
          67  +
        deserializer.read_struct(&DSSEKMSFILTER_SCHEMA, &mut |member, deser| {
   68     68   
            match member.member_index() {
   69     69   
                Some(0) => {
   70     70   
                    builder.kms_key_arn = Some(deser.read_string(member)?);
   71     71   
                }
   72     72   
                _ => {}
   73     73   
            }
   74     74   
            Ok(())
   75     75   
        })?;
   76     76   
        Ok(builder.build())
   77     77   
    }
   78     78   
}
          79  +
impl DssekmsFilter {
          80  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          81  +
    pub fn deserialize_with_response(
          82  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          83  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          84  +
        _status: u16,
          85  +
        _body: &[u8],
          86  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          87  +
        Self::deserialize(deserializer)
          88  +
    }
          89  +
}
   79     90   
impl DssekmsFilter {
   80     91   
    /// Creates a new builder-style object to manufacture [`DssekmsFilter`](crate::types::DssekmsFilter).
   81     92   
    pub fn builder() -> crate::types::builders::DssekmsFilterBuilder {
   82     93   
        crate::types::builders::DssekmsFilterBuilder::default()
   83     94   
    }
   84     95   
}
   85     96   
   86     97   
/// A builder for [`DssekmsFilter`](crate::types::DssekmsFilter).
   87     98   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   88     99   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_encryption_configuration.rs

@@ -1,1 +109,120 @@
   20     20   
    "com.amazonaws.s3control",
   21     21   
    "EncryptionConfiguration",
   22     22   
);
   23     23   
static ENCRYPTIONCONFIGURATION_MEMBER_REPLICA_KMS_KEY_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   24     24   
    ::aws_smithy_schema::ShapeId::from_static(
   25     25   
        "com.amazonaws.s3control#EncryptionConfiguration$ReplicaKmsKeyID",
   26     26   
        "com.amazonaws.s3control",
   27     27   
        "EncryptionConfiguration",
   28     28   
    ),
   29     29   
    ::aws_smithy_schema::ShapeType::String,
   30         -
    "replica_kms_key_id",
          30  +
    "ReplicaKmsKeyID",
   31     31   
    0,
   32     32   
);
   33     33   
static ENCRYPTIONCONFIGURATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   34     34   
    ENCRYPTIONCONFIGURATION_SCHEMA_ID,
   35     35   
    ::aws_smithy_schema::ShapeType::Structure,
   36     36   
    &[&ENCRYPTIONCONFIGURATION_MEMBER_REPLICA_KMS_KEY_ID],
   37     37   
);
   38     38   
impl EncryptionConfiguration {
   39     39   
    /// The schema for this shape.
   40     40   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &ENCRYPTIONCONFIGURATION_SCHEMA;
   41     41   
}
   42     42   
impl ::aws_smithy_schema::serde::SerializableStruct for EncryptionConfiguration {
   43     43   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   44     44   
    fn serialize_members(
   45     45   
        &self,
   46     46   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   47     47   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   48     48   
        if let Some(ref val) = self.replica_kms_key_id {
   49     49   
            ser.write_string(&ENCRYPTIONCONFIGURATION_MEMBER_REPLICA_KMS_KEY_ID, val)?;
   50     50   
        }
   51     51   
        Ok(())
   52     52   
    }
   53     53   
}
   54     54   
impl EncryptionConfiguration {
   55     55   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   56         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   57         -
        deserializer: &mut D,
          56  +
    pub fn deserialize(
          57  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   58     58   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   59     59   
        #[allow(unused_variables, unused_mut)]
   60     60   
        let mut builder = Self::builder();
   61     61   
        #[allow(
   62     62   
            unused_variables,
   63     63   
            unreachable_code,
   64     64   
            clippy::single_match,
   65     65   
            clippy::match_single_binding,
   66     66   
            clippy::diverging_sub_expression
   67     67   
        )]
   68         -
        deserializer.read_struct(&ENCRYPTIONCONFIGURATION_SCHEMA, (), |_, member, deser| {
          68  +
        deserializer.read_struct(&ENCRYPTIONCONFIGURATION_SCHEMA, &mut |member, deser| {
   69     69   
            match member.member_index() {
   70     70   
                Some(0) => {
   71     71   
                    builder.replica_kms_key_id = Some(deser.read_string(member)?);
   72     72   
                }
   73     73   
                _ => {}
   74     74   
            }
   75     75   
            Ok(())
   76     76   
        })?;
   77     77   
        Ok(builder.build())
   78     78   
    }
   79     79   
}
          80  +
impl EncryptionConfiguration {
          81  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          82  +
    pub fn deserialize_with_response(
          83  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          84  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          85  +
        _status: u16,
          86  +
        _body: &[u8],
          87  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          88  +
        Self::deserialize(deserializer)
          89  +
    }
          90  +
}
   80     91   
impl EncryptionConfiguration {
   81     92   
    /// Creates a new builder-style object to manufacture [`EncryptionConfiguration`](crate::types::EncryptionConfiguration).
   82     93   
    pub fn builder() -> crate::types::builders::EncryptionConfigurationBuilder {
   83     94   
        crate::types::builders::EncryptionConfigurationBuilder::default()
   84     95   
    }
   85     96   
}
   86     97   
   87     98   
/// A builder for [`EncryptionConfiguration`](crate::types::EncryptionConfiguration).
   88     99   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   89    100   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_established_multi_region_access_point_policy.rs

@@ -1,1 +108,119 @@
   19     19   
    "com.amazonaws.s3control",
   20     20   
    "EstablishedMultiRegionAccessPointPolicy",
   21     21   
);
   22     22   
static ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_MEMBER_POLICY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   23     23   
    ::aws_smithy_schema::ShapeId::from_static(
   24     24   
        "com.amazonaws.s3control#EstablishedMultiRegionAccessPointPolicy$Policy",
   25     25   
        "com.amazonaws.s3control",
   26     26   
        "EstablishedMultiRegionAccessPointPolicy",
   27     27   
    ),
   28     28   
    ::aws_smithy_schema::ShapeType::String,
   29         -
    "policy",
          29  +
    "Policy",
   30     30   
    0,
   31     31   
);
   32     32   
static ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   33     33   
    ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_SCHEMA_ID,
   34     34   
    ::aws_smithy_schema::ShapeType::Structure,
   35     35   
    &[&ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_MEMBER_POLICY],
   36     36   
);
   37     37   
impl EstablishedMultiRegionAccessPointPolicy {
   38     38   
    /// The schema for this shape.
   39     39   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_SCHEMA;
   40     40   
}
   41     41   
impl ::aws_smithy_schema::serde::SerializableStruct for EstablishedMultiRegionAccessPointPolicy {
   42     42   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   43     43   
    fn serialize_members(
   44     44   
        &self,
   45     45   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   46     46   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   47     47   
        if let Some(ref val) = self.policy {
   48     48   
            ser.write_string(&ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_MEMBER_POLICY, val)?;
   49     49   
        }
   50     50   
        Ok(())
   51     51   
    }
   52     52   
}
   53     53   
impl EstablishedMultiRegionAccessPointPolicy {
   54     54   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   55         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   56         -
        deserializer: &mut D,
          55  +
    pub fn deserialize(
          56  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   57     57   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   58     58   
        #[allow(unused_variables, unused_mut)]
   59     59   
        let mut builder = Self::builder();
   60     60   
        #[allow(
   61     61   
            unused_variables,
   62     62   
            unreachable_code,
   63     63   
            clippy::single_match,
   64     64   
            clippy::match_single_binding,
   65     65   
            clippy::diverging_sub_expression
   66     66   
        )]
   67         -
        deserializer.read_struct(&ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_SCHEMA, (), |_, member, deser| {
          67  +
        deserializer.read_struct(&ESTABLISHEDMULTIREGIONACCESSPOINTPOLICY_SCHEMA, &mut |member, deser| {
   68     68   
            match member.member_index() {
   69     69   
                Some(0) => {
   70     70   
                    builder.policy = Some(deser.read_string(member)?);
   71     71   
                }
   72     72   
                _ => {}
   73     73   
            }
   74     74   
            Ok(())
   75     75   
        })?;
   76     76   
        Ok(builder.build())
   77     77   
    }
   78     78   
}
          79  +
impl EstablishedMultiRegionAccessPointPolicy {
          80  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          81  +
    pub fn deserialize_with_response(
          82  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          83  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          84  +
        _status: u16,
          85  +
        _body: &[u8],
          86  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          87  +
        Self::deserialize(deserializer)
          88  +
    }
          89  +
}
   79     90   
impl EstablishedMultiRegionAccessPointPolicy {
   80     91   
    /// Creates a new builder-style object to manufacture [`EstablishedMultiRegionAccessPointPolicy`](crate::types::EstablishedMultiRegionAccessPointPolicy).
   81     92   
    pub fn builder() -> crate::types::builders::EstablishedMultiRegionAccessPointPolicyBuilder {
   82     93   
        crate::types::builders::EstablishedMultiRegionAccessPointPolicyBuilder::default()
   83     94   
    }
   84     95   
}
   85     96   
   86     97   
/// A builder for [`EstablishedMultiRegionAccessPointPolicy`](crate::types::EstablishedMultiRegionAccessPointPolicy).
   87     98   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   88     99   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_exclude.rs

@@ -1,1 +152,143 @@
   21     21   
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.regions.is_none()`.
   22     22   
    pub fn regions(&self) -> &[::std::string::String] {
   23     23   
        self.regions.as_deref().unwrap_or_default()
   24     24   
    }
   25     25   
}
   26     26   
static EXCLUDE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   27     27   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Exclude", "com.amazonaws.s3control", "Exclude");
   28     28   
static EXCLUDE_MEMBER_BUCKETS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   29     29   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Exclude$Buckets", "com.amazonaws.s3control", "Exclude"),
   30     30   
    ::aws_smithy_schema::ShapeType::List,
   31         -
    "buckets",
          31  +
    "Buckets",
   32     32   
    0,
   33     33   
);
   34     34   
static EXCLUDE_MEMBER_REGIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   35     35   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Exclude$Regions", "com.amazonaws.s3control", "Exclude"),
   36     36   
    ::aws_smithy_schema::ShapeType::List,
   37         -
    "regions",
          37  +
    "Regions",
   38     38   
    1,
   39     39   
);
   40     40   
static EXCLUDE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   41     41   
    EXCLUDE_SCHEMA_ID,
   42     42   
    ::aws_smithy_schema::ShapeType::Structure,
   43     43   
    &[&EXCLUDE_MEMBER_BUCKETS, &EXCLUDE_MEMBER_REGIONS],
   44     44   
);
   45     45   
impl Exclude {
   46     46   
    /// The schema for this shape.
   47     47   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &EXCLUDE_SCHEMA;
   48     48   
}
   49     49   
impl ::aws_smithy_schema::serde::SerializableStruct for Exclude {
   50     50   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   51     51   
    fn serialize_members(
   52     52   
        &self,
   53     53   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   54     54   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   55     55   
        if let Some(ref val) = self.buckets {
   56     56   
            ser.write_list(&EXCLUDE_MEMBER_BUCKETS, &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   57     57   
                for item in val {
   58     58   
                    ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
   59     59   
                }
   60     60   
                Ok(())
   61     61   
            })?;
   62     62   
        }
   63     63   
        if let Some(ref val) = self.regions {
   64     64   
            ser.write_list(&EXCLUDE_MEMBER_REGIONS, &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   65     65   
                for item in val {
   66     66   
                    ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
   67     67   
                }
   68     68   
                Ok(())
   69     69   
            })?;
   70     70   
        }
   71     71   
        Ok(())
   72     72   
    }
   73     73   
}
   74     74   
impl Exclude {
   75     75   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   76         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   77         -
        deserializer: &mut D,
          76  +
    pub fn deserialize(
          77  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   78     78   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   79     79   
        #[allow(unused_variables, unused_mut)]
   80     80   
        let mut builder = Self::builder();
   81     81   
        #[allow(
   82     82   
            unused_variables,
   83     83   
            unreachable_code,
   84     84   
            clippy::single_match,
   85     85   
            clippy::match_single_binding,
   86     86   
            clippy::diverging_sub_expression
   87     87   
        )]
   88         -
        deserializer.read_struct(&EXCLUDE_SCHEMA, (), |_, member, deser| {
          88  +
        deserializer.read_struct(&EXCLUDE_SCHEMA, &mut |member, deser| {
   89     89   
            match member.member_index() {
   90     90   
                Some(0) => {
   91         -
                    builder.buckets = Some({
   92         -
                        let container = if let Some(cap) = deser.container_size() {
   93         -
                            Vec::with_capacity(cap)
   94         -
                        } else {
   95         -
                            Vec::new()
   96         -
                        };
   97         -
                        deser.read_list(member, container, |mut list, deser| {
   98         -
                            list.push(deser.read_string(member)?);
   99         -
                            Ok(list)
  100         -
                        })?
  101         -
                    });
          91  +
                    builder.buckets = Some(deser.read_string_list(member)?);
  102     92   
                }
  103     93   
                Some(1) => {
  104         -
                    builder.regions = Some({
  105         -
                        let container = if let Some(cap) = deser.container_size() {
  106         -
                            Vec::with_capacity(cap)
  107         -
                        } else {
  108         -
                            Vec::new()
  109         -
                        };
  110         -
                        deser.read_list(member, container, |mut list, deser| {
  111         -
                            list.push(deser.read_string(member)?);
  112         -
                            Ok(list)
  113         -
                        })?
  114         -
                    });
          94  +
                    builder.regions = Some(deser.read_string_list(member)?);
  115     95   
                }
  116     96   
                _ => {}
  117     97   
            }
  118     98   
            Ok(())
  119     99   
        })?;
  120    100   
        Ok(builder.build())
  121    101   
    }
  122    102   
}
         103  +
impl Exclude {
         104  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         105  +
    pub fn deserialize_with_response(
         106  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         107  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         108  +
        _status: u16,
         109  +
        _body: &[u8],
         110  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         111  +
        Self::deserialize(deserializer)
         112  +
    }
         113  +
}
  123    114   
impl Exclude {
  124    115   
    /// Creates a new builder-style object to manufacture [`Exclude`](crate::types::Exclude).
  125    116   
    pub fn builder() -> crate::types::builders::ExcludeBuilder {
  126    117   
        crate::types::builders::ExcludeBuilder::default()
  127    118   
    }
  128    119   
}
  129    120   
  130    121   
/// A builder for [`Exclude`](crate::types::Exclude).
  131    122   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  132    123   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_existing_object_replication.rs

@@ -1,1 +112,123 @@
   20     20   
    "com.amazonaws.s3control",
   21     21   
    "ExistingObjectReplication",
   22     22   
);
   23     23   
static EXISTINGOBJECTREPLICATION_MEMBER_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   24     24   
    ::aws_smithy_schema::ShapeId::from_static(
   25     25   
        "com.amazonaws.s3control#ExistingObjectReplication$Status",
   26     26   
        "com.amazonaws.s3control",
   27     27   
        "ExistingObjectReplication",
   28     28   
    ),
   29     29   
    ::aws_smithy_schema::ShapeType::String,
   30         -
    "status",
          30  +
    "Status",
   31     31   
    0,
   32     32   
);
   33     33   
static EXISTINGOBJECTREPLICATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   34     34   
    EXISTINGOBJECTREPLICATION_SCHEMA_ID,
   35     35   
    ::aws_smithy_schema::ShapeType::Structure,
   36     36   
    &[&EXISTINGOBJECTREPLICATION_MEMBER_STATUS],
   37     37   
);
   38     38   
impl ExistingObjectReplication {
   39     39   
    /// The schema for this shape.
   40     40   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &EXISTINGOBJECTREPLICATION_SCHEMA;
   41     41   
}
   42     42   
impl ::aws_smithy_schema::serde::SerializableStruct for ExistingObjectReplication {
   43     43   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   44     44   
    fn serialize_members(
   45     45   
        &self,
   46     46   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   47     47   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   48     48   
        {
   49     49   
            let val = &self.status;
   50     50   
            ser.write_string(&EXISTINGOBJECTREPLICATION_MEMBER_STATUS, val.as_str())?;
   51     51   
        }
   52     52   
        Ok(())
   53     53   
    }
   54     54   
}
   55     55   
impl ExistingObjectReplication {
   56     56   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   57         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   58         -
        deserializer: &mut D,
          57  +
    pub fn deserialize(
          58  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   59     59   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   60     60   
        #[allow(unused_variables, unused_mut)]
   61     61   
        let mut builder = Self::builder();
   62     62   
        #[allow(
   63     63   
            unused_variables,
   64     64   
            unreachable_code,
   65     65   
            clippy::single_match,
   66     66   
            clippy::match_single_binding,
   67     67   
            clippy::diverging_sub_expression
   68     68   
        )]
   69         -
        deserializer.read_struct(&EXISTINGOBJECTREPLICATION_SCHEMA, (), |_, member, deser| {
          69  +
        deserializer.read_struct(&EXISTINGOBJECTREPLICATION_SCHEMA, &mut |member, deser| {
   70     70   
            match member.member_index() {
   71     71   
                Some(0) => {
   72     72   
                    builder.status = Some(crate::types::ExistingObjectReplicationStatus::from(deser.read_string(member)?.as_str()));
   73     73   
                }
   74     74   
                _ => {}
   75     75   
            }
   76     76   
            Ok(())
   77     77   
        })?;
   78     78   
        builder
   79     79   
            .build()
   80     80   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
   81     81   
    }
   82     82   
}
          83  +
impl ExistingObjectReplication {
          84  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          85  +
    pub fn deserialize_with_response(
          86  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          87  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          88  +
        _status: u16,
          89  +
        _body: &[u8],
          90  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          91  +
        Self::deserialize(deserializer)
          92  +
    }
          93  +
}
   83     94   
impl ExistingObjectReplication {
   84     95   
    /// Creates a new builder-style object to manufacture [`ExistingObjectReplication`](crate::types::ExistingObjectReplication).
   85     96   
    pub fn builder() -> crate::types::builders::ExistingObjectReplicationBuilder {
   86     97   
        crate::types::builders::ExistingObjectReplicationBuilder::default()
   87     98   
    }
   88     99   
}
   89    100   
   90    101   
/// A builder for [`ExistingObjectReplication`](crate::types::ExistingObjectReplication).
   91    102   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   92    103   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_generated_manifest_encryption.rs

@@ -4,4 +131,142 @@
   24     24   
    "com.amazonaws.s3control",
   25     25   
    "GeneratedManifestEncryption",
   26     26   
);
   27     27   
static GENERATEDMANIFESTENCRYPTION_MEMBER_SSES3: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   28     28   
    ::aws_smithy_schema::ShapeId::from_static(
   29     29   
        "com.amazonaws.s3control#GeneratedManifestEncryption$SSES3",
   30     30   
        "com.amazonaws.s3control",
   31     31   
        "GeneratedManifestEncryption",
   32     32   
    ),
   33     33   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    "sses3",
          34  +
    "SSES3",
   35     35   
    0,
   36     36   
)
   37     37   
.with_xml_name("SSE-S3");
   38     38   
static GENERATEDMANIFESTENCRYPTION_MEMBER_SSEKMS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   39     39   
    ::aws_smithy_schema::ShapeId::from_static(
   40     40   
        "com.amazonaws.s3control#GeneratedManifestEncryption$SSEKMS",
   41     41   
        "com.amazonaws.s3control",
   42     42   
        "GeneratedManifestEncryption",
   43     43   
    ),
   44     44   
    ::aws_smithy_schema::ShapeType::Structure,
   45         -
    "ssekms",
          45  +
    "SSEKMS",
   46     46   
    1,
   47     47   
)
   48     48   
.with_xml_name("SSE-KMS");
   49     49   
static GENERATEDMANIFESTENCRYPTION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   50     50   
    GENERATEDMANIFESTENCRYPTION_SCHEMA_ID,
   51     51   
    ::aws_smithy_schema::ShapeType::Structure,
   52     52   
    &[&GENERATEDMANIFESTENCRYPTION_MEMBER_SSES3, &GENERATEDMANIFESTENCRYPTION_MEMBER_SSEKMS],
   53     53   
);
   54     54   
impl GeneratedManifestEncryption {
   55     55   
    /// The schema for this shape.
   56     56   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GENERATEDMANIFESTENCRYPTION_SCHEMA;
   57     57   
}
   58     58   
impl ::aws_smithy_schema::serde::SerializableStruct for GeneratedManifestEncryption {
   59     59   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   60     60   
    fn serialize_members(
   61     61   
        &self,
   62     62   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   63     63   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   64     64   
        if let Some(ref val) = self.sses3 {
   65     65   
            ser.write_struct(&GENERATEDMANIFESTENCRYPTION_MEMBER_SSES3, val)?;
   66     66   
        }
   67     67   
        if let Some(ref val) = self.ssekms {
   68     68   
            ser.write_struct(&GENERATEDMANIFESTENCRYPTION_MEMBER_SSEKMS, val)?;
   69     69   
        }
   70     70   
        Ok(())
   71     71   
    }
   72     72   
}
   73     73   
impl GeneratedManifestEncryption {
   74     74   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   75         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   76         -
        deserializer: &mut D,
          75  +
    pub fn deserialize(
          76  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   77     77   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   78     78   
        #[allow(unused_variables, unused_mut)]
   79     79   
        let mut builder = Self::builder();
   80     80   
        #[allow(
   81     81   
            unused_variables,
   82     82   
            unreachable_code,
   83     83   
            clippy::single_match,
   84     84   
            clippy::match_single_binding,
   85     85   
            clippy::diverging_sub_expression
   86     86   
        )]
   87         -
        deserializer.read_struct(&GENERATEDMANIFESTENCRYPTION_SCHEMA, (), |_, member, deser| {
          87  +
        deserializer.read_struct(&GENERATEDMANIFESTENCRYPTION_SCHEMA, &mut |member, deser| {
   88     88   
            match member.member_index() {
   89     89   
                Some(0) => {
   90     90   
                    builder.sses3 = Some(crate::types::Sses3Encryption::deserialize(deser)?);
   91     91   
                }
   92     92   
                Some(1) => {
   93     93   
                    builder.ssekms = Some(crate::types::SsekmsEncryption::deserialize(deser)?);
   94     94   
                }
   95     95   
                _ => {}
   96     96   
            }
   97     97   
            Ok(())
   98     98   
        })?;
   99     99   
        Ok(builder.build())
  100    100   
    }
  101    101   
}
         102  +
impl GeneratedManifestEncryption {
         103  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         104  +
    pub fn deserialize_with_response(
         105  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         106  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         107  +
        _status: u16,
         108  +
        _body: &[u8],
         109  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         110  +
        Self::deserialize(deserializer)
         111  +
    }
         112  +
}
  102    113   
impl GeneratedManifestEncryption {
  103    114   
    /// Creates a new builder-style object to manufacture [`GeneratedManifestEncryption`](crate::types::GeneratedManifestEncryption).
  104    115   
    pub fn builder() -> crate::types::builders::GeneratedManifestEncryptionBuilder {
  105    116   
        crate::types::builders::GeneratedManifestEncryptionBuilder::default()
  106    117   
    }
  107    118   
}
  108    119   
  109    120   
/// A builder for [`GeneratedManifestEncryption`](crate::types::GeneratedManifestEncryption).
  110    121   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  111    122   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_grantee.rs

@@ -13,13 +134,145 @@
   33     33   
    /// <p>The unique identifier of the <code>Grantee</code>. If the grantee type is <code>IAM</code>, the identifier is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee type is a directory user or group, the identifier is 128-bit universally unique identifier (UUID) in the format <code>a1b2c3d4-5678-90ab-cdef-EXAMPLE11111</code>. You can obtain this UUID from your Amazon Web Services IAM Identity Center instance.</p>
   34     34   
    pub fn grantee_identifier(&self) -> ::std::option::Option<&str> {
   35     35   
        self.grantee_identifier.as_deref()
   36     36   
    }
   37     37   
}
   38     38   
static GRANTEE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   39     39   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Grantee", "com.amazonaws.s3control", "Grantee");
   40     40   
static GRANTEE_MEMBER_GRANTEE_TYPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   41     41   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Grantee$GranteeType", "com.amazonaws.s3control", "Grantee"),
   42     42   
    ::aws_smithy_schema::ShapeType::String,
   43         -
    "grantee_type",
          43  +
    "GranteeType",
   44     44   
    0,
   45     45   
);
   46     46   
static GRANTEE_MEMBER_GRANTEE_IDENTIFIER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   47     47   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Grantee$GranteeIdentifier", "com.amazonaws.s3control", "Grantee"),
   48     48   
    ::aws_smithy_schema::ShapeType::String,
   49         -
    "grantee_identifier",
          49  +
    "GranteeIdentifier",
   50     50   
    1,
   51     51   
);
   52     52   
static GRANTEE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   53     53   
    GRANTEE_SCHEMA_ID,
   54     54   
    ::aws_smithy_schema::ShapeType::Structure,
   55     55   
    &[&GRANTEE_MEMBER_GRANTEE_TYPE, &GRANTEE_MEMBER_GRANTEE_IDENTIFIER],
   56     56   
);
   57     57   
impl Grantee {
   58     58   
    /// The schema for this shape.
   59     59   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GRANTEE_SCHEMA;
   60     60   
}
   61     61   
impl ::aws_smithy_schema::serde::SerializableStruct for Grantee {
   62     62   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   63     63   
    fn serialize_members(
   64     64   
        &self,
   65     65   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   66     66   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   67     67   
        if let Some(ref val) = self.grantee_type {
   68     68   
            ser.write_string(&GRANTEE_MEMBER_GRANTEE_TYPE, val.as_str())?;
   69     69   
        }
   70     70   
        if let Some(ref val) = self.grantee_identifier {
   71     71   
            ser.write_string(&GRANTEE_MEMBER_GRANTEE_IDENTIFIER, val)?;
   72     72   
        }
   73     73   
        Ok(())
   74     74   
    }
   75     75   
}
   76     76   
impl Grantee {
   77     77   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   78         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   79         -
        deserializer: &mut D,
          78  +
    pub fn deserialize(
          79  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   80     80   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   81     81   
        #[allow(unused_variables, unused_mut)]
   82     82   
        let mut builder = Self::builder();
   83     83   
        #[allow(
   84     84   
            unused_variables,
   85     85   
            unreachable_code,
   86     86   
            clippy::single_match,
   87     87   
            clippy::match_single_binding,
   88     88   
            clippy::diverging_sub_expression
   89     89   
        )]
   90         -
        deserializer.read_struct(&GRANTEE_SCHEMA, (), |_, member, deser| {
          90  +
        deserializer.read_struct(&GRANTEE_SCHEMA, &mut |member, deser| {
   91     91   
            match member.member_index() {
   92     92   
                Some(0) => {
   93     93   
                    builder.grantee_type = Some(crate::types::GranteeType::from(deser.read_string(member)?.as_str()));
   94     94   
                }
   95     95   
                Some(1) => {
   96     96   
                    builder.grantee_identifier = Some(deser.read_string(member)?);
   97     97   
                }
   98     98   
                _ => {}
   99     99   
            }
  100    100   
            Ok(())
  101    101   
        })?;
  102    102   
        Ok(builder.build())
  103    103   
    }
  104    104   
}
         105  +
impl Grantee {
         106  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         107  +
    pub fn deserialize_with_response(
         108  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         109  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         110  +
        _status: u16,
         111  +
        _body: &[u8],
         112  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         113  +
        Self::deserialize(deserializer)
         114  +
    }
         115  +
}
  105    116   
impl Grantee {
  106    117   
    /// Creates a new builder-style object to manufacture [`Grantee`](crate::types::Grantee).
  107    118   
    pub fn builder() -> crate::types::builders::GranteeBuilder {
  108    119   
        crate::types::builders::GranteeBuilder::default()
  109    120   
    }
  110    121   
}
  111    122   
  112    123   
/// A builder for [`Grantee`](crate::types::Grantee).
  113    124   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  114    125   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_include.rs

@@ -1,1 +152,143 @@
   21     21   
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.regions.is_none()`.
   22     22   
    pub fn regions(&self) -> &[::std::string::String] {
   23     23   
        self.regions.as_deref().unwrap_or_default()
   24     24   
    }
   25     25   
}
   26     26   
static INCLUDE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   27     27   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Include", "com.amazonaws.s3control", "Include");
   28     28   
static INCLUDE_MEMBER_BUCKETS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   29     29   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Include$Buckets", "com.amazonaws.s3control", "Include"),
   30     30   
    ::aws_smithy_schema::ShapeType::List,
   31         -
    "buckets",
          31  +
    "Buckets",
   32     32   
    0,
   33     33   
);
   34     34   
static INCLUDE_MEMBER_REGIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   35     35   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#Include$Regions", "com.amazonaws.s3control", "Include"),
   36     36   
    ::aws_smithy_schema::ShapeType::List,
   37         -
    "regions",
          37  +
    "Regions",
   38     38   
    1,
   39     39   
);
   40     40   
static INCLUDE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   41     41   
    INCLUDE_SCHEMA_ID,
   42     42   
    ::aws_smithy_schema::ShapeType::Structure,
   43     43   
    &[&INCLUDE_MEMBER_BUCKETS, &INCLUDE_MEMBER_REGIONS],
   44     44   
);
   45     45   
impl Include {
   46     46   
    /// The schema for this shape.
   47     47   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &INCLUDE_SCHEMA;
   48     48   
}
   49     49   
impl ::aws_smithy_schema::serde::SerializableStruct for Include {
   50     50   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   51     51   
    fn serialize_members(
   52     52   
        &self,
   53     53   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   54     54   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   55     55   
        if let Some(ref val) = self.buckets {
   56     56   
            ser.write_list(&INCLUDE_MEMBER_BUCKETS, &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   57     57   
                for item in val {
   58     58   
                    ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
   59     59   
                }
   60     60   
                Ok(())
   61     61   
            })?;
   62     62   
        }
   63     63   
        if let Some(ref val) = self.regions {
   64     64   
            ser.write_list(&INCLUDE_MEMBER_REGIONS, &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   65     65   
                for item in val {
   66     66   
                    ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
   67     67   
                }
   68     68   
                Ok(())
   69     69   
            })?;
   70     70   
        }
   71     71   
        Ok(())
   72     72   
    }
   73     73   
}
   74     74   
impl Include {
   75     75   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   76         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   77         -
        deserializer: &mut D,
          76  +
    pub fn deserialize(
          77  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   78     78   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   79     79   
        #[allow(unused_variables, unused_mut)]
   80     80   
        let mut builder = Self::builder();
   81     81   
        #[allow(
   82     82   
            unused_variables,
   83     83   
            unreachable_code,
   84     84   
            clippy::single_match,
   85     85   
            clippy::match_single_binding,
   86     86   
            clippy::diverging_sub_expression
   87     87   
        )]
   88         -
        deserializer.read_struct(&INCLUDE_SCHEMA, (), |_, member, deser| {
          88  +
        deserializer.read_struct(&INCLUDE_SCHEMA, &mut |member, deser| {
   89     89   
            match member.member_index() {
   90     90   
                Some(0) => {
   91         -
                    builder.buckets = Some({
   92         -
                        let container = if let Some(cap) = deser.container_size() {
   93         -
                            Vec::with_capacity(cap)
   94         -
                        } else {
   95         -
                            Vec::new()
   96         -
                        };
   97         -
                        deser.read_list(member, container, |mut list, deser| {
   98         -
                            list.push(deser.read_string(member)?);
   99         -
                            Ok(list)
  100         -
                        })?
  101         -
                    });
          91  +
                    builder.buckets = Some(deser.read_string_list(member)?);
  102     92   
                }
  103     93   
                Some(1) => {
  104         -
                    builder.regions = Some({
  105         -
                        let container = if let Some(cap) = deser.container_size() {
  106         -
                            Vec::with_capacity(cap)
  107         -
                        } else {
  108         -
                            Vec::new()
  109         -
                        };
  110         -
                        deser.read_list(member, container, |mut list, deser| {
  111         -
                            list.push(deser.read_string(member)?);
  112         -
                            Ok(list)
  113         -
                        })?
  114         -
                    });
          94  +
                    builder.regions = Some(deser.read_string_list(member)?);
  115     95   
                }
  116     96   
                _ => {}
  117     97   
            }
  118     98   
            Ok(())
  119     99   
        })?;
  120    100   
        Ok(builder.build())
  121    101   
    }
  122    102   
}
         103  +
impl Include {
         104  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         105  +
    pub fn deserialize_with_response(
         106  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         107  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         108  +
        _status: u16,
         109  +
        _body: &[u8],
         110  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         111  +
        Self::deserialize(deserializer)
         112  +
    }
         113  +
}
  123    114   
impl Include {
  124    115   
    /// Creates a new builder-style object to manufacture [`Include`](crate::types::Include).
  125    116   
    pub fn builder() -> crate::types::builders::IncludeBuilder {
  126    117   
        crate::types::builders::IncludeBuilder::default()
  127    118   
    }
  128    119   
}
  129    120   
  130    121   
/// A builder for [`Include`](crate::types::Include).
  131    122   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  132    123   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_descriptor.rs

@@ -101,101 +329,329 @@
  121    121   
    /// <p>The attribute of the JobDescriptor containing details about the job's generated manifest.</p>
  122    122   
    pub fn generated_manifest_descriptor(&self) -> ::std::option::Option<&crate::types::S3GeneratedManifestDescriptor> {
  123    123   
        self.generated_manifest_descriptor.as_ref()
  124    124   
    }
  125    125   
}
  126    126   
static JOBDESCRIPTOR_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
  127    127   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobDescriptor", "com.amazonaws.s3control", "JobDescriptor");
  128    128   
static JOBDESCRIPTOR_MEMBER_JOB_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  129    129   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobDescriptor$JobId", "com.amazonaws.s3control", "JobDescriptor"),
  130    130   
    ::aws_smithy_schema::ShapeType::String,
  131         -
    "job_id",
         131  +
    "JobId",
  132    132   
    0,
  133    133   
);
  134    134   
static JOBDESCRIPTOR_MEMBER_CONFIRMATION_REQUIRED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  135    135   
    ::aws_smithy_schema::ShapeId::from_static(
  136    136   
        "com.amazonaws.s3control#JobDescriptor$ConfirmationRequired",
  137    137   
        "com.amazonaws.s3control",
  138    138   
        "JobDescriptor",
  139    139   
    ),
  140    140   
    ::aws_smithy_schema::ShapeType::Boolean,
  141         -
    "confirmation_required",
         141  +
    "ConfirmationRequired",
  142    142   
    1,
  143    143   
);
  144    144   
static JOBDESCRIPTOR_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  145    145   
    ::aws_smithy_schema::ShapeId::from_static(
  146    146   
        "com.amazonaws.s3control#JobDescriptor$Description",
  147    147   
        "com.amazonaws.s3control",
  148    148   
        "JobDescriptor",
  149    149   
    ),
  150    150   
    ::aws_smithy_schema::ShapeType::String,
  151         -
    "description",
         151  +
    "Description",
  152    152   
    2,
  153    153   
);
  154    154   
static JOBDESCRIPTOR_MEMBER_JOB_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  155    155   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobDescriptor$JobArn", "com.amazonaws.s3control", "JobDescriptor"),
  156    156   
    ::aws_smithy_schema::ShapeType::String,
  157         -
    "job_arn",
         157  +
    "JobArn",
  158    158   
    3,
  159    159   
);
  160    160   
static JOBDESCRIPTOR_MEMBER_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  161    161   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobDescriptor$Status", "com.amazonaws.s3control", "JobDescriptor"),
  162    162   
    ::aws_smithy_schema::ShapeType::String,
  163         -
    "status",
         163  +
    "Status",
  164    164   
    4,
  165    165   
);
  166    166   
static JOBDESCRIPTOR_MEMBER_MANIFEST: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  167    167   
    ::aws_smithy_schema::ShapeId::from_static(
  168    168   
        "com.amazonaws.s3control#JobDescriptor$Manifest",
  169    169   
        "com.amazonaws.s3control",
  170    170   
        "JobDescriptor",
  171    171   
    ),
  172    172   
    ::aws_smithy_schema::ShapeType::Structure,
  173         -
    "manifest",
         173  +
    "Manifest",
  174    174   
    5,
  175    175   
);
  176    176   
static JOBDESCRIPTOR_MEMBER_OPERATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  177    177   
    ::aws_smithy_schema::ShapeId::from_static(
  178    178   
        "com.amazonaws.s3control#JobDescriptor$Operation",
  179    179   
        "com.amazonaws.s3control",
  180    180   
        "JobDescriptor",
  181    181   
    ),
  182    182   
    ::aws_smithy_schema::ShapeType::Structure,
  183         -
    "operation",
         183  +
    "Operation",
  184    184   
    6,
  185    185   
);
  186    186   
static JOBDESCRIPTOR_MEMBER_PRIORITY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  187    187   
    ::aws_smithy_schema::ShapeId::from_static(
  188    188   
        "com.amazonaws.s3control#JobDescriptor$Priority",
  189    189   
        "com.amazonaws.s3control",
  190    190   
        "JobDescriptor",
  191    191   
    ),
  192    192   
    ::aws_smithy_schema::ShapeType::Integer,
  193         -
    "priority",
         193  +
    "Priority",
  194    194   
    7,
  195    195   
);
  196    196   
static JOBDESCRIPTOR_MEMBER_PROGRESS_SUMMARY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  197    197   
    ::aws_smithy_schema::ShapeId::from_static(
  198    198   
        "com.amazonaws.s3control#JobDescriptor$ProgressSummary",
  199    199   
        "com.amazonaws.s3control",
  200    200   
        "JobDescriptor",
  201    201   
    ),
  202    202   
    ::aws_smithy_schema::ShapeType::Structure,
  203         -
    "progress_summary",
         203  +
    "ProgressSummary",
  204    204   
    8,
  205    205   
);
  206    206   
static JOBDESCRIPTOR_MEMBER_STATUS_UPDATE_REASON: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  207    207   
    ::aws_smithy_schema::ShapeId::from_static(
  208    208   
        "com.amazonaws.s3control#JobDescriptor$StatusUpdateReason",
  209    209   
        "com.amazonaws.s3control",
  210    210   
        "JobDescriptor",
  211    211   
    ),
  212    212   
    ::aws_smithy_schema::ShapeType::String,
  213         -
    "status_update_reason",
         213  +
    "StatusUpdateReason",
  214    214   
    9,
  215    215   
);
  216    216   
static JOBDESCRIPTOR_MEMBER_FAILURE_REASONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  217    217   
    ::aws_smithy_schema::ShapeId::from_static(
  218    218   
        "com.amazonaws.s3control#JobDescriptor$FailureReasons",
  219    219   
        "com.amazonaws.s3control",
  220    220   
        "JobDescriptor",
  221    221   
    ),
  222    222   
    ::aws_smithy_schema::ShapeType::List,
  223         -
    "failure_reasons",
         223  +
    "FailureReasons",
  224    224   
    10,
  225    225   
);
  226    226   
static JOBDESCRIPTOR_MEMBER_REPORT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  227    227   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobDescriptor$Report", "com.amazonaws.s3control", "JobDescriptor"),
  228    228   
    ::aws_smithy_schema::ShapeType::Structure,
  229         -
    "report",
         229  +
    "Report",
  230    230   
    11,
  231    231   
);
  232    232   
static JOBDESCRIPTOR_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  233    233   
    ::aws_smithy_schema::ShapeId::from_static(
  234    234   
        "com.amazonaws.s3control#JobDescriptor$CreationTime",
  235    235   
        "com.amazonaws.s3control",
  236    236   
        "JobDescriptor",
  237    237   
    ),
  238    238   
    ::aws_smithy_schema::ShapeType::Timestamp,
  239         -
    "creation_time",
         239  +
    "CreationTime",
  240    240   
    12,
  241    241   
);
  242    242   
static JOBDESCRIPTOR_MEMBER_TERMINATION_DATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  243    243   
    ::aws_smithy_schema::ShapeId::from_static(
  244    244   
        "com.amazonaws.s3control#JobDescriptor$TerminationDate",
  245    245   
        "com.amazonaws.s3control",
  246    246   
        "JobDescriptor",
  247    247   
    ),
  248    248   
    ::aws_smithy_schema::ShapeType::Timestamp,
  249         -
    "termination_date",
         249  +
    "TerminationDate",
  250    250   
    13,
  251    251   
);
  252    252   
static JOBDESCRIPTOR_MEMBER_ROLE_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  253    253   
    ::aws_smithy_schema::ShapeId::from_static(
  254    254   
        "com.amazonaws.s3control#JobDescriptor$RoleArn",
  255    255   
        "com.amazonaws.s3control",
  256    256   
        "JobDescriptor",
  257    257   
    ),
  258    258   
    ::aws_smithy_schema::ShapeType::String,
  259         -
    "role_arn",
         259  +
    "RoleArn",
  260    260   
    14,
  261    261   
);
  262    262   
static JOBDESCRIPTOR_MEMBER_SUSPENDED_DATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  263    263   
    ::aws_smithy_schema::ShapeId::from_static(
  264    264   
        "com.amazonaws.s3control#JobDescriptor$SuspendedDate",
  265    265   
        "com.amazonaws.s3control",
  266    266   
        "JobDescriptor",
  267    267   
    ),
  268    268   
    ::aws_smithy_schema::ShapeType::Timestamp,
  269         -
    "suspended_date",
         269  +
    "SuspendedDate",
  270    270   
    15,
  271    271   
);
  272    272   
static JOBDESCRIPTOR_MEMBER_SUSPENDED_CAUSE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  273    273   
    ::aws_smithy_schema::ShapeId::from_static(
  274    274   
        "com.amazonaws.s3control#JobDescriptor$SuspendedCause",
  275    275   
        "com.amazonaws.s3control",
  276    276   
        "JobDescriptor",
  277    277   
    ),
  278    278   
    ::aws_smithy_schema::ShapeType::String,
  279         -
    "suspended_cause",
         279  +
    "SuspendedCause",
  280    280   
    16,
  281    281   
);
  282    282   
static JOBDESCRIPTOR_MEMBER_MANIFEST_GENERATOR: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  283    283   
    ::aws_smithy_schema::ShapeId::from_static(
  284    284   
        "com.amazonaws.s3control#JobDescriptor$ManifestGenerator",
  285    285   
        "com.amazonaws.s3control",
  286    286   
        "JobDescriptor",
  287    287   
    ),
  288    288   
    ::aws_smithy_schema::ShapeType::Union,
  289         -
    "manifest_generator",
         289  +
    "ManifestGenerator",
  290    290   
    17,
  291    291   
);
  292    292   
static JOBDESCRIPTOR_MEMBER_GENERATED_MANIFEST_DESCRIPTOR: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  293    293   
    ::aws_smithy_schema::ShapeId::from_static(
  294    294   
        "com.amazonaws.s3control#JobDescriptor$GeneratedManifestDescriptor",
  295    295   
        "com.amazonaws.s3control",
  296    296   
        "JobDescriptor",
  297    297   
    ),
  298    298   
    ::aws_smithy_schema::ShapeType::Structure,
  299         -
    "generated_manifest_descriptor",
         299  +
    "GeneratedManifestDescriptor",
  300    300   
    18,
  301    301   
);
  302    302   
static JOBDESCRIPTOR_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  303    303   
    JOBDESCRIPTOR_SCHEMA_ID,
  304    304   
    ::aws_smithy_schema::ShapeType::Structure,
  305    305   
    &[
  306    306   
        &JOBDESCRIPTOR_MEMBER_JOB_ID,
  307    307   
        &JOBDESCRIPTOR_MEMBER_CONFIRMATION_REQUIRED,
  308    308   
        &JOBDESCRIPTOR_MEMBER_DESCRIPTION,
  309    309   
        &JOBDESCRIPTOR_MEMBER_JOB_ARN,
@@ -368,368 +528,533 @@
  388    388   
        if let Some(ref val) = self.role_arn {
  389    389   
            ser.write_string(&JOBDESCRIPTOR_MEMBER_ROLE_ARN, val)?;
  390    390   
        }
  391    391   
        if let Some(ref val) = self.suspended_date {
  392    392   
            ser.write_timestamp(&JOBDESCRIPTOR_MEMBER_SUSPENDED_DATE, val)?;
  393    393   
        }
  394    394   
        if let Some(ref val) = self.suspended_cause {
  395    395   
            ser.write_string(&JOBDESCRIPTOR_MEMBER_SUSPENDED_CAUSE, val)?;
  396    396   
        }
  397    397   
        if let Some(ref val) = self.manifest_generator {
  398         -
            ser.write_null(&JOBDESCRIPTOR_MEMBER_MANIFEST_GENERATOR)?;
         398  +
            ser.write_struct(&JOBDESCRIPTOR_MEMBER_MANIFEST_GENERATOR, val)?;
  399    399   
        }
  400    400   
        if let Some(ref val) = self.generated_manifest_descriptor {
  401    401   
            ser.write_struct(&JOBDESCRIPTOR_MEMBER_GENERATED_MANIFEST_DESCRIPTOR, val)?;
  402    402   
        }
  403    403   
        Ok(())
  404    404   
    }
  405    405   
}
  406    406   
impl JobDescriptor {
  407    407   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  408         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  409         -
        deserializer: &mut D,
         408  +
    pub fn deserialize(
         409  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  410    410   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  411    411   
        #[allow(unused_variables, unused_mut)]
  412    412   
        let mut builder = Self::builder();
  413    413   
        #[allow(
  414    414   
            unused_variables,
  415    415   
            unreachable_code,
  416    416   
            clippy::single_match,
  417    417   
            clippy::match_single_binding,
  418    418   
            clippy::diverging_sub_expression
  419    419   
        )]
  420         -
        deserializer.read_struct(&JOBDESCRIPTOR_SCHEMA, (), |_, member, deser| {
         420  +
        deserializer.read_struct(&JOBDESCRIPTOR_SCHEMA, &mut |member, deser| {
  421    421   
            match member.member_index() {
  422    422   
                Some(0) => {
  423    423   
                    builder.job_id = Some(deser.read_string(member)?);
  424    424   
                }
  425    425   
                Some(1) => {
  426    426   
                    builder.confirmation_required = Some(deser.read_boolean(member)?);
  427    427   
                }
  428    428   
                Some(2) => {
  429    429   
                    builder.description = Some(deser.read_string(member)?);
  430    430   
                }
  431    431   
                Some(3) => {
  432    432   
                    builder.job_arn = Some(deser.read_string(member)?);
  433    433   
                }
  434    434   
                Some(4) => {
  435    435   
                    builder.status = Some(crate::types::JobStatus::from(deser.read_string(member)?.as_str()));
  436    436   
                }
  437    437   
                Some(5) => {
  438    438   
                    builder.manifest = Some(crate::types::JobManifest::deserialize(deser)?);
  439    439   
                }
  440    440   
                Some(6) => {
  441    441   
                    builder.operation = Some(crate::types::JobOperation::deserialize(deser)?);
  442    442   
                }
  443    443   
                Some(7) => {
  444    444   
                    builder.priority = Some(deser.read_integer(member)?);
  445    445   
                }
  446    446   
                Some(8) => {
  447    447   
                    builder.progress_summary = Some(crate::types::JobProgressSummary::deserialize(deser)?);
  448    448   
                }
  449    449   
                Some(9) => {
  450    450   
                    builder.status_update_reason = Some(deser.read_string(member)?);
  451    451   
                }
  452    452   
                Some(10) => {
  453    453   
                    builder.failure_reasons = Some({
  454         -
                        let container = if let Some(cap) = deser.container_size() {
  455         -
                            Vec::with_capacity(cap)
  456         -
                        } else {
  457         -
                            Vec::new()
  458         -
                        };
  459         -
                        deser.read_list(member, container, |mut list, deser| {
  460         -
                            list.push(crate::types::JobFailure::deserialize(deser)?);
  461         -
                            Ok(list)
  462         -
                        })?
         454  +
                        let mut container = Vec::new();
         455  +
                        deser.read_list(member, &mut |deser| {
         456  +
                            container.push(crate::types::JobFailure::deserialize(deser)?);
         457  +
                            Ok(())
         458  +
                        })?;
         459  +
                        container
  463    460   
                    });
  464    461   
                }
  465    462   
                Some(11) => {
  466    463   
                    builder.report = Some(crate::types::JobReport::deserialize(deser)?);
  467    464   
                }
  468    465   
                Some(12) => {
  469    466   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  470    467   
                }
  471    468   
                Some(13) => {
  472    469   
                    builder.termination_date = Some(deser.read_timestamp(member)?);
  473    470   
                }
  474    471   
                Some(14) => {
  475    472   
                    builder.role_arn = Some(deser.read_string(member)?);
  476    473   
                }
  477    474   
                Some(15) => {
  478    475   
                    builder.suspended_date = Some(deser.read_timestamp(member)?);
  479    476   
                }
  480    477   
                Some(16) => {
  481    478   
                    builder.suspended_cause = Some(deser.read_string(member)?);
  482    479   
                }
  483    480   
                Some(17) => {
  484         -
                    builder.manifest_generator = Some({
  485         -
                        let _ = member;
  486         -
                        todo!("deserialize aggregate")
  487         -
                    });
         481  +
                    builder.manifest_generator = Some(crate::types::JobManifestGenerator::deserialize(deser)?);
  488    482   
                }
  489    483   
                Some(18) => {
  490    484   
                    builder.generated_manifest_descriptor = Some(crate::types::S3GeneratedManifestDescriptor::deserialize(deser)?);
  491    485   
                }
  492    486   
                _ => {}
  493    487   
            }
  494    488   
            Ok(())
  495    489   
        })?;
  496    490   
        Ok(builder.build())
  497    491   
    }
  498    492   
}
         493  +
impl JobDescriptor {
         494  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         495  +
    pub fn deserialize_with_response(
         496  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         497  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         498  +
        _status: u16,
         499  +
        _body: &[u8],
         500  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         501  +
        Self::deserialize(deserializer)
         502  +
    }
         503  +
}
  499    504   
impl JobDescriptor {
  500    505   
    /// Creates a new builder-style object to manufacture [`JobDescriptor`](crate::types::JobDescriptor).
  501    506   
    pub fn builder() -> crate::types::builders::JobDescriptorBuilder {
  502    507   
        crate::types::builders::JobDescriptorBuilder::default()
  503    508   
    }
  504    509   
}
  505    510   
  506    511   
/// A builder for [`JobDescriptor`](crate::types::JobDescriptor).
  507    512   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  508    513   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_failure.rs

@@ -1,1 +122,133 @@
   17     17   
    /// <p>The failure reason, if any, for the specified job.</p>
   18     18   
    pub fn failure_reason(&self) -> ::std::option::Option<&str> {
   19     19   
        self.failure_reason.as_deref()
   20     20   
    }
   21     21   
}
   22     22   
static JOBFAILURE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   23     23   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobFailure", "com.amazonaws.s3control", "JobFailure");
   24     24   
static JOBFAILURE_MEMBER_FAILURE_CODE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   25     25   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobFailure$FailureCode", "com.amazonaws.s3control", "JobFailure"),
   26     26   
    ::aws_smithy_schema::ShapeType::String,
   27         -
    "failure_code",
          27  +
    "FailureCode",
   28     28   
    0,
   29     29   
);
   30     30   
static JOBFAILURE_MEMBER_FAILURE_REASON: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   31     31   
    ::aws_smithy_schema::ShapeId::from_static(
   32     32   
        "com.amazonaws.s3control#JobFailure$FailureReason",
   33     33   
        "com.amazonaws.s3control",
   34     34   
        "JobFailure",
   35     35   
    ),
   36     36   
    ::aws_smithy_schema::ShapeType::String,
   37         -
    "failure_reason",
          37  +
    "FailureReason",
   38     38   
    1,
   39     39   
);
   40     40   
static JOBFAILURE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   41     41   
    JOBFAILURE_SCHEMA_ID,
   42     42   
    ::aws_smithy_schema::ShapeType::Structure,
   43     43   
    &[&JOBFAILURE_MEMBER_FAILURE_CODE, &JOBFAILURE_MEMBER_FAILURE_REASON],
   44     44   
);
   45     45   
impl JobFailure {
   46     46   
    /// The schema for this shape.
   47     47   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBFAILURE_SCHEMA;
   48     48   
}
   49     49   
impl ::aws_smithy_schema::serde::SerializableStruct for JobFailure {
   50     50   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   51     51   
    fn serialize_members(
   52     52   
        &self,
   53     53   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   54     54   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   55     55   
        if let Some(ref val) = self.failure_code {
   56     56   
            ser.write_string(&JOBFAILURE_MEMBER_FAILURE_CODE, val)?;
   57     57   
        }
   58     58   
        if let Some(ref val) = self.failure_reason {
   59     59   
            ser.write_string(&JOBFAILURE_MEMBER_FAILURE_REASON, val)?;
   60     60   
        }
   61     61   
        Ok(())
   62     62   
    }
   63     63   
}
   64     64   
impl JobFailure {
   65     65   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   66         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   67         -
        deserializer: &mut D,
          66  +
    pub fn deserialize(
          67  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   68     68   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   69     69   
        #[allow(unused_variables, unused_mut)]
   70     70   
        let mut builder = Self::builder();
   71     71   
        #[allow(
   72     72   
            unused_variables,
   73     73   
            unreachable_code,
   74     74   
            clippy::single_match,
   75     75   
            clippy::match_single_binding,
   76     76   
            clippy::diverging_sub_expression
   77     77   
        )]
   78         -
        deserializer.read_struct(&JOBFAILURE_SCHEMA, (), |_, member, deser| {
          78  +
        deserializer.read_struct(&JOBFAILURE_SCHEMA, &mut |member, deser| {
   79     79   
            match member.member_index() {
   80     80   
                Some(0) => {
   81     81   
                    builder.failure_code = Some(deser.read_string(member)?);
   82     82   
                }
   83     83   
                Some(1) => {
   84     84   
                    builder.failure_reason = Some(deser.read_string(member)?);
   85     85   
                }
   86     86   
                _ => {}
   87     87   
            }
   88     88   
            Ok(())
   89     89   
        })?;
   90     90   
        Ok(builder.build())
   91     91   
    }
   92     92   
}
          93  +
impl JobFailure {
          94  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          95  +
    pub fn deserialize_with_response(
          96  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          97  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          98  +
        _status: u16,
          99  +
        _body: &[u8],
         100  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         101  +
        Self::deserialize(deserializer)
         102  +
    }
         103  +
}
   93    104   
impl JobFailure {
   94    105   
    /// Creates a new builder-style object to manufacture [`JobFailure`](crate::types::JobFailure).
   95    106   
    pub fn builder() -> crate::types::builders::JobFailureBuilder {
   96    107   
        crate::types::builders::JobFailureBuilder::default()
   97    108   
    }
   98    109   
}
   99    110   
  100    111   
/// A builder for [`JobFailure`](crate::types::JobFailure).
  101    112   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  102    113   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_list_descriptor.rs

@@ -40,40 +271,282 @@
   60     60   
    "com.amazonaws.s3control",
   61     61   
    "JobListDescriptor",
   62     62   
);
   63     63   
static JOBLISTDESCRIPTOR_MEMBER_JOB_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   64     64   
    ::aws_smithy_schema::ShapeId::from_static(
   65     65   
        "com.amazonaws.s3control#JobListDescriptor$JobId",
   66     66   
        "com.amazonaws.s3control",
   67     67   
        "JobListDescriptor",
   68     68   
    ),
   69     69   
    ::aws_smithy_schema::ShapeType::String,
   70         -
    "job_id",
          70  +
    "JobId",
   71     71   
    0,
   72     72   
);
   73     73   
static JOBLISTDESCRIPTOR_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   74     74   
    ::aws_smithy_schema::ShapeId::from_static(
   75     75   
        "com.amazonaws.s3control#JobListDescriptor$Description",
   76     76   
        "com.amazonaws.s3control",
   77     77   
        "JobListDescriptor",
   78     78   
    ),
   79     79   
    ::aws_smithy_schema::ShapeType::String,
   80         -
    "description",
          80  +
    "Description",
   81     81   
    1,
   82     82   
);
   83     83   
static JOBLISTDESCRIPTOR_MEMBER_OPERATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   84     84   
    ::aws_smithy_schema::ShapeId::from_static(
   85     85   
        "com.amazonaws.s3control#JobListDescriptor$Operation",
   86     86   
        "com.amazonaws.s3control",
   87     87   
        "JobListDescriptor",
   88     88   
    ),
   89     89   
    ::aws_smithy_schema::ShapeType::String,
   90         -
    "operation",
          90  +
    "Operation",
   91     91   
    2,
   92     92   
);
   93     93   
static JOBLISTDESCRIPTOR_MEMBER_PRIORITY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   94     94   
    ::aws_smithy_schema::ShapeId::from_static(
   95     95   
        "com.amazonaws.s3control#JobListDescriptor$Priority",
   96     96   
        "com.amazonaws.s3control",
   97     97   
        "JobListDescriptor",
   98     98   
    ),
   99     99   
    ::aws_smithy_schema::ShapeType::Integer,
  100         -
    "priority",
         100  +
    "Priority",
  101    101   
    3,
  102    102   
);
  103    103   
static JOBLISTDESCRIPTOR_MEMBER_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  104    104   
    ::aws_smithy_schema::ShapeId::from_static(
  105    105   
        "com.amazonaws.s3control#JobListDescriptor$Status",
  106    106   
        "com.amazonaws.s3control",
  107    107   
        "JobListDescriptor",
  108    108   
    ),
  109    109   
    ::aws_smithy_schema::ShapeType::String,
  110         -
    "status",
         110  +
    "Status",
  111    111   
    4,
  112    112   
);
  113    113   
static JOBLISTDESCRIPTOR_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  114    114   
    ::aws_smithy_schema::ShapeId::from_static(
  115    115   
        "com.amazonaws.s3control#JobListDescriptor$CreationTime",
  116    116   
        "com.amazonaws.s3control",
  117    117   
        "JobListDescriptor",
  118    118   
    ),
  119    119   
    ::aws_smithy_schema::ShapeType::Timestamp,
  120         -
    "creation_time",
         120  +
    "CreationTime",
  121    121   
    5,
  122    122   
);
  123    123   
static JOBLISTDESCRIPTOR_MEMBER_TERMINATION_DATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  124    124   
    ::aws_smithy_schema::ShapeId::from_static(
  125    125   
        "com.amazonaws.s3control#JobListDescriptor$TerminationDate",
  126    126   
        "com.amazonaws.s3control",
  127    127   
        "JobListDescriptor",
  128    128   
    ),
  129    129   
    ::aws_smithy_schema::ShapeType::Timestamp,
  130         -
    "termination_date",
         130  +
    "TerminationDate",
  131    131   
    6,
  132    132   
);
  133    133   
static JOBLISTDESCRIPTOR_MEMBER_PROGRESS_SUMMARY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  134    134   
    ::aws_smithy_schema::ShapeId::from_static(
  135    135   
        "com.amazonaws.s3control#JobListDescriptor$ProgressSummary",
  136    136   
        "com.amazonaws.s3control",
  137    137   
        "JobListDescriptor",
  138    138   
    ),
  139    139   
    ::aws_smithy_schema::ShapeType::Structure,
  140         -
    "progress_summary",
         140  +
    "ProgressSummary",
  141    141   
    7,
  142    142   
);
  143    143   
static JOBLISTDESCRIPTOR_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  144    144   
    JOBLISTDESCRIPTOR_SCHEMA_ID,
  145    145   
    ::aws_smithy_schema::ShapeType::Structure,
  146    146   
    &[
  147    147   
        &JOBLISTDESCRIPTOR_MEMBER_JOB_ID,
  148    148   
        &JOBLISTDESCRIPTOR_MEMBER_DESCRIPTION,
  149    149   
        &JOBLISTDESCRIPTOR_MEMBER_OPERATION,
  150    150   
        &JOBLISTDESCRIPTOR_MEMBER_PRIORITY,
  151    151   
        &JOBLISTDESCRIPTOR_MEMBER_STATUS,
  152    152   
        &JOBLISTDESCRIPTOR_MEMBER_CREATION_TIME,
  153    153   
        &JOBLISTDESCRIPTOR_MEMBER_TERMINATION_DATE,
  154    154   
        &JOBLISTDESCRIPTOR_MEMBER_PROGRESS_SUMMARY,
  155    155   
    ],
  156    156   
);
  157    157   
impl JobListDescriptor {
  158    158   
    /// The schema for this shape.
  159    159   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBLISTDESCRIPTOR_SCHEMA;
  160    160   
}
  161    161   
impl ::aws_smithy_schema::serde::SerializableStruct for JobListDescriptor {
  162    162   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  163    163   
    fn serialize_members(
  164    164   
        &self,
  165    165   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  166    166   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  167    167   
        if let Some(ref val) = self.job_id {
  168    168   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_JOB_ID, val)?;
  169    169   
        }
  170    170   
        if let Some(ref val) = self.description {
  171    171   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_DESCRIPTION, val)?;
  172    172   
        }
  173    173   
        if let Some(ref val) = self.operation {
  174    174   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_OPERATION, val.as_str())?;
  175    175   
        }
  176    176   
        {
  177    177   
            let val = &self.priority;
  178    178   
            ser.write_integer(&JOBLISTDESCRIPTOR_MEMBER_PRIORITY, *val)?;
  179    179   
        }
  180    180   
        if let Some(ref val) = self.status {
  181    181   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_STATUS, val.as_str())?;
  182    182   
        }
  183    183   
        if let Some(ref val) = self.creation_time {
  184    184   
            ser.write_timestamp(&JOBLISTDESCRIPTOR_MEMBER_CREATION_TIME, val)?;
  185    185   
        }
  186    186   
        if let Some(ref val) = self.termination_date {
  187    187   
            ser.write_timestamp(&JOBLISTDESCRIPTOR_MEMBER_TERMINATION_DATE, val)?;
  188    188   
        }
  189    189   
        if let Some(ref val) = self.progress_summary {
  190    190   
            ser.write_struct(&JOBLISTDESCRIPTOR_MEMBER_PROGRESS_SUMMARY, val)?;
  191    191   
        }
  192    192   
        Ok(())
  193    193   
    }
  194    194   
}
  195    195   
impl JobListDescriptor {
  196    196   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  197         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  198         -
        deserializer: &mut D,
         197  +
    pub fn deserialize(
         198  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  199    199   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  200    200   
        #[allow(unused_variables, unused_mut)]
  201    201   
        let mut builder = Self::builder();
  202    202   
        #[allow(
  203    203   
            unused_variables,
  204    204   
            unreachable_code,
  205    205   
            clippy::single_match,
  206    206   
            clippy::match_single_binding,
  207    207   
            clippy::diverging_sub_expression
  208    208   
        )]
  209         -
        deserializer.read_struct(&JOBLISTDESCRIPTOR_SCHEMA, (), |_, member, deser| {
         209  +
        deserializer.read_struct(&JOBLISTDESCRIPTOR_SCHEMA, &mut |member, deser| {
  210    210   
            match member.member_index() {
  211    211   
                Some(0) => {
  212    212   
                    builder.job_id = Some(deser.read_string(member)?);
  213    213   
                }
  214    214   
                Some(1) => {
  215    215   
                    builder.description = Some(deser.read_string(member)?);
  216    216   
                }
  217    217   
                Some(2) => {
  218    218   
                    builder.operation = Some(crate::types::OperationName::from(deser.read_string(member)?.as_str()));
  219    219   
                }
  220    220   
                Some(3) => {
  221    221   
                    builder.priority = Some(deser.read_integer(member)?);
  222    222   
                }
  223    223   
                Some(4) => {
  224    224   
                    builder.status = Some(crate::types::JobStatus::from(deser.read_string(member)?.as_str()));
  225    225   
                }
  226    226   
                Some(5) => {
  227    227   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  228    228   
                }
  229    229   
                Some(6) => {
  230    230   
                    builder.termination_date = Some(deser.read_timestamp(member)?);
  231    231   
                }
  232    232   
                Some(7) => {
  233    233   
                    builder.progress_summary = Some(crate::types::JobProgressSummary::deserialize(deser)?);
  234    234   
                }
  235    235   
                _ => {}
  236    236   
            }
  237    237   
            Ok(())
  238    238   
        })?;
  239    239   
        Ok(builder.build())
  240    240   
    }
  241    241   
}
         242  +
impl JobListDescriptor {
         243  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         244  +
    pub fn deserialize_with_response(
         245  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         246  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         247  +
        _status: u16,
         248  +
        _body: &[u8],
         249  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         250  +
        Self::deserialize(deserializer)
         251  +
    }
         252  +
}
  242    253   
impl JobListDescriptor {
  243    254   
    /// Creates a new builder-style object to manufacture [`JobListDescriptor`](crate::types::JobListDescriptor).
  244    255   
    pub fn builder() -> crate::types::builders::JobListDescriptorBuilder {
  245    256   
        crate::types::builders::JobListDescriptorBuilder::default()
  246    257   
    }
  247    258   
}
  248    259   
  249    260   
/// A builder for [`JobListDescriptor`](crate::types::JobListDescriptor).
  250    261   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  251    262   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest.rs

@@ -1,1 +118,129 @@
   17     17   
    /// <p>Contains the information required to locate the specified job's manifest. Manifests can't be imported from directory buckets. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html">Directory buckets</a>.</p>
   18     18   
    pub fn location(&self) -> ::std::option::Option<&crate::types::JobManifestLocation> {
   19     19   
        self.location.as_ref()
   20     20   
    }
   21     21   
}
   22     22   
static JOBMANIFEST_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   23     23   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifest", "com.amazonaws.s3control", "JobManifest");
   24     24   
static JOBMANIFEST_MEMBER_SPEC: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   25     25   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifest$Spec", "com.amazonaws.s3control", "JobManifest"),
   26     26   
    ::aws_smithy_schema::ShapeType::Structure,
   27         -
    "spec",
          27  +
    "Spec",
   28     28   
    0,
   29     29   
);
   30     30   
static JOBMANIFEST_MEMBER_LOCATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   31     31   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifest$Location", "com.amazonaws.s3control", "JobManifest"),
   32     32   
    ::aws_smithy_schema::ShapeType::Structure,
   33         -
    "location",
          33  +
    "Location",
   34     34   
    1,
   35     35   
);
   36     36   
static JOBMANIFEST_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   37     37   
    JOBMANIFEST_SCHEMA_ID,
   38     38   
    ::aws_smithy_schema::ShapeType::Structure,
   39     39   
    &[&JOBMANIFEST_MEMBER_SPEC, &JOBMANIFEST_MEMBER_LOCATION],
   40     40   
);
   41     41   
impl JobManifest {
   42     42   
    /// The schema for this shape.
   43     43   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFEST_SCHEMA;
   44     44   
}
   45     45   
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifest {
   46     46   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   47     47   
    fn serialize_members(
   48     48   
        &self,
   49     49   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   50     50   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   51     51   
        if let Some(ref val) = self.spec {
   52     52   
            ser.write_struct(&JOBMANIFEST_MEMBER_SPEC, val)?;
   53     53   
        }
   54     54   
        if let Some(ref val) = self.location {
   55     55   
            ser.write_struct(&JOBMANIFEST_MEMBER_LOCATION, val)?;
   56     56   
        }
   57     57   
        Ok(())
   58     58   
    }
   59     59   
}
   60     60   
impl JobManifest {
   61     61   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   62         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   63         -
        deserializer: &mut D,
          62  +
    pub fn deserialize(
          63  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   64     64   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   65     65   
        #[allow(unused_variables, unused_mut)]
   66     66   
        let mut builder = Self::builder();
   67     67   
        #[allow(
   68     68   
            unused_variables,
   69     69   
            unreachable_code,
   70     70   
            clippy::single_match,
   71     71   
            clippy::match_single_binding,
   72     72   
            clippy::diverging_sub_expression
   73     73   
        )]
   74         -
        deserializer.read_struct(&JOBMANIFEST_SCHEMA, (), |_, member, deser| {
          74  +
        deserializer.read_struct(&JOBMANIFEST_SCHEMA, &mut |member, deser| {
   75     75   
            match member.member_index() {
   76     76   
                Some(0) => {
   77     77   
                    builder.spec = Some(crate::types::JobManifestSpec::deserialize(deser)?);
   78     78   
                }
   79     79   
                Some(1) => {
   80     80   
                    builder.location = Some(crate::types::JobManifestLocation::deserialize(deser)?);
   81     81   
                }
   82     82   
                _ => {}
   83     83   
            }
   84     84   
            Ok(())
   85     85   
        })?;
   86     86   
        Ok(builder.build())
   87     87   
    }
   88     88   
}
          89  +
impl JobManifest {
          90  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          91  +
    pub fn deserialize_with_response(
          92  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          93  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          94  +
        _status: u16,
          95  +
        _body: &[u8],
          96  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          97  +
        Self::deserialize(deserializer)
          98  +
    }
          99  +
}
   89    100   
impl JobManifest {
   90    101   
    /// Creates a new builder-style object to manufacture [`JobManifest`](crate::types::JobManifest).
   91    102   
    pub fn builder() -> crate::types::builders::JobManifestBuilder {
   92    103   
        crate::types::builders::JobManifestBuilder::default()
   93    104   
    }
   94    105   
}
   95    106   
   96    107   
/// A builder for [`JobManifest`](crate::types::JobManifest).
   97    108   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   98    109   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_generator.rs

@@ -9,9 +0,94 @@
   29     29   
    }
   30     30   
    /// Returns true if this is a [`S3JobManifestGenerator`](crate::types::JobManifestGenerator::S3JobManifestGenerator).
   31     31   
    pub fn is_s3_job_manifest_generator(&self) -> bool {
   32     32   
        self.as_s3_job_manifest_generator().is_ok()
   33     33   
    }
   34     34   
    /// Returns true if the enum instance is the `Unknown` variant.
   35     35   
    pub fn is_unknown(&self) -> bool {
   36     36   
        matches!(self, Self::Unknown)
   37     37   
    }
   38     38   
}
          39  +
static JOBMANIFESTGENERATOR_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
          40  +
    "com.amazonaws.s3control#JobManifestGenerator",
          41  +
    "com.amazonaws.s3control",
          42  +
    "JobManifestGenerator",
          43  +
);
          44  +
static JOBMANIFESTGENERATOR_MEMBER_S3JOBMANIFESTGENERATOR: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          45  +
    ::aws_smithy_schema::ShapeId::from_static(
          46  +
        "com.amazonaws.s3control#JobManifestGenerator$S3JobManifestGenerator",
          47  +
        "com.amazonaws.s3control",
          48  +
        "JobManifestGenerator",
          49  +
    ),
          50  +
    ::aws_smithy_schema::ShapeType::Structure,
          51  +
    "S3JobManifestGenerator",
          52  +
    0,
          53  +
);
          54  +
static JOBMANIFESTGENERATOR_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          55  +
    JOBMANIFESTGENERATOR_SCHEMA_ID,
          56  +
    ::aws_smithy_schema::ShapeType::Union,
          57  +
    &[&JOBMANIFESTGENERATOR_MEMBER_S3JOBMANIFESTGENERATOR],
          58  +
);
          59  +
impl JobManifestGenerator {
          60  +
    /// The schema for this shape.
          61  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFESTGENERATOR_SCHEMA;
          62  +
}
          63  +
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifestGenerator {
          64  +
    #[allow(unused_variables, clippy::diverging_sub_expression)]
          65  +
    fn serialize_members(
          66  +
        &self,
          67  +
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
          68  +
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
          69  +
        match self {
          70  +
            Self::S3JobManifestGenerator(val) => {
          71  +
                ser.write_struct(&JOBMANIFESTGENERATOR_MEMBER_S3JOBMANIFESTGENERATOR, val)?;
          72  +
            }
          73  +
            Self::Unknown => return Err(::aws_smithy_schema::serde::SerdeError::custom("cannot serialize unknown union variant")),
          74  +
        }
          75  +
        Ok(())
          76  +
    }
          77  +
}
          78  +
impl JobManifestGenerator {
          79  +
    /// Deserializes this union from a [`ShapeDeserializer`].
          80  +
    pub fn deserialize(
          81  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          82  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          83  +
        let mut result: ::std::option::Option<Self> = ::std::option::Option::None;
          84  +
        #[allow(unused_variables, unreachable_code, clippy::single_match, clippy::match_single_binding)]
          85  +
        deserializer.read_struct(&JOBMANIFESTGENERATOR_SCHEMA, &mut |member, deser| {
          86  +
            result = ::std::option::Option::Some(match member.member_index() {
          87  +
                Some(0) => Self::S3JobManifestGenerator(crate::types::S3JobManifestGenerator::deserialize(deser)?),
          88  +
                _ => Self::Unknown,
          89  +
            });
          90  +
            Ok(())
          91  +
        })?;
          92  +
        result.ok_or_else(|| ::aws_smithy_schema::serde::SerdeError::custom("expected a union variant"))
          93  +
    }
          94  +
}

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_generator_filter.rs

@@ -52,52 +192,192 @@
   72     72   
    "com.amazonaws.s3control",
   73     73   
    "JobManifestGeneratorFilter",
   74     74   
);
   75     75   
static JOBMANIFESTGENERATORFILTER_MEMBER_ELIGIBLE_FOR_REPLICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   76     76   
    ::aws_smithy_schema::ShapeId::from_static(
   77     77   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$EligibleForReplication",
   78     78   
        "com.amazonaws.s3control",
   79     79   
        "JobManifestGeneratorFilter",
   80     80   
    ),
   81     81   
    ::aws_smithy_schema::ShapeType::Boolean,
   82         -
    "eligible_for_replication",
          82  +
    "EligibleForReplication",
   83     83   
    0,
   84     84   
);
   85     85   
static JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_AFTER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   86     86   
    ::aws_smithy_schema::ShapeId::from_static(
   87     87   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$CreatedAfter",
   88     88   
        "com.amazonaws.s3control",
   89     89   
        "JobManifestGeneratorFilter",
   90     90   
    ),
   91     91   
    ::aws_smithy_schema::ShapeType::Timestamp,
   92         -
    "created_after",
          92  +
    "CreatedAfter",
   93     93   
    1,
   94     94   
);
   95     95   
static JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_BEFORE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   96     96   
    ::aws_smithy_schema::ShapeId::from_static(
   97     97   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$CreatedBefore",
   98     98   
        "com.amazonaws.s3control",
   99     99   
        "JobManifestGeneratorFilter",
  100    100   
    ),
  101    101   
    ::aws_smithy_schema::ShapeType::Timestamp,
  102         -
    "created_before",
         102  +
    "CreatedBefore",
  103    103   
    2,
  104    104   
);
  105    105   
static JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_REPLICATION_STATUSES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  106    106   
    ::aws_smithy_schema::ShapeId::from_static(
  107    107   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$ObjectReplicationStatuses",
  108    108   
        "com.amazonaws.s3control",
  109    109   
        "JobManifestGeneratorFilter",
  110    110   
    ),
  111    111   
    ::aws_smithy_schema::ShapeType::List,
  112         -
    "object_replication_statuses",
         112  +
    "ObjectReplicationStatuses",
  113    113   
    3,
  114    114   
);
  115    115   
static JOBMANIFESTGENERATORFILTER_MEMBER_KEY_NAME_CONSTRAINT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  116    116   
    ::aws_smithy_schema::ShapeId::from_static(
  117    117   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$KeyNameConstraint",
  118    118   
        "com.amazonaws.s3control",
  119    119   
        "JobManifestGeneratorFilter",
  120    120   
    ),
  121    121   
    ::aws_smithy_schema::ShapeType::Structure,
  122         -
    "key_name_constraint",
         122  +
    "KeyNameConstraint",
  123    123   
    4,
  124    124   
);
  125    125   
static JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_SIZE_GREATER_THAN_BYTES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  126    126   
    ::aws_smithy_schema::ShapeId::from_static(
  127    127   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$ObjectSizeGreaterThanBytes",
  128    128   
        "com.amazonaws.s3control",
  129    129   
        "JobManifestGeneratorFilter",
  130    130   
    ),
  131    131   
    ::aws_smithy_schema::ShapeType::Long,
  132         -
    "object_size_greater_than_bytes",
         132  +
    "ObjectSizeGreaterThanBytes",
  133    133   
    5,
  134    134   
);
  135    135   
static JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_SIZE_LESS_THAN_BYTES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  136    136   
    ::aws_smithy_schema::ShapeId::from_static(
  137    137   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$ObjectSizeLessThanBytes",
  138    138   
        "com.amazonaws.s3control",
  139    139   
        "JobManifestGeneratorFilter",
  140    140   
    ),
  141    141   
    ::aws_smithy_schema::ShapeType::Long,
  142         -
    "object_size_less_than_bytes",
         142  +
    "ObjectSizeLessThanBytes",
  143    143   
    6,
  144    144   
);
  145    145   
static JOBMANIFESTGENERATORFILTER_MEMBER_MATCH_ANY_STORAGE_CLASS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  146    146   
    ::aws_smithy_schema::ShapeId::from_static(
  147    147   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$MatchAnyStorageClass",
  148    148   
        "com.amazonaws.s3control",
  149    149   
        "JobManifestGeneratorFilter",
  150    150   
    ),
  151    151   
    ::aws_smithy_schema::ShapeType::List,
  152         -
    "match_any_storage_class",
         152  +
    "MatchAnyStorageClass",
  153    153   
    7,
  154    154   
);
  155    155   
static JOBMANIFESTGENERATORFILTER_MEMBER_MATCH_ANY_OBJECT_ENCRYPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  156    156   
    ::aws_smithy_schema::ShapeId::from_static(
  157    157   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$MatchAnyObjectEncryption",
  158    158   
        "com.amazonaws.s3control",
  159    159   
        "JobManifestGeneratorFilter",
  160    160   
    ),
  161    161   
    ::aws_smithy_schema::ShapeType::List,
  162         -
    "match_any_object_encryption",
         162  +
    "MatchAnyObjectEncryption",
  163    163   
    8,
  164    164   
);
  165    165   
static JOBMANIFESTGENERATORFILTER_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  166    166   
    JOBMANIFESTGENERATORFILTER_SCHEMA_ID,
  167    167   
    ::aws_smithy_schema::ShapeType::Structure,
  168    168   
    &[
  169    169   
        &JOBMANIFESTGENERATORFILTER_MEMBER_ELIGIBLE_FOR_REPLICATION,
  170    170   
        &JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_AFTER,
  171    171   
        &JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_BEFORE,
  172    172   
        &JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_REPLICATION_STATUSES,
@@ -205,205 +353,355 @@
  225    225   
                    }
  226    226   
                    Ok(())
  227    227   
                },
  228    228   
            )?;
  229    229   
        }
  230    230   
        if let Some(ref val) = self.match_any_object_encryption {
  231    231   
            ser.write_list(
  232    232   
                &JOBMANIFESTGENERATORFILTER_MEMBER_MATCH_ANY_OBJECT_ENCRYPTION,
  233    233   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  234    234   
                    for item in val {
  235         -
                        todo!("schema: unsupported list element type");
         235  +
                        ser.write_struct(crate::types::ObjectEncryptionFilter::SCHEMA, item)?;
  236    236   
                    }
  237    237   
                    Ok(())
  238    238   
                },
  239    239   
            )?;
  240    240   
        }
  241    241   
        Ok(())
  242    242   
    }
  243    243   
}
  244    244   
impl JobManifestGeneratorFilter {
  245    245   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  246         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  247         -
        deserializer: &mut D,
         246  +
    pub fn deserialize(
         247  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  248    248   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  249    249   
        #[allow(unused_variables, unused_mut)]
  250    250   
        let mut builder = Self::builder();
  251    251   
        #[allow(
  252    252   
            unused_variables,
  253    253   
            unreachable_code,
  254    254   
            clippy::single_match,
  255    255   
            clippy::match_single_binding,
  256    256   
            clippy::diverging_sub_expression
  257    257   
        )]
  258         -
        deserializer.read_struct(&JOBMANIFESTGENERATORFILTER_SCHEMA, (), |_, member, deser| {
         258  +
        deserializer.read_struct(&JOBMANIFESTGENERATORFILTER_SCHEMA, &mut |member, deser| {
  259    259   
            match member.member_index() {
  260    260   
                Some(0) => {
  261    261   
                    builder.eligible_for_replication = Some(deser.read_boolean(member)?);
  262    262   
                }
  263    263   
                Some(1) => {
  264    264   
                    builder.created_after = Some(deser.read_timestamp(member)?);
  265    265   
                }
  266    266   
                Some(2) => {
  267    267   
                    builder.created_before = Some(deser.read_timestamp(member)?);
  268    268   
                }
  269    269   
                Some(3) => {
  270    270   
                    builder.object_replication_statuses = Some({
  271         -
                        let container = if let Some(cap) = deser.container_size() {
  272         -
                            Vec::with_capacity(cap)
  273         -
                        } else {
  274         -
                            Vec::new()
  275         -
                        };
  276         -
                        deser.read_list(member, container, |mut list, deser| {
  277         -
                            list.push(crate::types::ReplicationStatus::from(deser.read_string(member)?.as_str()));
  278         -
                            Ok(list)
  279         -
                        })?
         271  +
                        let mut container = Vec::new();
         272  +
                        deser.read_list(member, &mut |deser| {
         273  +
                            container.push(crate::types::ReplicationStatus::from(deser.read_string(member)?.as_str()));
         274  +
                            Ok(())
         275  +
                        })?;
         276  +
                        container
  280    277   
                    });
  281    278   
                }
  282    279   
                Some(4) => {
  283    280   
                    builder.key_name_constraint = Some(crate::types::KeyNameConstraint::deserialize(deser)?);
  284    281   
                }
  285    282   
                Some(5) => {
  286    283   
                    builder.object_size_greater_than_bytes = Some(deser.read_long(member)?);
  287    284   
                }
  288    285   
                Some(6) => {
  289    286   
                    builder.object_size_less_than_bytes = Some(deser.read_long(member)?);
  290    287   
                }
  291    288   
                Some(7) => {
  292    289   
                    builder.match_any_storage_class = Some({
  293         -
                        let container = if let Some(cap) = deser.container_size() {
  294         -
                            Vec::with_capacity(cap)
  295         -
                        } else {
  296         -
                            Vec::new()
  297         -
                        };
  298         -
                        deser.read_list(member, container, |mut list, deser| {
  299         -
                            list.push(crate::types::S3StorageClass::from(deser.read_string(member)?.as_str()));
  300         -
                            Ok(list)
  301         -
                        })?
         290  +
                        let mut container = Vec::new();
         291  +
                        deser.read_list(member, &mut |deser| {
         292  +
                            container.push(crate::types::S3StorageClass::from(deser.read_string(member)?.as_str()));
         293  +
                            Ok(())
         294  +
                        })?;
         295  +
                        container
  302    296   
                    });
  303    297   
                }
  304    298   
                Some(8) => {
  305    299   
                    builder.match_any_object_encryption = Some({
  306         -
                        let container = if let Some(cap) = deser.container_size() {
  307         -
                            Vec::with_capacity(cap)
  308         -
                        } else {
  309         -
                            Vec::new()
  310         -
                        };
  311         -
                        deser.read_list(member, container, |mut list, deser| {
  312         -
                            list.push(todo!("deserialize nested aggregate"));
  313         -
                            Ok(list)
  314         -
                        })?
         300  +
                        let mut container = Vec::new();
         301  +
                        deser.read_list(member, &mut |deser| {
         302  +
                            container.push(crate::types::ObjectEncryptionFilter::deserialize(deser)?);
         303  +
                            Ok(())
         304  +
                        })?;
         305  +
                        container
  315    306   
                    });
  316    307   
                }
  317    308   
                _ => {}
  318    309   
            }
  319    310   
            Ok(())
  320    311   
        })?;
  321    312   
        Ok(builder.build())
  322    313   
    }
  323    314   
}
         315  +
impl JobManifestGeneratorFilter {
         316  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         317  +
    pub fn deserialize_with_response(
         318  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         319  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         320  +
        _status: u16,
         321  +
        _body: &[u8],
         322  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         323  +
        Self::deserialize(deserializer)
         324  +
    }
         325  +
}
  324    326   
impl JobManifestGeneratorFilter {
  325    327   
    /// Creates a new builder-style object to manufacture [`JobManifestGeneratorFilter`](crate::types::JobManifestGeneratorFilter).
  326    328   
    pub fn builder() -> crate::types::builders::JobManifestGeneratorFilterBuilder {
  327    329   
        crate::types::builders::JobManifestGeneratorFilterBuilder::default()
  328    330   
    }
  329    331   
}
  330    332   
  331    333   
/// A builder for [`JobManifestGeneratorFilter`](crate::types::JobManifestGeneratorFilter).
  332    334   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  333    335   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_location.rs

@@ -16,16 +165,178 @@
   36     36   
    "com.amazonaws.s3control",
   37     37   
    "JobManifestLocation",
   38     38   
);
   39     39   
static JOBMANIFESTLOCATION_MEMBER_OBJECT_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   40     40   
    ::aws_smithy_schema::ShapeId::from_static(
   41     41   
        "com.amazonaws.s3control#JobManifestLocation$ObjectArn",
   42     42   
        "com.amazonaws.s3control",
   43     43   
        "JobManifestLocation",
   44     44   
    ),
   45     45   
    ::aws_smithy_schema::ShapeType::String,
   46         -
    "object_arn",
          46  +
    "ObjectArn",
   47     47   
    0,
   48     48   
);
   49     49   
static JOBMANIFESTLOCATION_MEMBER_OBJECT_VERSION_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   50     50   
    ::aws_smithy_schema::ShapeId::from_static(
   51     51   
        "com.amazonaws.s3control#JobManifestLocation$ObjectVersionId",
   52     52   
        "com.amazonaws.s3control",
   53     53   
        "JobManifestLocation",
   54     54   
    ),
   55     55   
    ::aws_smithy_schema::ShapeType::String,
   56         -
    "object_version_id",
          56  +
    "ObjectVersionId",
   57     57   
    1,
   58     58   
);
   59     59   
static JOBMANIFESTLOCATION_MEMBER_E_TAG: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   60     60   
    ::aws_smithy_schema::ShapeId::from_static(
   61     61   
        "com.amazonaws.s3control#JobManifestLocation$ETag",
   62     62   
        "com.amazonaws.s3control",
   63     63   
        "JobManifestLocation",
   64     64   
    ),
   65     65   
    ::aws_smithy_schema::ShapeType::String,
   66         -
    "e_tag",
          66  +
    "ETag",
   67     67   
    2,
   68     68   
);
   69     69   
static JOBMANIFESTLOCATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   70     70   
    JOBMANIFESTLOCATION_SCHEMA_ID,
   71     71   
    ::aws_smithy_schema::ShapeType::Structure,
   72     72   
    &[
   73     73   
        &JOBMANIFESTLOCATION_MEMBER_OBJECT_ARN,
   74     74   
        &JOBMANIFESTLOCATION_MEMBER_OBJECT_VERSION_ID,
   75     75   
        &JOBMANIFESTLOCATION_MEMBER_E_TAG,
   76     76   
    ],
   77     77   
);
   78     78   
impl JobManifestLocation {
   79     79   
    /// The schema for this shape.
   80     80   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFESTLOCATION_SCHEMA;
   81     81   
}
   82     82   
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifestLocation {
   83     83   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   84     84   
    fn serialize_members(
   85     85   
        &self,
   86     86   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   87     87   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   88     88   
        {
   89     89   
            let val = &self.object_arn;
   90     90   
            ser.write_string(&JOBMANIFESTLOCATION_MEMBER_OBJECT_ARN, val)?;
   91     91   
        }
   92     92   
        if let Some(ref val) = self.object_version_id {
   93     93   
            ser.write_string(&JOBMANIFESTLOCATION_MEMBER_OBJECT_VERSION_ID, val)?;
   94     94   
        }
   95     95   
        {
   96     96   
            let val = &self.e_tag;
   97     97   
            ser.write_string(&JOBMANIFESTLOCATION_MEMBER_E_TAG, val)?;
   98     98   
        }
   99     99   
        Ok(())
  100    100   
    }
  101    101   
}
  102    102   
impl JobManifestLocation {
  103    103   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  104         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  105         -
        deserializer: &mut D,
         104  +
    pub fn deserialize(
         105  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  106    106   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  107    107   
        #[allow(unused_variables, unused_mut)]
  108    108   
        let mut builder = Self::builder();
  109    109   
        #[allow(
  110    110   
            unused_variables,
  111    111   
            unreachable_code,
  112    112   
            clippy::single_match,
  113    113   
            clippy::match_single_binding,
  114    114   
            clippy::diverging_sub_expression
  115    115   
        )]
  116         -
        deserializer.read_struct(&JOBMANIFESTLOCATION_SCHEMA, (), |_, member, deser| {
         116  +
        deserializer.read_struct(&JOBMANIFESTLOCATION_SCHEMA, &mut |member, deser| {
  117    117   
            match member.member_index() {
  118    118   
                Some(0) => {
  119    119   
                    builder.object_arn = Some(deser.read_string(member)?);
  120    120   
                }
  121    121   
                Some(1) => {
  122    122   
                    builder.object_version_id = Some(deser.read_string(member)?);
  123    123   
                }
  124    124   
                Some(2) => {
  125    125   
                    builder.e_tag = Some(deser.read_string(member)?);
  126    126   
                }
  127    127   
                _ => {}
  128    128   
            }
  129    129   
            Ok(())
  130    130   
        })?;
         131  +
        builder.object_arn = builder.object_arn.or(Some(String::new()));
         132  +
        builder.e_tag = builder.e_tag.or(Some(String::new()));
  131    133   
        builder
  132    134   
            .build()
  133    135   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  134    136   
    }
  135    137   
}
         138  +
impl JobManifestLocation {
         139  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         140  +
    pub fn deserialize_with_response(
         141  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         142  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         143  +
        _status: u16,
         144  +
        _body: &[u8],
         145  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         146  +
        Self::deserialize(deserializer)
         147  +
    }
         148  +
}
  136    149   
impl JobManifestLocation {
  137    150   
    /// Creates a new builder-style object to manufacture [`JobManifestLocation`](crate::types::JobManifestLocation).
  138    151   
    pub fn builder() -> crate::types::builders::JobManifestLocationBuilder {
  139    152   
        crate::types::builders::JobManifestLocationBuilder::default()
  140    153   
    }
  141    154   
}
  142    155   
  143    156   
/// A builder for [`JobManifestLocation`](crate::types::JobManifestLocation).
  144    157   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  145    158   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_spec.rs

@@ -3,3 +149,157 @@
   23     23   
}
   24     24   
static JOBMANIFESTSPEC_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   25     25   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifestSpec", "com.amazonaws.s3control", "JobManifestSpec");
   26     26   
static JOBMANIFESTSPEC_MEMBER_FORMAT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   27     27   
    ::aws_smithy_schema::ShapeId::from_static(
   28     28   
        "com.amazonaws.s3control#JobManifestSpec$Format",
   29     29   
        "com.amazonaws.s3control",
   30     30   
        "JobManifestSpec",
   31     31   
    ),
   32     32   
    ::aws_smithy_schema::ShapeType::String,
   33         -
    "format",
          33  +
    "Format",
   34     34   
    0,
   35     35   
);
   36     36   
static JOBMANIFESTSPEC_MEMBER_FIELDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   37     37   
    ::aws_smithy_schema::ShapeId::from_static(
   38     38   
        "com.amazonaws.s3control#JobManifestSpec$Fields",
   39     39   
        "com.amazonaws.s3control",
   40     40   
        "JobManifestSpec",
   41     41   
    ),
   42     42   
    ::aws_smithy_schema::ShapeType::List,
   43         -
    "fields",
          43  +
    "Fields",
   44     44   
    1,
   45     45   
);
   46     46   
static JOBMANIFESTSPEC_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   47     47   
    JOBMANIFESTSPEC_SCHEMA_ID,
   48     48   
    ::aws_smithy_schema::ShapeType::Structure,
   49     49   
    &[&JOBMANIFESTSPEC_MEMBER_FORMAT, &JOBMANIFESTSPEC_MEMBER_FIELDS],
   50     50   
);
   51     51   
impl JobManifestSpec {
   52     52   
    /// The schema for this shape.
   53     53   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFESTSPEC_SCHEMA;
   54     54   
}
   55     55   
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifestSpec {
   56     56   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   57     57   
    fn serialize_members(
   58     58   
        &self,
   59     59   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   60     60   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   61     61   
        {
   62     62   
            let val = &self.format;
   63     63   
            ser.write_string(&JOBMANIFESTSPEC_MEMBER_FORMAT, val.as_str())?;
   64     64   
        }
   65     65   
        if let Some(ref val) = self.fields {
   66     66   
            ser.write_list(
   67     67   
                &JOBMANIFESTSPEC_MEMBER_FIELDS,
   68     68   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   69     69   
                    for item in val {
   70     70   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item.as_str())?;
   71     71   
                    }
   72     72   
                    Ok(())
   73     73   
                },
   74     74   
            )?;
   75     75   
        }
   76     76   
        Ok(())
   77     77   
    }
   78     78   
}
   79     79   
impl JobManifestSpec {
   80     80   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   81         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   82         -
        deserializer: &mut D,
          81  +
    pub fn deserialize(
          82  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   83     83   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   84     84   
        #[allow(unused_variables, unused_mut)]
   85     85   
        let mut builder = Self::builder();
   86     86   
        #[allow(
   87     87   
            unused_variables,
   88     88   
            unreachable_code,
   89     89   
            clippy::single_match,
   90     90   
            clippy::match_single_binding,
   91     91   
            clippy::diverging_sub_expression
   92     92   
        )]
   93         -
        deserializer.read_struct(&JOBMANIFESTSPEC_SCHEMA, (), |_, member, deser| {
          93  +
        deserializer.read_struct(&JOBMANIFESTSPEC_SCHEMA, &mut |member, deser| {
   94     94   
            match member.member_index() {
   95     95   
                Some(0) => {
   96     96   
                    builder.format = Some(crate::types::JobManifestFormat::from(deser.read_string(member)?.as_str()));
   97     97   
                }
   98     98   
                Some(1) => {
   99     99   
                    builder.fields = Some({
  100         -
                        let container = if let Some(cap) = deser.container_size() {
  101         -
                            Vec::with_capacity(cap)
  102         -
                        } else {
  103         -
                            Vec::new()
  104         -
                        };
  105         -
                        deser.read_list(member, container, |mut list, deser| {
  106         -
                            list.push(crate::types::JobManifestFieldName::from(deser.read_string(member)?.as_str()));
  107         -
                            Ok(list)
  108         -
                        })?
         100  +
                        let mut container = Vec::new();
         101  +
                        deser.read_list(member, &mut |deser| {
         102  +
                            container.push(crate::types::JobManifestFieldName::from(deser.read_string(member)?.as_str()));
         103  +
                            Ok(())
         104  +
                        })?;
         105  +
                        container
  109    106   
                    });
  110    107   
                }
  111    108   
                _ => {}
  112    109   
            }
  113    110   
            Ok(())
  114    111   
        })?;
  115    112   
        builder
  116    113   
            .build()
  117    114   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  118    115   
    }
  119    116   
}
         117  +
impl JobManifestSpec {
         118  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         119  +
    pub fn deserialize_with_response(
         120  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         121  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         122  +
        _status: u16,
         123  +
        _body: &[u8],
         124  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         125  +
        Self::deserialize(deserializer)
         126  +
    }
         127  +
}
  120    128   
impl JobManifestSpec {
  121    129   
    /// Creates a new builder-style object to manufacture [`JobManifestSpec`](crate::types::JobManifestSpec).
  122    130   
    pub fn builder() -> crate::types::builders::JobManifestSpecBuilder {
  123    131   
        crate::types::builders::JobManifestSpecBuilder::default()
  124    132   
    }
  125    133   
}
  126    134   
  127    135   
/// A builder for [`JobManifestSpec`](crate::types::JobManifestSpec).
  128    136   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  129    137   
#[non_exhaustive]