AWS SDK

AWS SDK

rev. 32b1b3c3761061baed26023be3219639e42d7d12 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_lifecycle_configuration/_put_bucket_lifecycle_configuration_output.rs

@@ -1,1 +83,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct PutBucketLifecycleConfigurationOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.s3control.synthetic#PutBucketLifecycleConfigurationOutput",
   10     10   
    "com.amazonaws.s3control.synthetic",
   11     11   
    "PutBucketLifecycleConfigurationOutput",
   12     12   
);
          13  +
static PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
   13     20   
static PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   14     21   
    PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA_ID,
   15     22   
    ::aws_smithy_schema::ShapeType::Structure,
   16         -
    &[],
          23  +
    &[&PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER__REQUEST_ID],
   17     24   
);
   18     25   
impl PutBucketLifecycleConfigurationOutput {
   19     26   
    /// The schema for this shape.
   20     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA;
   21     28   
}
   22     29   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketLifecycleConfigurationOutput {
   23     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   24     31   
    fn serialize_members(
   25     32   
        &self,
   26     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   27     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   28     35   
        Ok(())
   29     36   
    }
   30     37   
}
   31     38   
impl PutBucketLifecycleConfigurationOutput {
   32     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   33         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   34         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   35     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   36     43   
        #[allow(unused_variables, unused_mut)]
   37     44   
        let mut builder = Self::builder();
   38     45   
        #[allow(
   39     46   
            unused_variables,
   40     47   
            unreachable_code,
   41     48   
            clippy::single_match,
   42     49   
            clippy::match_single_binding,
   43     50   
            clippy::diverging_sub_expression
   44     51   
        )]
   45         -
        deserializer.read_struct(&PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&PUTBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA, &mut |member, deser| {
   46     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   47     57   
                _ => {}
   48     58   
            }
   49     59   
            Ok(())
   50     60   
        })?;
   51     61   
        Ok(builder.build())
   52     62   
    }
   53     63   
}
          64  +
impl PutBucketLifecycleConfigurationOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   54     82   
impl ::aws_types::request_id::RequestId for PutBucketLifecycleConfigurationOutput {
   55     83   
    fn request_id(&self) -> Option<&str> {
   56     84   
        self._request_id.as_deref()
   57     85   
    }
   58     86   
}
   59     87   
impl PutBucketLifecycleConfigurationOutput {
   60     88   
    /// Creates a new builder-style object to manufacture [`PutBucketLifecycleConfigurationOutput`](crate::operation::put_bucket_lifecycle_configuration::PutBucketLifecycleConfigurationOutput).
   61     89   
    pub fn builder() -> crate::operation::put_bucket_lifecycle_configuration::builders::PutBucketLifecycleConfigurationOutputBuilder {
   62     90   
        crate::operation::put_bucket_lifecycle_configuration::builders::PutBucketLifecycleConfigurationOutputBuilder::default()
   63     91   
    }

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

@@ -1,1 +40,44 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `PutBucketPolicy`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct PutBucketPolicy;
    6      6   
impl PutBucketPolicy {
    7      7   
    /// Creates a new `PutBucketPolicy`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_policy::PutBucketPolicyInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_policy::PutBucketPolicyOutput::SCHEMA;
   11     15   
    pub(crate) async fn orchestrate(
   12     16   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     17   
        input: crate::operation::put_bucket_policy::PutBucketPolicyInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::put_bucket_policy::PutBucketPolicyOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::put_bucket_policy::PutBucketPolicyError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::put_bucket_policy::PutBucketPolicyError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct PutBucketPolicyResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for PutBucketPolicyResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_put_bucket_policy::de_put_bucket_policy_http_error(status, headers, body)
  160    165   
        } else {

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_policy/_put_bucket_policy_input.rs

@@ -41,41 +204,256 @@
   61     61   
    "com.amazonaws.s3control.synthetic",
   62     62   
    "PutBucketPolicyInput",
   63     63   
);
   64     64   
static PUTBUCKETPOLICYINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   65     65   
    ::aws_smithy_schema::ShapeId::from_static(
   66     66   
        "com.amazonaws.s3control.synthetic#PutBucketPolicyInput$AccountId",
   67     67   
        "com.amazonaws.s3control.synthetic",
   68     68   
        "PutBucketPolicyInput",
   69     69   
    ),
   70     70   
    ::aws_smithy_schema::ShapeType::String,
   71         -
    "account_id",
          71  +
    "AccountId",
   72     72   
    0,
   73     73   
)
   74     74   
.with_host_label()
   75     75   
.with_http_header("x-amz-account-id");
   76     76   
static PUTBUCKETPOLICYINPUT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   77     77   
    ::aws_smithy_schema::ShapeId::from_static(
   78     78   
        "com.amazonaws.s3control.synthetic#PutBucketPolicyInput$Bucket",
   79     79   
        "com.amazonaws.s3control.synthetic",
   80     80   
        "PutBucketPolicyInput",
   81     81   
    ),
   82     82   
    ::aws_smithy_schema::ShapeType::String,
   83         -
    "bucket",
          83  +
    "Bucket",
   84     84   
    1,
   85     85   
)
   86     86   
.with_http_label();
   87     87   
static PUTBUCKETPOLICYINPUT_MEMBER_CONFIRM_REMOVE_SELF_BUCKET_ACCESS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   88     88   
    ::aws_smithy_schema::ShapeId::from_static(
   89     89   
        "com.amazonaws.s3control.synthetic#PutBucketPolicyInput$ConfirmRemoveSelfBucketAccess",
   90     90   
        "com.amazonaws.s3control.synthetic",
   91     91   
        "PutBucketPolicyInput",
   92     92   
    ),
   93     93   
    ::aws_smithy_schema::ShapeType::Boolean,
   94         -
    "confirm_remove_self_bucket_access",
          94  +
    "ConfirmRemoveSelfBucketAccess",
   95     95   
    2,
   96     96   
)
   97     97   
.with_http_header("x-amz-confirm-remove-self-bucket-access");
   98     98   
static PUTBUCKETPOLICYINPUT_MEMBER_POLICY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   99     99   
    ::aws_smithy_schema::ShapeId::from_static(
  100    100   
        "com.amazonaws.s3control.synthetic#PutBucketPolicyInput$Policy",
  101    101   
        "com.amazonaws.s3control.synthetic",
  102    102   
        "PutBucketPolicyInput",
  103    103   
    ),
  104    104   
    ::aws_smithy_schema::ShapeType::String,
  105         -
    "policy",
         105  +
    "Policy",
  106    106   
    3,
  107    107   
);
  108    108   
static PUTBUCKETPOLICYINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  109    109   
    PUTBUCKETPOLICYINPUT_SCHEMA_ID,
  110    110   
    ::aws_smithy_schema::ShapeType::Structure,
  111    111   
    &[
  112    112   
        &PUTBUCKETPOLICYINPUT_MEMBER_ACCOUNT_ID,
  113    113   
        &PUTBUCKETPOLICYINPUT_MEMBER_BUCKET,
  114    114   
        &PUTBUCKETPOLICYINPUT_MEMBER_CONFIRM_REMOVE_SELF_BUCKET_ACCESS,
  115    115   
        &PUTBUCKETPOLICYINPUT_MEMBER_POLICY,
  116    116   
    ],
  117         -
);
         117  +
)
         118  +
.with_http(aws_smithy_schema::traits::HttpTrait::new(
         119  +
    "PUT",
         120  +
    "/v20180820/bucket/{Bucket}/policy",
         121  +
    None,
         122  +
));
  118    123   
impl PutBucketPolicyInput {
  119    124   
    /// The schema for this shape.
  120    125   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETPOLICYINPUT_SCHEMA;
  121    126   
}
  122    127   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketPolicyInput {
  123    128   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  124    129   
    fn serialize_members(
  125    130   
        &self,
  126    131   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  127    132   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  128    133   
        if let Some(ref val) = self.account_id {
  129    134   
            ser.write_string(&PUTBUCKETPOLICYINPUT_MEMBER_ACCOUNT_ID, val)?;
  130    135   
        }
  131    136   
        if let Some(ref val) = self.bucket {
  132    137   
            ser.write_string(&PUTBUCKETPOLICYINPUT_MEMBER_BUCKET, val)?;
  133    138   
        }
  134    139   
        if let Some(ref val) = self.confirm_remove_self_bucket_access {
  135    140   
            ser.write_boolean(&PUTBUCKETPOLICYINPUT_MEMBER_CONFIRM_REMOVE_SELF_BUCKET_ACCESS, *val)?;
  136    141   
        }
  137    142   
        if let Some(ref val) = self.policy {
  138    143   
            ser.write_string(&PUTBUCKETPOLICYINPUT_MEMBER_POLICY, val)?;
  139    144   
        }
  140    145   
        Ok(())
  141    146   
    }
  142    147   
}
  143    148   
impl PutBucketPolicyInput {
  144    149   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  145         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  146         -
        deserializer: &mut D,
         150  +
    pub fn deserialize(
         151  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  147    152   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  148    153   
        #[allow(unused_variables, unused_mut)]
  149    154   
        let mut builder = Self::builder();
  150    155   
        #[allow(
  151    156   
            unused_variables,
  152    157   
            unreachable_code,
  153    158   
            clippy::single_match,
  154    159   
            clippy::match_single_binding,
  155    160   
            clippy::diverging_sub_expression
  156    161   
        )]
  157         -
        deserializer.read_struct(&PUTBUCKETPOLICYINPUT_SCHEMA, (), |_, member, deser| {
         162  +
        deserializer.read_struct(&PUTBUCKETPOLICYINPUT_SCHEMA, &mut |member, deser| {
  158    163   
            match member.member_index() {
  159    164   
                Some(0) => {
  160    165   
                    builder.account_id = Some(deser.read_string(member)?);
  161    166   
                }
  162    167   
                Some(1) => {
  163    168   
                    builder.bucket = Some(deser.read_string(member)?);
  164    169   
                }
  165    170   
                Some(2) => {
  166    171   
                    builder.confirm_remove_self_bucket_access = Some(deser.read_boolean(member)?);
  167    172   
                }
  168    173   
                Some(3) => {
  169    174   
                    builder.policy = Some(deser.read_string(member)?);
  170    175   
                }
  171    176   
                _ => {}
  172    177   
            }
  173    178   
            Ok(())
  174    179   
        })?;
         180  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         181  +
        builder.bucket = builder.bucket.or(Some(String::new()));
         182  +
        builder.policy = builder.policy.or(Some(String::new()));
         183  +
        builder
         184  +
            .build()
         185  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         186  +
    }
         187  +
}
         188  +
impl PutBucketPolicyInput {
         189  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         190  +
    /// Header-bound members are read directly from headers, avoiding runtime
         191  +
    /// member iteration overhead. Body members are read via the deserializer.
         192  +
    pub fn deserialize_with_response(
         193  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         194  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         195  +
        _status: u16,
         196  +
        _body: &[u8],
         197  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         198  +
        #[allow(unused_variables, unused_mut)]
         199  +
        let mut builder = Self::builder();
         200  +
        if let Some(val) = headers.get("x-amz-account-id") {
         201  +
            builder.account_id = Some(val.to_string());
         202  +
        }
         203  +
        if let Some(val) = headers.get("x-amz-confirm-remove-self-bucket-access") {
         204  +
            builder.confirm_remove_self_bucket_access = val.parse::<bool>().ok();
         205  +
        }
         206  +
        #[allow(
         207  +
            unused_variables,
         208  +
            unreachable_code,
         209  +
            clippy::single_match,
         210  +
            clippy::match_single_binding,
         211  +
            clippy::diverging_sub_expression
         212  +
        )]
         213  +
        deserializer.read_struct(&PUTBUCKETPOLICYINPUT_SCHEMA, &mut |member, deser| {
         214  +
            match member.member_index() {
         215  +
                Some(0) => { /* read from headers above */ }
         216  +
                Some(1) => {
         217  +
                    builder.bucket = Some(deser.read_string(member)?);
         218  +
                }
         219  +
                Some(2) => { /* read from headers above */ }
         220  +
                Some(3) => {
         221  +
                    builder.policy = Some(deser.read_string(member)?);
         222  +
                }
         223  +
                _ => {}
         224  +
            }
         225  +
            Ok(())
         226  +
        })?;
  175    227   
        builder
  176    228   
            .build()
  177    229   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  178    230   
    }
  179    231   
}
  180    232   
impl PutBucketPolicyInput {
  181    233   
    /// Creates a new builder-style object to manufacture [`PutBucketPolicyInput`](crate::operation::put_bucket_policy::PutBucketPolicyInput).
  182    234   
    pub fn builder() -> crate::operation::put_bucket_policy::builders::PutBucketPolicyInputBuilder {
  183    235   
        crate::operation::put_bucket_policy::builders::PutBucketPolicyInputBuilder::default()
  184    236   
    }

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_policy/_put_bucket_policy_output.rs

@@ -1,1 +80,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct PutBucketPolicyOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static PUTBUCKETPOLICYOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.s3control.synthetic#PutBucketPolicyOutput",
   10     10   
    "com.amazonaws.s3control.synthetic",
   11     11   
    "PutBucketPolicyOutput",
   12     12   
);
   13         -
static PUTBUCKETPOLICYOUTPUT_SCHEMA: ::aws_smithy_schema::Schema =
   14         -
    ::aws_smithy_schema::Schema::new_struct(PUTBUCKETPOLICYOUTPUT_SCHEMA_ID, ::aws_smithy_schema::ShapeType::Structure, &[]);
          13  +
static PUTBUCKETPOLICYOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
          20  +
static PUTBUCKETPOLICYOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          21  +
    PUTBUCKETPOLICYOUTPUT_SCHEMA_ID,
          22  +
    ::aws_smithy_schema::ShapeType::Structure,
          23  +
    &[&PUTBUCKETPOLICYOUTPUT_MEMBER__REQUEST_ID],
          24  +
);
   15     25   
impl PutBucketPolicyOutput {
   16     26   
    /// The schema for this shape.
   17     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETPOLICYOUTPUT_SCHEMA;
   18     28   
}
   19     29   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketPolicyOutput {
   20     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   21     31   
    fn serialize_members(
   22     32   
        &self,
   23     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   24     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   25     35   
        Ok(())
   26     36   
    }
   27     37   
}
   28     38   
impl PutBucketPolicyOutput {
   29     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   30         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   31         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   32     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   33     43   
        #[allow(unused_variables, unused_mut)]
   34     44   
        let mut builder = Self::builder();
   35     45   
        #[allow(
   36     46   
            unused_variables,
   37     47   
            unreachable_code,
   38     48   
            clippy::single_match,
   39     49   
            clippy::match_single_binding,
   40     50   
            clippy::diverging_sub_expression
   41     51   
        )]
   42         -
        deserializer.read_struct(&PUTBUCKETPOLICYOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&PUTBUCKETPOLICYOUTPUT_SCHEMA, &mut |member, deser| {
   43     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   44     57   
                _ => {}
   45     58   
            }
   46     59   
            Ok(())
   47     60   
        })?;
   48     61   
        Ok(builder.build())
   49     62   
    }
   50     63   
}
          64  +
impl PutBucketPolicyOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   51     82   
impl ::aws_types::request_id::RequestId for PutBucketPolicyOutput {
   52     83   
    fn request_id(&self) -> Option<&str> {
   53     84   
        self._request_id.as_deref()
   54     85   
    }
   55     86   
}
   56     87   
impl PutBucketPolicyOutput {
   57     88   
    /// Creates a new builder-style object to manufacture [`PutBucketPolicyOutput`](crate::operation::put_bucket_policy::PutBucketPolicyOutput).
   58     89   
    pub fn builder() -> crate::operation::put_bucket_policy::builders::PutBucketPolicyOutputBuilder {
   59     90   
        crate::operation::put_bucket_policy::builders::PutBucketPolicyOutputBuilder::default()
   60     91   
    }

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

@@ -1,1 +40,44 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `PutBucketReplication`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct PutBucketReplication;
    6      6   
impl PutBucketReplication {
    7      7   
    /// Creates a new `PutBucketReplication`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_replication::PutBucketReplicationInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_replication::PutBucketReplicationOutput::SCHEMA;
   11     15   
    pub(crate) async fn orchestrate(
   12     16   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     17   
        input: crate::operation::put_bucket_replication::PutBucketReplicationInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::put_bucket_replication::PutBucketReplicationOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::put_bucket_replication::PutBucketReplicationError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::put_bucket_replication::PutBucketReplicationError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct PutBucketReplicationResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for PutBucketReplicationResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_put_bucket_replication::de_put_bucket_replication_http_error(status, headers, body)
  160    165   
        } else {

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_replication/_put_bucket_replication_input.rs

@@ -31,31 +178,208 @@
   51     51   
    "com.amazonaws.s3control.synthetic",
   52     52   
    "PutBucketReplicationInput",
   53     53   
);
   54     54   
static PUTBUCKETREPLICATIONINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   55     55   
    ::aws_smithy_schema::ShapeId::from_static(
   56     56   
        "com.amazonaws.s3control.synthetic#PutBucketReplicationInput$AccountId",
   57     57   
        "com.amazonaws.s3control.synthetic",
   58     58   
        "PutBucketReplicationInput",
   59     59   
    ),
   60     60   
    ::aws_smithy_schema::ShapeType::String,
   61         -
    "account_id",
          61  +
    "AccountId",
   62     62   
    0,
   63     63   
)
   64     64   
.with_host_label()
   65     65   
.with_http_header("x-amz-account-id");
   66     66   
static PUTBUCKETREPLICATIONINPUT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   67     67   
    ::aws_smithy_schema::ShapeId::from_static(
   68     68   
        "com.amazonaws.s3control.synthetic#PutBucketReplicationInput$Bucket",
   69     69   
        "com.amazonaws.s3control.synthetic",
   70     70   
        "PutBucketReplicationInput",
   71     71   
    ),
   72     72   
    ::aws_smithy_schema::ShapeType::String,
   73         -
    "bucket",
          73  +
    "Bucket",
   74     74   
    1,
   75     75   
)
   76     76   
.with_http_label();
   77     77   
static PUTBUCKETREPLICATIONINPUT_MEMBER_REPLICATION_CONFIGURATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   78     78   
    ::aws_smithy_schema::ShapeId::from_static(
   79     79   
        "com.amazonaws.s3control.synthetic#PutBucketReplicationInput$ReplicationConfiguration",
   80     80   
        "com.amazonaws.s3control.synthetic",
   81     81   
        "PutBucketReplicationInput",
   82     82   
    ),
   83     83   
    ::aws_smithy_schema::ShapeType::Structure,
   84         -
    "replication_configuration",
          84  +
    "ReplicationConfiguration",
   85     85   
    2,
   86     86   
)
   87     87   
.with_xml_name("ReplicationConfiguration")
   88     88   
.with_http_payload();
   89     89   
static PUTBUCKETREPLICATIONINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   90     90   
    PUTBUCKETREPLICATIONINPUT_SCHEMA_ID,
   91     91   
    ::aws_smithy_schema::ShapeType::Structure,
   92     92   
    &[
   93     93   
        &PUTBUCKETREPLICATIONINPUT_MEMBER_ACCOUNT_ID,
   94     94   
        &PUTBUCKETREPLICATIONINPUT_MEMBER_BUCKET,
   95     95   
        &PUTBUCKETREPLICATIONINPUT_MEMBER_REPLICATION_CONFIGURATION,
   96     96   
    ],
   97         -
);
          97  +
)
          98  +
.with_http(aws_smithy_schema::traits::HttpTrait::new(
          99  +
    "PUT",
         100  +
    "/v20180820/bucket/{Bucket}/replication",
         101  +
    None,
         102  +
));
   98    103   
impl PutBucketReplicationInput {
   99    104   
    /// The schema for this shape.
  100    105   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETREPLICATIONINPUT_SCHEMA;
  101    106   
}
  102    107   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketReplicationInput {
  103    108   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  104    109   
    fn serialize_members(
  105    110   
        &self,
  106    111   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  107    112   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  108    113   
        if let Some(ref val) = self.account_id {
  109    114   
            ser.write_string(&PUTBUCKETREPLICATIONINPUT_MEMBER_ACCOUNT_ID, val)?;
  110    115   
        }
  111    116   
        if let Some(ref val) = self.bucket {
  112    117   
            ser.write_string(&PUTBUCKETREPLICATIONINPUT_MEMBER_BUCKET, val)?;
  113    118   
        }
  114    119   
        if let Some(ref val) = self.replication_configuration {
  115    120   
            ser.write_struct(&PUTBUCKETREPLICATIONINPUT_MEMBER_REPLICATION_CONFIGURATION, val)?;
  116    121   
        }
  117    122   
        Ok(())
  118    123   
    }
  119    124   
}
  120    125   
impl PutBucketReplicationInput {
  121    126   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  122         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  123         -
        deserializer: &mut D,
         127  +
    pub fn deserialize(
         128  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  124    129   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  125    130   
        #[allow(unused_variables, unused_mut)]
  126    131   
        let mut builder = Self::builder();
  127    132   
        #[allow(
  128    133   
            unused_variables,
  129    134   
            unreachable_code,
  130    135   
            clippy::single_match,
  131    136   
            clippy::match_single_binding,
  132    137   
            clippy::diverging_sub_expression
  133    138   
        )]
  134         -
        deserializer.read_struct(&PUTBUCKETREPLICATIONINPUT_SCHEMA, (), |_, member, deser| {
         139  +
        deserializer.read_struct(&PUTBUCKETREPLICATIONINPUT_SCHEMA, &mut |member, deser| {
  135    140   
            match member.member_index() {
  136    141   
                Some(0) => {
  137    142   
                    builder.account_id = Some(deser.read_string(member)?);
  138    143   
                }
  139    144   
                Some(1) => {
  140    145   
                    builder.bucket = Some(deser.read_string(member)?);
  141    146   
                }
  142    147   
                Some(2) => {
  143    148   
                    builder.replication_configuration = Some(crate::types::ReplicationConfiguration::deserialize(deser)?);
  144    149   
                }
  145    150   
                _ => {}
  146    151   
            }
  147    152   
            Ok(())
  148    153   
        })?;
         154  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         155  +
        builder.bucket = builder.bucket.or(Some(String::new()));
         156  +
        builder
         157  +
            .build()
         158  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         159  +
    }
         160  +
}
         161  +
impl PutBucketReplicationInput {
         162  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         163  +
    /// Header-bound members are read directly from headers, avoiding runtime
         164  +
    /// member iteration overhead. Body members are read via the deserializer.
         165  +
    pub fn deserialize_with_response(
         166  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         167  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         168  +
        _status: u16,
         169  +
        body: &[u8],
         170  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         171  +
        #[allow(unused_variables, unused_mut)]
         172  +
        let mut builder = Self::builder();
         173  +
        if let Some(val) = headers.get("x-amz-account-id") {
         174  +
            builder.account_id = Some(val.to_string());
         175  +
        }
         176  +
        if !body.is_empty() {
         177  +
            builder.replication_configuration = Some(crate::types::ReplicationConfiguration::deserialize(deserializer)?);
         178  +
        }
  149    179   
        builder
  150    180   
            .build()
  151    181   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  152    182   
    }
  153    183   
}
  154    184   
impl PutBucketReplicationInput {
  155    185   
    /// Creates a new builder-style object to manufacture [`PutBucketReplicationInput`](crate::operation::put_bucket_replication::PutBucketReplicationInput).
  156    186   
    pub fn builder() -> crate::operation::put_bucket_replication::builders::PutBucketReplicationInputBuilder {
  157    187   
        crate::operation::put_bucket_replication::builders::PutBucketReplicationInputBuilder::default()
  158    188   
    }

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_replication/_put_bucket_replication_output.rs

@@ -1,1 +80,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct PutBucketReplicationOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static PUTBUCKETREPLICATIONOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.s3control.synthetic#PutBucketReplicationOutput",
   10     10   
    "com.amazonaws.s3control.synthetic",
   11     11   
    "PutBucketReplicationOutput",
   12     12   
);
   13         -
static PUTBUCKETREPLICATIONOUTPUT_SCHEMA: ::aws_smithy_schema::Schema =
   14         -
    ::aws_smithy_schema::Schema::new_struct(PUTBUCKETREPLICATIONOUTPUT_SCHEMA_ID, ::aws_smithy_schema::ShapeType::Structure, &[]);
          13  +
static PUTBUCKETREPLICATIONOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
          20  +
static PUTBUCKETREPLICATIONOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          21  +
    PUTBUCKETREPLICATIONOUTPUT_SCHEMA_ID,
          22  +
    ::aws_smithy_schema::ShapeType::Structure,
          23  +
    &[&PUTBUCKETREPLICATIONOUTPUT_MEMBER__REQUEST_ID],
          24  +
);
   15     25   
impl PutBucketReplicationOutput {
   16     26   
    /// The schema for this shape.
   17     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETREPLICATIONOUTPUT_SCHEMA;
   18     28   
}
   19     29   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketReplicationOutput {
   20     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   21     31   
    fn serialize_members(
   22     32   
        &self,
   23     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   24     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   25     35   
        Ok(())
   26     36   
    }
   27     37   
}
   28     38   
impl PutBucketReplicationOutput {
   29     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   30         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   31         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   32     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   33     43   
        #[allow(unused_variables, unused_mut)]
   34     44   
        let mut builder = Self::builder();
   35     45   
        #[allow(
   36     46   
            unused_variables,
   37     47   
            unreachable_code,
   38     48   
            clippy::single_match,
   39     49   
            clippy::match_single_binding,
   40     50   
            clippy::diverging_sub_expression
   41     51   
        )]
   42         -
        deserializer.read_struct(&PUTBUCKETREPLICATIONOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&PUTBUCKETREPLICATIONOUTPUT_SCHEMA, &mut |member, deser| {
   43     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   44     57   
                _ => {}
   45     58   
            }
   46     59   
            Ok(())
   47     60   
        })?;
   48     61   
        Ok(builder.build())
   49     62   
    }
   50     63   
}
          64  +
impl PutBucketReplicationOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   51     82   
impl ::aws_types::request_id::RequestId for PutBucketReplicationOutput {
   52     83   
    fn request_id(&self) -> Option<&str> {
   53     84   
        self._request_id.as_deref()
   54     85   
    }
   55     86   
}
   56     87   
impl PutBucketReplicationOutput {
   57     88   
    /// Creates a new builder-style object to manufacture [`PutBucketReplicationOutput`](crate::operation::put_bucket_replication::PutBucketReplicationOutput).
   58     89   
    pub fn builder() -> crate::operation::put_bucket_replication::builders::PutBucketReplicationOutputBuilder {
   59     90   
        crate::operation::put_bucket_replication::builders::PutBucketReplicationOutputBuilder::default()
   60     91   
    }

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

@@ -1,1 +40,44 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `PutBucketTagging`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct PutBucketTagging;
    6      6   
impl PutBucketTagging {
    7      7   
    /// Creates a new `PutBucketTagging`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_tagging::PutBucketTaggingInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_tagging::PutBucketTaggingOutput::SCHEMA;
   11     15   
    pub(crate) async fn orchestrate(
   12     16   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     17   
        input: crate::operation::put_bucket_tagging::PutBucketTaggingInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::put_bucket_tagging::PutBucketTaggingOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::put_bucket_tagging::PutBucketTaggingError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::put_bucket_tagging::PutBucketTaggingError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct PutBucketTaggingResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for PutBucketTaggingResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_put_bucket_tagging::de_put_bucket_tagging_http_error(status, headers, body)
  160    165   
        } else {

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_tagging/_put_bucket_tagging_input.rs

@@ -31,31 +178,208 @@
   51     51   
    "com.amazonaws.s3control.synthetic",
   52     52   
    "PutBucketTaggingInput",
   53     53   
);
   54     54   
static PUTBUCKETTAGGINGINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   55     55   
    ::aws_smithy_schema::ShapeId::from_static(
   56     56   
        "com.amazonaws.s3control.synthetic#PutBucketTaggingInput$AccountId",
   57     57   
        "com.amazonaws.s3control.synthetic",
   58     58   
        "PutBucketTaggingInput",
   59     59   
    ),
   60     60   
    ::aws_smithy_schema::ShapeType::String,
   61         -
    "account_id",
          61  +
    "AccountId",
   62     62   
    0,
   63     63   
)
   64     64   
.with_host_label()
   65     65   
.with_http_header("x-amz-account-id");
   66     66   
static PUTBUCKETTAGGINGINPUT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   67     67   
    ::aws_smithy_schema::ShapeId::from_static(
   68     68   
        "com.amazonaws.s3control.synthetic#PutBucketTaggingInput$Bucket",
   69     69   
        "com.amazonaws.s3control.synthetic",
   70     70   
        "PutBucketTaggingInput",
   71     71   
    ),
   72     72   
    ::aws_smithy_schema::ShapeType::String,
   73         -
    "bucket",
          73  +
    "Bucket",
   74     74   
    1,
   75     75   
)
   76     76   
.with_http_label();
   77     77   
static PUTBUCKETTAGGINGINPUT_MEMBER_TAGGING: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   78     78   
    ::aws_smithy_schema::ShapeId::from_static(
   79     79   
        "com.amazonaws.s3control.synthetic#PutBucketTaggingInput$Tagging",
   80     80   
        "com.amazonaws.s3control.synthetic",
   81     81   
        "PutBucketTaggingInput",
   82     82   
    ),
   83     83   
    ::aws_smithy_schema::ShapeType::Structure,
   84         -
    "tagging",
          84  +
    "Tagging",
   85     85   
    2,
   86     86   
)
   87     87   
.with_xml_name("Tagging")
   88     88   
.with_http_payload();
   89     89   
static PUTBUCKETTAGGINGINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   90     90   
    PUTBUCKETTAGGINGINPUT_SCHEMA_ID,
   91     91   
    ::aws_smithy_schema::ShapeType::Structure,
   92     92   
    &[
   93     93   
        &PUTBUCKETTAGGINGINPUT_MEMBER_ACCOUNT_ID,
   94     94   
        &PUTBUCKETTAGGINGINPUT_MEMBER_BUCKET,
   95     95   
        &PUTBUCKETTAGGINGINPUT_MEMBER_TAGGING,
   96     96   
    ],
   97         -
);
          97  +
)
          98  +
.with_http(aws_smithy_schema::traits::HttpTrait::new(
          99  +
    "PUT",
         100  +
    "/v20180820/bucket/{Bucket}/tagging",
         101  +
    None,
         102  +
));
   98    103   
impl PutBucketTaggingInput {
   99    104   
    /// The schema for this shape.
  100    105   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETTAGGINGINPUT_SCHEMA;
  101    106   
}
  102    107   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketTaggingInput {
  103    108   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  104    109   
    fn serialize_members(
  105    110   
        &self,
  106    111   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  107    112   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  108    113   
        if let Some(ref val) = self.account_id {
  109    114   
            ser.write_string(&PUTBUCKETTAGGINGINPUT_MEMBER_ACCOUNT_ID, val)?;
  110    115   
        }
  111    116   
        if let Some(ref val) = self.bucket {
  112    117   
            ser.write_string(&PUTBUCKETTAGGINGINPUT_MEMBER_BUCKET, val)?;
  113    118   
        }
  114    119   
        if let Some(ref val) = self.tagging {
  115    120   
            ser.write_struct(&PUTBUCKETTAGGINGINPUT_MEMBER_TAGGING, val)?;
  116    121   
        }
  117    122   
        Ok(())
  118    123   
    }
  119    124   
}
  120    125   
impl PutBucketTaggingInput {
  121    126   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  122         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  123         -
        deserializer: &mut D,
         127  +
    pub fn deserialize(
         128  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  124    129   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  125    130   
        #[allow(unused_variables, unused_mut)]
  126    131   
        let mut builder = Self::builder();
  127    132   
        #[allow(
  128    133   
            unused_variables,
  129    134   
            unreachable_code,
  130    135   
            clippy::single_match,
  131    136   
            clippy::match_single_binding,
  132    137   
            clippy::diverging_sub_expression
  133    138   
        )]
  134         -
        deserializer.read_struct(&PUTBUCKETTAGGINGINPUT_SCHEMA, (), |_, member, deser| {
         139  +
        deserializer.read_struct(&PUTBUCKETTAGGINGINPUT_SCHEMA, &mut |member, deser| {
  135    140   
            match member.member_index() {
  136    141   
                Some(0) => {
  137    142   
                    builder.account_id = Some(deser.read_string(member)?);
  138    143   
                }
  139    144   
                Some(1) => {
  140    145   
                    builder.bucket = Some(deser.read_string(member)?);
  141    146   
                }
  142    147   
                Some(2) => {
  143    148   
                    builder.tagging = Some(crate::types::Tagging::deserialize(deser)?);
  144    149   
                }
  145    150   
                _ => {}
  146    151   
            }
  147    152   
            Ok(())
  148    153   
        })?;
         154  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         155  +
        builder.bucket = builder.bucket.or(Some(String::new()));
         156  +
        builder
         157  +
            .build()
         158  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         159  +
    }
         160  +
}
         161  +
impl PutBucketTaggingInput {
         162  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         163  +
    /// Header-bound members are read directly from headers, avoiding runtime
         164  +
    /// member iteration overhead. Body members are read via the deserializer.
         165  +
    pub fn deserialize_with_response(
         166  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         167  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         168  +
        _status: u16,
         169  +
        body: &[u8],
         170  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         171  +
        #[allow(unused_variables, unused_mut)]
         172  +
        let mut builder = Self::builder();
         173  +
        if let Some(val) = headers.get("x-amz-account-id") {
         174  +
            builder.account_id = Some(val.to_string());
         175  +
        }
         176  +
        if !body.is_empty() {
         177  +
            builder.tagging = Some(crate::types::Tagging::deserialize(deserializer)?);
         178  +
        }
  149    179   
        builder
  150    180   
            .build()
  151    181   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  152    182   
    }
  153    183   
}
  154    184   
impl PutBucketTaggingInput {
  155    185   
    /// Creates a new builder-style object to manufacture [`PutBucketTaggingInput`](crate::operation::put_bucket_tagging::PutBucketTaggingInput).
  156    186   
    pub fn builder() -> crate::operation::put_bucket_tagging::builders::PutBucketTaggingInputBuilder {
  157    187   
        crate::operation::put_bucket_tagging::builders::PutBucketTaggingInputBuilder::default()
  158    188   
    }

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/put_bucket_tagging/_put_bucket_tagging_output.rs

@@ -1,1 +80,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct PutBucketTaggingOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static PUTBUCKETTAGGINGOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.s3control.synthetic#PutBucketTaggingOutput",
   10     10   
    "com.amazonaws.s3control.synthetic",
   11     11   
    "PutBucketTaggingOutput",
   12     12   
);
   13         -
static PUTBUCKETTAGGINGOUTPUT_SCHEMA: ::aws_smithy_schema::Schema =
   14         -
    ::aws_smithy_schema::Schema::new_struct(PUTBUCKETTAGGINGOUTPUT_SCHEMA_ID, ::aws_smithy_schema::ShapeType::Structure, &[]);
          13  +
static PUTBUCKETTAGGINGOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
          20  +
static PUTBUCKETTAGGINGOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          21  +
    PUTBUCKETTAGGINGOUTPUT_SCHEMA_ID,
          22  +
    ::aws_smithy_schema::ShapeType::Structure,
          23  +
    &[&PUTBUCKETTAGGINGOUTPUT_MEMBER__REQUEST_ID],
          24  +
);
   15     25   
impl PutBucketTaggingOutput {
   16     26   
    /// The schema for this shape.
   17     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETTAGGINGOUTPUT_SCHEMA;
   18     28   
}
   19     29   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketTaggingOutput {
   20     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   21     31   
    fn serialize_members(
   22     32   
        &self,
   23     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   24     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   25     35   
        Ok(())
   26     36   
    }
   27     37   
}
   28     38   
impl PutBucketTaggingOutput {
   29     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   30         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   31         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   32     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   33     43   
        #[allow(unused_variables, unused_mut)]
   34     44   
        let mut builder = Self::builder();
   35     45   
        #[allow(
   36     46   
            unused_variables,
   37     47   
            unreachable_code,
   38     48   
            clippy::single_match,
   39     49   
            clippy::match_single_binding,
   40     50   
            clippy::diverging_sub_expression
   41     51   
        )]
   42         -
        deserializer.read_struct(&PUTBUCKETTAGGINGOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&PUTBUCKETTAGGINGOUTPUT_SCHEMA, &mut |member, deser| {
   43     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   44     57   
                _ => {}
   45     58   
            }
   46     59   
            Ok(())
   47     60   
        })?;
   48     61   
        Ok(builder.build())
   49     62   
    }
   50     63   
}
          64  +
impl PutBucketTaggingOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   51     82   
impl ::aws_types::request_id::RequestId for PutBucketTaggingOutput {
   52     83   
    fn request_id(&self) -> Option<&str> {
   53     84   
        self._request_id.as_deref()
   54     85   
    }
   55     86   
}
   56     87   
impl PutBucketTaggingOutput {
   57     88   
    /// Creates a new builder-style object to manufacture [`PutBucketTaggingOutput`](crate::operation::put_bucket_tagging::PutBucketTaggingOutput).
   58     89   
    pub fn builder() -> crate::operation::put_bucket_tagging::builders::PutBucketTaggingOutputBuilder {
   59     90   
        crate::operation::put_bucket_tagging::builders::PutBucketTaggingOutputBuilder::default()
   60     91   
    }

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

@@ -1,1 +40,44 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `PutBucketVersioning`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct PutBucketVersioning;
    6      6   
impl PutBucketVersioning {
    7      7   
    /// Creates a new `PutBucketVersioning`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_versioning::PutBucketVersioningInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_bucket_versioning::PutBucketVersioningOutput::SCHEMA;
   11     15   
    pub(crate) async fn orchestrate(
   12     16   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     17   
        input: crate::operation::put_bucket_versioning::PutBucketVersioningInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::put_bucket_versioning::PutBucketVersioningOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::put_bucket_versioning::PutBucketVersioningError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::put_bucket_versioning::PutBucketVersioningError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct PutBucketVersioningResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for PutBucketVersioningResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_put_bucket_versioning::de_put_bucket_versioning_http_error(status, headers, body)
  160    165   
        } else {

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

@@ -15,15 +180,213 @@
   35     35   
    "com.amazonaws.s3control.synthetic",
   36     36   
    "PutBucketVersioningInput",
   37     37   
);
   38     38   
static PUTBUCKETVERSIONINGINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   39     39   
    ::aws_smithy_schema::ShapeId::from_static(
   40     40   
        "com.amazonaws.s3control.synthetic#PutBucketVersioningInput$AccountId",
   41     41   
        "com.amazonaws.s3control.synthetic",
   42     42   
        "PutBucketVersioningInput",
   43     43   
    ),
   44     44   
    ::aws_smithy_schema::ShapeType::String,
   45         -
    "account_id",
          45  +
    "AccountId",
   46     46   
    0,
   47     47   
)
   48     48   
.with_host_label()
   49     49   
.with_http_header("x-amz-account-id");
   50     50   
static PUTBUCKETVERSIONINGINPUT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   51     51   
    ::aws_smithy_schema::ShapeId::from_static(
   52     52   
        "com.amazonaws.s3control.synthetic#PutBucketVersioningInput$Bucket",
   53     53   
        "com.amazonaws.s3control.synthetic",
   54     54   
        "PutBucketVersioningInput",
   55     55   
    ),
   56     56   
    ::aws_smithy_schema::ShapeType::String,
   57         -
    "bucket",
          57  +
    "Bucket",
   58     58   
    1,
   59     59   
)
   60     60   
.with_http_label();
   61     61   
static PUTBUCKETVERSIONINGINPUT_MEMBER_MFA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   62     62   
    ::aws_smithy_schema::ShapeId::from_static(
   63     63   
        "com.amazonaws.s3control.synthetic#PutBucketVersioningInput$MFA",
   64     64   
        "com.amazonaws.s3control.synthetic",
   65     65   
        "PutBucketVersioningInput",
   66     66   
    ),
   67     67   
    ::aws_smithy_schema::ShapeType::String,
   68         -
    "mfa",
          68  +
    "MFA",
   69     69   
    2,
   70     70   
)
   71     71   
.with_http_header("x-amz-mfa");
   72     72   
static PUTBUCKETVERSIONINGINPUT_MEMBER_VERSIONING_CONFIGURATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   73     73   
    ::aws_smithy_schema::ShapeId::from_static(
   74     74   
        "com.amazonaws.s3control.synthetic#PutBucketVersioningInput$VersioningConfiguration",
   75     75   
        "com.amazonaws.s3control.synthetic",
   76     76   
        "PutBucketVersioningInput",
   77     77   
    ),
   78     78   
    ::aws_smithy_schema::ShapeType::Structure,
   79         -
    "versioning_configuration",
          79  +
    "VersioningConfiguration",
   80     80   
    3,
   81     81   
)
   82     82   
.with_xml_name("VersioningConfiguration")
   83     83   
.with_http_payload();
   84     84   
static PUTBUCKETVERSIONINGINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   85     85   
    PUTBUCKETVERSIONINGINPUT_SCHEMA_ID,
   86     86   
    ::aws_smithy_schema::ShapeType::Structure,
   87     87   
    &[
   88     88   
        &PUTBUCKETVERSIONINGINPUT_MEMBER_ACCOUNT_ID,
   89     89   
        &PUTBUCKETVERSIONINGINPUT_MEMBER_BUCKET,
   90     90   
        &PUTBUCKETVERSIONINGINPUT_MEMBER_MFA,
   91     91   
        &PUTBUCKETVERSIONINGINPUT_MEMBER_VERSIONING_CONFIGURATION,
   92     92   
    ],
   93         -
);
          93  +
)
          94  +
.with_http(aws_smithy_schema::traits::HttpTrait::new(
          95  +
    "PUT",
          96  +
    "/v20180820/bucket/{Bucket}/versioning",
          97  +
    None,
          98  +
));
   94     99   
impl PutBucketVersioningInput {
   95    100   
    /// The schema for this shape.
   96    101   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETVERSIONINGINPUT_SCHEMA;
   97    102   
}
   98    103   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketVersioningInput {
   99    104   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  100    105   
    fn serialize_members(
  101    106   
        &self,
  102    107   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  103    108   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  104    109   
        if let Some(ref val) = self.account_id {
  105    110   
            ser.write_string(&PUTBUCKETVERSIONINGINPUT_MEMBER_ACCOUNT_ID, val)?;
  106    111   
        }
  107    112   
        if let Some(ref val) = self.bucket {
  108    113   
            ser.write_string(&PUTBUCKETVERSIONINGINPUT_MEMBER_BUCKET, val)?;
  109    114   
        }
  110    115   
        if let Some(ref val) = self.mfa {
  111    116   
            ser.write_string(&PUTBUCKETVERSIONINGINPUT_MEMBER_MFA, val)?;
  112    117   
        }
  113    118   
        if let Some(ref val) = self.versioning_configuration {
  114    119   
            ser.write_struct(&PUTBUCKETVERSIONINGINPUT_MEMBER_VERSIONING_CONFIGURATION, val)?;
  115    120   
        }
  116    121   
        Ok(())
  117    122   
    }
  118    123   
}
  119    124   
impl PutBucketVersioningInput {
  120    125   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  121         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  122         -
        deserializer: &mut D,
         126  +
    pub fn deserialize(
         127  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  123    128   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  124    129   
        #[allow(unused_variables, unused_mut)]
  125    130   
        let mut builder = Self::builder();
  126    131   
        #[allow(
  127    132   
            unused_variables,
  128    133   
            unreachable_code,
  129    134   
            clippy::single_match,
  130    135   
            clippy::match_single_binding,
  131    136   
            clippy::diverging_sub_expression
  132    137   
        )]
  133         -
        deserializer.read_struct(&PUTBUCKETVERSIONINGINPUT_SCHEMA, (), |_, member, deser| {
         138  +
        deserializer.read_struct(&PUTBUCKETVERSIONINGINPUT_SCHEMA, &mut |member, deser| {
  134    139   
            match member.member_index() {
  135    140   
                Some(0) => {
  136    141   
                    builder.account_id = Some(deser.read_string(member)?);
  137    142   
                }
  138    143   
                Some(1) => {
  139    144   
                    builder.bucket = Some(deser.read_string(member)?);
  140    145   
                }
  141    146   
                Some(2) => {
  142    147   
                    builder.mfa = Some(deser.read_string(member)?);
  143    148   
                }
  144    149   
                Some(3) => {
  145    150   
                    builder.versioning_configuration = Some(crate::types::VersioningConfiguration::deserialize(deser)?);
  146    151   
                }
  147    152   
                _ => {}
  148    153   
            }
  149    154   
            Ok(())
  150    155   
        })?;
         156  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         157  +
        builder.bucket = builder.bucket.or(Some(String::new()));
         158  +
        builder
         159  +
            .build()
         160  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         161  +
    }
         162  +
}
         163  +
impl PutBucketVersioningInput {
         164  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         165  +
    /// Header-bound members are read directly from headers, avoiding runtime
         166  +
    /// member iteration overhead. Body members are read via the deserializer.
         167  +
    pub fn deserialize_with_response(
         168  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         169  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         170  +
        _status: u16,
         171  +
        body: &[u8],
         172  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         173  +
        #[allow(unused_variables, unused_mut)]
         174  +
        let mut builder = Self::builder();
         175  +
        if let Some(val) = headers.get("x-amz-account-id") {
         176  +
            builder.account_id = Some(val.to_string());
         177  +
        }
         178  +
        if let Some(val) = headers.get("x-amz-mfa") {
         179  +
            builder.mfa = Some(val.to_string());
         180  +
        }
         181  +
        if !body.is_empty() {
         182  +
            builder.versioning_configuration = Some(crate::types::VersioningConfiguration::deserialize(deserializer)?);
         183  +
        }
  151    184   
        builder
  152    185   
            .build()
  153    186   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  154    187   
    }
  155    188   
}
  156    189   
impl PutBucketVersioningInput {
  157    190   
    /// Creates a new builder-style object to manufacture [`PutBucketVersioningInput`](crate::operation::put_bucket_versioning::PutBucketVersioningInput).
  158    191   
    pub fn builder() -> crate::operation::put_bucket_versioning::builders::PutBucketVersioningInputBuilder {
  159    192   
        crate::operation::put_bucket_versioning::builders::PutBucketVersioningInputBuilder::default()
  160    193   
    }

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

@@ -1,1 +80,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct PutBucketVersioningOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static PUTBUCKETVERSIONINGOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.s3control.synthetic#PutBucketVersioningOutput",
   10     10   
    "com.amazonaws.s3control.synthetic",
   11     11   
    "PutBucketVersioningOutput",
   12     12   
);
   13         -
static PUTBUCKETVERSIONINGOUTPUT_SCHEMA: ::aws_smithy_schema::Schema =
   14         -
    ::aws_smithy_schema::Schema::new_struct(PUTBUCKETVERSIONINGOUTPUT_SCHEMA_ID, ::aws_smithy_schema::ShapeType::Structure, &[]);
          13  +
static PUTBUCKETVERSIONINGOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
          20  +
static PUTBUCKETVERSIONINGOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          21  +
    PUTBUCKETVERSIONINGOUTPUT_SCHEMA_ID,
          22  +
    ::aws_smithy_schema::ShapeType::Structure,
          23  +
    &[&PUTBUCKETVERSIONINGOUTPUT_MEMBER__REQUEST_ID],
          24  +
);
   15     25   
impl PutBucketVersioningOutput {
   16     26   
    /// The schema for this shape.
   17     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTBUCKETVERSIONINGOUTPUT_SCHEMA;
   18     28   
}
   19     29   
impl ::aws_smithy_schema::serde::SerializableStruct for PutBucketVersioningOutput {
   20     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   21     31   
    fn serialize_members(
   22     32   
        &self,
   23     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   24     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   25     35   
        Ok(())
   26     36   
    }
   27     37   
}
   28     38   
impl PutBucketVersioningOutput {
   29     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   30         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   31         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   32     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   33     43   
        #[allow(unused_variables, unused_mut)]
   34     44   
        let mut builder = Self::builder();
   35     45   
        #[allow(
   36     46   
            unused_variables,
   37     47   
            unreachable_code,
   38     48   
            clippy::single_match,
   39     49   
            clippy::match_single_binding,
   40     50   
            clippy::diverging_sub_expression
   41     51   
        )]
   42         -
        deserializer.read_struct(&PUTBUCKETVERSIONINGOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&PUTBUCKETVERSIONINGOUTPUT_SCHEMA, &mut |member, deser| {
   43     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   44     57   
                _ => {}
   45     58   
            }
   46     59   
            Ok(())
   47     60   
        })?;
   48     61   
        Ok(builder.build())
   49     62   
    }
   50     63   
}
          64  +
impl PutBucketVersioningOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   51     82   
impl ::aws_types::request_id::RequestId for PutBucketVersioningOutput {
   52     83   
    fn request_id(&self) -> Option<&str> {
   53     84   
        self._request_id.as_deref()
   54     85   
    }
   55     86   
}
   56     87   
impl PutBucketVersioningOutput {
   57     88   
    /// Creates a new builder-style object to manufacture [`PutBucketVersioningOutput`](crate::operation::put_bucket_versioning::PutBucketVersioningOutput).
   58     89   
    pub fn builder() -> crate::operation::put_bucket_versioning::builders::PutBucketVersioningOutputBuilder {
   59     90   
        crate::operation::put_bucket_versioning::builders::PutBucketVersioningOutputBuilder::default()
   60     91   
    }

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

@@ -1,1 +40,44 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `PutJobTagging`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct PutJobTagging;
    6      6   
impl PutJobTagging {
    7      7   
    /// Creates a new `PutJobTagging`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_job_tagging::PutJobTaggingInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::put_job_tagging::PutJobTaggingOutput::SCHEMA;
   11     15   
    pub(crate) async fn orchestrate(
   12     16   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     17   
        input: crate::operation::put_job_tagging::PutJobTaggingInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::put_job_tagging::PutJobTaggingOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::put_job_tagging::PutJobTaggingError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::put_job_tagging::PutJobTaggingError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct PutJobTaggingResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for PutJobTaggingResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_put_job_tagging::de_put_job_tagging_http_error(status, headers, body)
  160    165   
        } else {

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

@@ -11,11 +168,216 @@
   31     31   
    "com.amazonaws.s3control.synthetic",
   32     32   
    "PutJobTaggingInput",
   33     33   
);
   34     34   
static PUTJOBTAGGINGINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   35     35   
    ::aws_smithy_schema::ShapeId::from_static(
   36     36   
        "com.amazonaws.s3control.synthetic#PutJobTaggingInput$AccountId",
   37     37   
        "com.amazonaws.s3control.synthetic",
   38     38   
        "PutJobTaggingInput",
   39     39   
    ),
   40     40   
    ::aws_smithy_schema::ShapeType::String,
   41         -
    "account_id",
          41  +
    "AccountId",
   42     42   
    0,
   43     43   
)
   44     44   
.with_host_label()
   45     45   
.with_http_header("x-amz-account-id");
   46     46   
static PUTJOBTAGGINGINPUT_MEMBER_JOB_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   47     47   
    ::aws_smithy_schema::ShapeId::from_static(
   48     48   
        "com.amazonaws.s3control.synthetic#PutJobTaggingInput$JobId",
   49     49   
        "com.amazonaws.s3control.synthetic",
   50     50   
        "PutJobTaggingInput",
   51     51   
    ),
   52     52   
    ::aws_smithy_schema::ShapeType::String,
   53         -
    "job_id",
          53  +
    "JobId",
   54     54   
    1,
   55     55   
)
   56     56   
.with_http_label();
   57     57   
static PUTJOBTAGGINGINPUT_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   58     58   
    ::aws_smithy_schema::ShapeId::from_static(
   59     59   
        "com.amazonaws.s3control.synthetic#PutJobTaggingInput$Tags",
   60     60   
        "com.amazonaws.s3control.synthetic",
   61     61   
        "PutJobTaggingInput",
   62     62   
    ),
   63     63   
    ::aws_smithy_schema::ShapeType::List,
   64         -
    "tags",
          64  +
    "Tags",
   65     65   
    2,
   66     66   
);
   67     67   
static PUTJOBTAGGINGINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   68     68   
    PUTJOBTAGGINGINPUT_SCHEMA_ID,
   69     69   
    ::aws_smithy_schema::ShapeType::Structure,
   70     70   
    &[
   71     71   
        &PUTJOBTAGGINGINPUT_MEMBER_ACCOUNT_ID,
   72     72   
        &PUTJOBTAGGINGINPUT_MEMBER_JOB_ID,
   73     73   
        &PUTJOBTAGGINGINPUT_MEMBER_TAGS,
   74     74   
    ],
   75         -
);
          75  +
)
          76  +
.with_http(aws_smithy_schema::traits::HttpTrait::new("PUT", "/v20180820/jobs/{JobId}/tagging", None));
   76     77   
impl PutJobTaggingInput {
   77     78   
    /// The schema for this shape.
   78     79   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTJOBTAGGINGINPUT_SCHEMA;
   79     80   
}
   80     81   
impl ::aws_smithy_schema::serde::SerializableStruct for PutJobTaggingInput {
   81     82   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   82     83   
    fn serialize_members(
   83     84   
        &self,
   84     85   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   85     86   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   86     87   
        if let Some(ref val) = self.account_id {
   87     88   
            ser.write_string(&PUTJOBTAGGINGINPUT_MEMBER_ACCOUNT_ID, val)?;
   88     89   
        }
   89     90   
        if let Some(ref val) = self.job_id {
   90     91   
            ser.write_string(&PUTJOBTAGGINGINPUT_MEMBER_JOB_ID, val)?;
   91     92   
        }
   92     93   
        if let Some(ref val) = self.tags {
   93     94   
            ser.write_list(
   94     95   
                &PUTJOBTAGGINGINPUT_MEMBER_TAGS,
   95     96   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   96     97   
                    for item in val {
   97     98   
                        ser.write_struct(crate::types::S3Tag::SCHEMA, item)?;
   98     99   
                    }
   99    100   
                    Ok(())
  100    101   
                },
  101    102   
            )?;
  102    103   
        }
  103    104   
        Ok(())
  104    105   
    }
  105    106   
}
  106    107   
impl PutJobTaggingInput {
  107    108   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  108         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  109         -
        deserializer: &mut D,
         109  +
    pub fn deserialize(
         110  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  110    111   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  111    112   
        #[allow(unused_variables, unused_mut)]
  112    113   
        let mut builder = Self::builder();
  113    114   
        #[allow(
  114    115   
            unused_variables,
  115    116   
            unreachable_code,
  116    117   
            clippy::single_match,
  117    118   
            clippy::match_single_binding,
  118    119   
            clippy::diverging_sub_expression
  119    120   
        )]
  120         -
        deserializer.read_struct(&PUTJOBTAGGINGINPUT_SCHEMA, (), |_, member, deser| {
         121  +
        deserializer.read_struct(&PUTJOBTAGGINGINPUT_SCHEMA, &mut |member, deser| {
  121    122   
            match member.member_index() {
  122    123   
                Some(0) => {
  123    124   
                    builder.account_id = Some(deser.read_string(member)?);
  124    125   
                }
  125    126   
                Some(1) => {
  126    127   
                    builder.job_id = Some(deser.read_string(member)?);
  127    128   
                }
  128    129   
                Some(2) => {
  129    130   
                    builder.tags = Some({
  130         -
                        let container = if let Some(cap) = deser.container_size() {
  131         -
                            Vec::with_capacity(cap)
  132         -
                        } else {
  133         -
                            Vec::new()
  134         -
                        };
  135         -
                        deser.read_list(member, container, |mut list, deser| {
  136         -
                            list.push(crate::types::S3Tag::deserialize(deser)?);
  137         -
                            Ok(list)
  138         -
                        })?
         131  +
                        let mut container = Vec::new();
         132  +
                        deser.read_list(member, &mut |deser| {
         133  +
                            container.push(crate::types::S3Tag::deserialize(deser)?);
         134  +
                            Ok(())
         135  +
                        })?;
         136  +
                        container
         137  +
                    });
         138  +
                }
         139  +
                _ => {}
         140  +
            }
         141  +
            Ok(())
         142  +
        })?;
         143  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         144  +
        builder.job_id = builder.job_id.or(Some(String::new()));
         145  +
        builder.tags = builder.tags.or(Some(Vec::new()));
         146  +
        builder
         147  +
            .build()
         148  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         149  +
    }
         150  +
}
         151  +
impl PutJobTaggingInput {
         152  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         153  +
    /// Header-bound members are read directly from headers, avoiding runtime
         154  +
    /// member iteration overhead. Body members are read via the deserializer.
         155  +
    pub fn deserialize_with_response(
         156  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         157  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         158  +
        _status: u16,
         159  +
        _body: &[u8],
         160  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         161  +
        #[allow(unused_variables, unused_mut)]
         162  +
        let mut builder = Self::builder();
         163  +
        if let Some(val) = headers.get("x-amz-account-id") {
         164  +
            builder.account_id = Some(val.to_string());
         165  +
        }
         166  +
        #[allow(
         167  +
            unused_variables,
         168  +
            unreachable_code,
         169  +
            clippy::single_match,
         170  +
            clippy::match_single_binding,
         171  +
            clippy::diverging_sub_expression
         172  +
        )]
         173  +
        deserializer.read_struct(&PUTJOBTAGGINGINPUT_SCHEMA, &mut |member, deser| {
         174  +
            match member.member_index() {
         175  +
                Some(0) => { /* read from headers above */ }
         176  +
                Some(1) => {
         177  +
                    builder.job_id = Some(deser.read_string(member)?);
         178  +
                }
         179  +
                Some(2) => {
         180  +
                    builder.tags = Some({
         181  +
                        let mut container = Vec::new();
         182  +
                        deser.read_list(member, &mut |deser| {
         183  +
                            container.push(crate::types::S3Tag::deserialize(deser)?);
         184  +
                            Ok(())
         185  +
                        })?;
         186  +
                        container
  139    187   
                    });
  140    188   
                }
  141    189   
                _ => {}
  142    190   
            }
  143    191   
            Ok(())
  144    192   
        })?;
  145    193   
        builder
  146    194   
            .build()
  147    195   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  148    196   
    }

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

@@ -1,1 +80,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct PutJobTaggingOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static PUTJOBTAGGINGOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.s3control.synthetic#PutJobTaggingOutput",
   10     10   
    "com.amazonaws.s3control.synthetic",
   11     11   
    "PutJobTaggingOutput",
   12     12   
);
   13         -
static PUTJOBTAGGINGOUTPUT_SCHEMA: ::aws_smithy_schema::Schema =
   14         -
    ::aws_smithy_schema::Schema::new_struct(PUTJOBTAGGINGOUTPUT_SCHEMA_ID, ::aws_smithy_schema::ShapeType::Structure, &[]);
          13  +
static PUTJOBTAGGINGOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
          20  +
static PUTJOBTAGGINGOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          21  +
    PUTJOBTAGGINGOUTPUT_SCHEMA_ID,
          22  +
    ::aws_smithy_schema::ShapeType::Structure,
          23  +
    &[&PUTJOBTAGGINGOUTPUT_MEMBER__REQUEST_ID],
          24  +
);
   15     25   
impl PutJobTaggingOutput {
   16     26   
    /// The schema for this shape.
   17     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PUTJOBTAGGINGOUTPUT_SCHEMA;
   18     28   
}
   19     29   
impl ::aws_smithy_schema::serde::SerializableStruct for PutJobTaggingOutput {
   20     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   21     31   
    fn serialize_members(
   22     32   
        &self,
   23     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   24     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   25     35   
        Ok(())
   26     36   
    }
   27     37   
}
   28     38   
impl PutJobTaggingOutput {
   29     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   30         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   31         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   32     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   33     43   
        #[allow(unused_variables, unused_mut)]
   34     44   
        let mut builder = Self::builder();
   35     45   
        #[allow(
   36     46   
            unused_variables,
   37     47   
            unreachable_code,
   38     48   
            clippy::single_match,
   39     49   
            clippy::match_single_binding,
   40     50   
            clippy::diverging_sub_expression
   41     51   
        )]
   42         -
        deserializer.read_struct(&PUTJOBTAGGINGOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&PUTJOBTAGGINGOUTPUT_SCHEMA, &mut |member, deser| {
   43     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   44     57   
                _ => {}
   45     58   
            }
   46     59   
            Ok(())
   47     60   
        })?;
   48     61   
        Ok(builder.build())
   49     62   
    }
   50     63   
}
          64  +
impl PutJobTaggingOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   51     82   
impl ::aws_types::request_id::RequestId for PutJobTaggingOutput {
   52     83   
    fn request_id(&self) -> Option<&str> {
   53     84   
        self._request_id.as_deref()
   54     85   
    }
   55     86   
}
   56     87   
impl PutJobTaggingOutput {
   57     88   
    /// Creates a new builder-style object to manufacture [`PutJobTaggingOutput`](crate::operation::put_job_tagging::PutJobTaggingOutput).
   58     89   
    pub fn builder() -> crate::operation::put_job_tagging::builders::PutJobTaggingOutputBuilder {
   59     90   
        crate::operation::put_job_tagging::builders::PutJobTaggingOutputBuilder::default()
   60     91   
    }