AWS SDK

AWS SDK

rev. 163d4d6410694aaf071424777ecbecd050925f36 (ignoring whitespace)

Files changed:

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

@@ -1,1 +96,143 @@
   18     18   
    "com.amazonaws.s3control.synthetic",
   19     19   
    "GetAccessPointPolicyStatusOutput",
   20     20   
);
   21     21   
static GETACCESSPOINTPOLICYSTATUSOUTPUT_MEMBER_POLICY_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.s3control.synthetic#GetAccessPointPolicyStatusOutput$PolicyStatus",
   24     24   
        "com.amazonaws.s3control.synthetic",
   25     25   
        "GetAccessPointPolicyStatusOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::Structure,
   28         -
    "policy_status",
          28  +
    "PolicyStatus",
   29     29   
    0,
   30     30   
);
          31  +
static GETACCESSPOINTPOLICYSTATUSOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          32  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          33  +
    ::aws_smithy_schema::ShapeType::String,
          34  +
    "request_id",
          35  +
    1,
          36  +
)
          37  +
.with_http_header("x-amzn-requestid");
   31     38   
static GETACCESSPOINTPOLICYSTATUSOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   32     39   
    GETACCESSPOINTPOLICYSTATUSOUTPUT_SCHEMA_ID,
   33     40   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    &[&GETACCESSPOINTPOLICYSTATUSOUTPUT_MEMBER_POLICY_STATUS],
          41  +
    &[
          42  +
        &GETACCESSPOINTPOLICYSTATUSOUTPUT_MEMBER_POLICY_STATUS,
          43  +
        &GETACCESSPOINTPOLICYSTATUSOUTPUT_MEMBER__REQUEST_ID,
          44  +
    ],
   35     45   
);
   36     46   
impl GetAccessPointPolicyStatusOutput {
   37     47   
    /// The schema for this shape.
   38     48   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETACCESSPOINTPOLICYSTATUSOUTPUT_SCHEMA;
   39     49   
}
   40     50   
impl ::aws_smithy_schema::serde::SerializableStruct for GetAccessPointPolicyStatusOutput {
   41     51   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   42     52   
    fn serialize_members(
   43     53   
        &self,
   44     54   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   45     55   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     56   
        if let Some(ref val) = self.policy_status {
   47     57   
            ser.write_struct(&GETACCESSPOINTPOLICYSTATUSOUTPUT_MEMBER_POLICY_STATUS, val)?;
   48     58   
        }
   49     59   
        Ok(())
   50     60   
    }
   51     61   
}
   52     62   
impl GetAccessPointPolicyStatusOutput {
   53     63   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   54         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   55         -
        deserializer: &mut D,
          64  +
    pub fn deserialize(
          65  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   56     66   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   57     67   
        #[allow(unused_variables, unused_mut)]
   58     68   
        let mut builder = Self::builder();
   59     69   
        #[allow(
   60     70   
            unused_variables,
   61     71   
            unreachable_code,
   62     72   
            clippy::single_match,
   63     73   
            clippy::match_single_binding,
   64     74   
            clippy::diverging_sub_expression
   65     75   
        )]
   66         -
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSOUTPUT_SCHEMA, (), |_, member, deser| {
          76  +
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSOUTPUT_SCHEMA, &mut |member, deser| {
          77  +
            match member.member_index() {
          78  +
                Some(0) => {
          79  +
                    builder.policy_status = Some(crate::types::PolicyStatus::deserialize(deser)?);
          80  +
                }
          81  +
                Some(1) => {
          82  +
                    builder._request_id = Some(deser.read_string(member)?);
          83  +
                }
          84  +
                _ => {}
          85  +
            }
          86  +
            Ok(())
          87  +
        })?;
          88  +
        Ok(builder.build())
          89  +
    }
          90  +
}
          91  +
impl GetAccessPointPolicyStatusOutput {
          92  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          93  +
    /// Header-bound members are read directly from headers, avoiding runtime
          94  +
    /// member iteration overhead. Body members are read via the deserializer.
          95  +
    pub fn deserialize_with_response(
          96  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          97  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          98  +
        _status: u16,
          99  +
        _body: &[u8],
         100  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         101  +
        #[allow(unused_variables, unused_mut)]
         102  +
        let mut builder = Self::builder();
         103  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         104  +
            builder._request_id = Some(val.to_string());
         105  +
        }
         106  +
        #[allow(
         107  +
            unused_variables,
         108  +
            unreachable_code,
         109  +
            clippy::single_match,
         110  +
            clippy::match_single_binding,
         111  +
            clippy::diverging_sub_expression
         112  +
        )]
         113  +
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSOUTPUT_SCHEMA, &mut |member, deser| {
   67    114   
            match member.member_index() {
   68    115   
                Some(0) => {
   69    116   
                    builder.policy_status = Some(crate::types::PolicyStatus::deserialize(deser)?);
   70    117   
                }
   71    118   
                _ => {}
   72    119   
            }
   73    120   
            Ok(())
   74    121   
        })?;
   75    122   
        Ok(builder.build())
   76    123   
    }

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

@@ -1,1 +40,46 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `GetAccessPointPolicyStatusForObjectLambda`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct GetAccessPointPolicyStatusForObjectLambda;
    6      6   
impl GetAccessPointPolicyStatusForObjectLambda {
    7      7   
    /// Creates a new `GetAccessPointPolicyStatusForObjectLambda`
    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 =
          13  +
        crate::operation::get_access_point_policy_status_for_object_lambda::GetAccessPointPolicyStatusForObjectLambdaInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::get_access_point_policy_status_for_object_lambda::GetAccessPointPolicyStatusForObjectLambdaOutput::SCHEMA;
   11     17   
    pub(crate) async fn orchestrate(
   12     18   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     19   
        input: crate::operation::get_access_point_policy_status_for_object_lambda::GetAccessPointPolicyStatusForObjectLambdaInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::get_access_point_policy_status_for_object_lambda::GetAccessPointPolicyStatusForObjectLambdaOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::get_access_point_policy_status_for_object_lambda::GetAccessPointPolicyStatusForObjectLambdaError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -128,134 +187,194 @@
  148    154   
        ::std::borrow::Cow::Owned(rcb)
  149    155   
    }
  150    156   
}
  151    157   
  152    158   
#[derive(Debug)]
  153    159   
struct GetAccessPointPolicyStatusForObjectLambdaResponseDeserializer;
  154    160   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for GetAccessPointPolicyStatusForObjectLambdaResponseDeserializer {
  155    161   
    fn deserialize_nonstreaming(
  156    162   
        &self,
  157    163   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         164  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  158    165   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  159    166   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  160    167   
        let headers = response.headers();
  161    168   
        let body = response.body().bytes().expect("body loaded");
  162    169   
        #[allow(unused_mut)]
  163    170   
        let mut force_error = false;
  164    171   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  165    172   
        let parse_result = if !success && status != 200 || force_error {
  166    173   
            crate::protocol_serde::shape_get_access_point_policy_status_for_object_lambda::de_get_access_point_policy_status_for_object_lambda_http_error(status, headers, body)
  167    174   
        } else {

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

@@ -3,3 +131,175 @@
   23     23   
    "com.amazonaws.s3control.synthetic",
   24     24   
    "GetAccessPointPolicyStatusForObjectLambdaInput",
   25     25   
);
   26     26   
static GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   27     27   
    ::aws_smithy_schema::ShapeId::from_static(
   28     28   
        "com.amazonaws.s3control.synthetic#GetAccessPointPolicyStatusForObjectLambdaInput$AccountId",
   29     29   
        "com.amazonaws.s3control.synthetic",
   30     30   
        "GetAccessPointPolicyStatusForObjectLambdaInput",
   31     31   
    ),
   32     32   
    ::aws_smithy_schema::ShapeType::String,
   33         -
    "account_id",
          33  +
    "AccountId",
   34     34   
    0,
   35     35   
)
   36     36   
.with_host_label()
   37     37   
.with_http_header("x-amz-account-id");
   38     38   
static GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_MEMBER_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   39     39   
    ::aws_smithy_schema::ShapeId::from_static(
   40     40   
        "com.amazonaws.s3control.synthetic#GetAccessPointPolicyStatusForObjectLambdaInput$Name",
   41     41   
        "com.amazonaws.s3control.synthetic",
   42     42   
        "GetAccessPointPolicyStatusForObjectLambdaInput",
   43     43   
    ),
   44     44   
    ::aws_smithy_schema::ShapeType::String,
   45         -
    "name",
          45  +
    "Name",
   46     46   
    1,
   47     47   
)
   48     48   
.with_http_label();
   49     49   
static GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   50     50   
    GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_SCHEMA_ID,
   51     51   
    ::aws_smithy_schema::ShapeType::Structure,
   52     52   
    &[
   53     53   
        &GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_MEMBER_ACCOUNT_ID,
   54     54   
        &GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_MEMBER_NAME,
   55     55   
    ],
   56         -
);
          56  +
)
          57  +
.with_http(aws_smithy_schema::traits::HttpTrait::new(
          58  +
    "GET",
          59  +
    "/v20180820/accesspointforobjectlambda/{Name}/policyStatus",
          60  +
    None,
          61  +
));
   57     62   
impl GetAccessPointPolicyStatusForObjectLambdaInput {
   58     63   
    /// The schema for this shape.
   59     64   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_SCHEMA;
   60     65   
}
   61     66   
impl ::aws_smithy_schema::serde::SerializableStruct for GetAccessPointPolicyStatusForObjectLambdaInput {
   62     67   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   63     68   
    fn serialize_members(
   64     69   
        &self,
   65     70   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   66     71   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   67     72   
        if let Some(ref val) = self.account_id {
   68     73   
            ser.write_string(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_MEMBER_ACCOUNT_ID, val)?;
   69     74   
        }
   70     75   
        if let Some(ref val) = self.name {
   71     76   
            ser.write_string(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_MEMBER_NAME, val)?;
   72     77   
        }
   73     78   
        Ok(())
   74     79   
    }
   75     80   
}
   76     81   
impl GetAccessPointPolicyStatusForObjectLambdaInput {
   77     82   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   78         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   79         -
        deserializer: &mut D,
          83  +
    pub fn deserialize(
          84  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   80     85   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   81     86   
        #[allow(unused_variables, unused_mut)]
   82     87   
        let mut builder = Self::builder();
   83     88   
        #[allow(
   84     89   
            unused_variables,
   85     90   
            unreachable_code,
   86     91   
            clippy::single_match,
   87     92   
            clippy::match_single_binding,
   88     93   
            clippy::diverging_sub_expression
   89     94   
        )]
   90         -
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_SCHEMA, (), |_, member, deser| {
          95  +
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_SCHEMA, &mut |member, deser| {
   91     96   
            match member.member_index() {
   92     97   
                Some(0) => {
   93     98   
                    builder.account_id = Some(deser.read_string(member)?);
   94     99   
                }
   95    100   
                Some(1) => {
   96    101   
                    builder.name = Some(deser.read_string(member)?);
   97    102   
                }
   98    103   
                _ => {}
   99    104   
            }
  100    105   
            Ok(())
  101    106   
        })?;
         107  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         108  +
        builder.name = builder.name.or(Some(String::new()));
         109  +
        builder
         110  +
            .build()
         111  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         112  +
    }
         113  +
}
         114  +
impl GetAccessPointPolicyStatusForObjectLambdaInput {
         115  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         116  +
    /// Header-bound members are read directly from headers, avoiding runtime
         117  +
    /// member iteration overhead. Body members are read via the deserializer.
         118  +
    pub fn deserialize_with_response(
         119  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         120  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         121  +
        _status: u16,
         122  +
        _body: &[u8],
         123  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         124  +
        #[allow(unused_variables, unused_mut)]
         125  +
        let mut builder = Self::builder();
         126  +
        if let Some(val) = headers.get("x-amz-account-id") {
         127  +
            builder.account_id = Some(val.to_string());
         128  +
        }
         129  +
        #[allow(
         130  +
            unused_variables,
         131  +
            unreachable_code,
         132  +
            clippy::single_match,
         133  +
            clippy::match_single_binding,
         134  +
            clippy::diverging_sub_expression
         135  +
        )]
         136  +
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAINPUT_SCHEMA, &mut |member, deser| {
         137  +
            match member.member_index() {
         138  +
                Some(0) => { /* read from headers above */ }
         139  +
                Some(1) => {
         140  +
                    builder.name = Some(deser.read_string(member)?);
         141  +
                }
         142  +
                _ => {}
         143  +
            }
         144  +
            Ok(())
         145  +
        })?;
  102    146   
        builder
  103    147   
            .build()
  104    148   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  105    149   
    }
  106    150   
}
  107    151   
impl GetAccessPointPolicyStatusForObjectLambdaInput {
  108    152   
    /// Creates a new builder-style object to manufacture [`GetAccessPointPolicyStatusForObjectLambdaInput`](crate::operation::get_access_point_policy_status_for_object_lambda::GetAccessPointPolicyStatusForObjectLambdaInput).
  109    153   
    pub fn builder(
  110    154   
    ) -> crate::operation::get_access_point_policy_status_for_object_lambda::builders::GetAccessPointPolicyStatusForObjectLambdaInputBuilder {
  111    155   
        crate::operation::get_access_point_policy_status_for_object_lambda::builders::GetAccessPointPolicyStatusForObjectLambdaInputBuilder::default()

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

@@ -1,1 +96,143 @@
   18     18   
    "com.amazonaws.s3control.synthetic",
   19     19   
    "GetAccessPointPolicyStatusForObjectLambdaOutput",
   20     20   
);
   21     21   
static GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_MEMBER_POLICY_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.s3control.synthetic#GetAccessPointPolicyStatusForObjectLambdaOutput$PolicyStatus",
   24     24   
        "com.amazonaws.s3control.synthetic",
   25     25   
        "GetAccessPointPolicyStatusForObjectLambdaOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::Structure,
   28         -
    "policy_status",
          28  +
    "PolicyStatus",
   29     29   
    0,
   30     30   
);
          31  +
static GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          32  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          33  +
    ::aws_smithy_schema::ShapeType::String,
          34  +
    "request_id",
          35  +
    1,
          36  +
)
          37  +
.with_http_header("x-amzn-requestid");
   31     38   
static GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   32     39   
    GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_SCHEMA_ID,
   33     40   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    &[&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_MEMBER_POLICY_STATUS],
          41  +
    &[
          42  +
        &GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_MEMBER_POLICY_STATUS,
          43  +
        &GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_MEMBER__REQUEST_ID,
          44  +
    ],
   35     45   
);
   36     46   
impl GetAccessPointPolicyStatusForObjectLambdaOutput {
   37     47   
    /// The schema for this shape.
   38     48   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_SCHEMA;
   39     49   
}
   40     50   
impl ::aws_smithy_schema::serde::SerializableStruct for GetAccessPointPolicyStatusForObjectLambdaOutput {
   41     51   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   42     52   
    fn serialize_members(
   43     53   
        &self,
   44     54   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   45     55   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     56   
        if let Some(ref val) = self.policy_status {
   47     57   
            ser.write_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_MEMBER_POLICY_STATUS, val)?;
   48     58   
        }
   49     59   
        Ok(())
   50     60   
    }
   51     61   
}
   52     62   
impl GetAccessPointPolicyStatusForObjectLambdaOutput {
   53     63   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   54         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   55         -
        deserializer: &mut D,
          64  +
    pub fn deserialize(
          65  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   56     66   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   57     67   
        #[allow(unused_variables, unused_mut)]
   58     68   
        let mut builder = Self::builder();
   59     69   
        #[allow(
   60     70   
            unused_variables,
   61     71   
            unreachable_code,
   62     72   
            clippy::single_match,
   63     73   
            clippy::match_single_binding,
   64     74   
            clippy::diverging_sub_expression
   65     75   
        )]
   66         -
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_SCHEMA, (), |_, member, deser| {
          76  +
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_SCHEMA, &mut |member, deser| {
          77  +
            match member.member_index() {
          78  +
                Some(0) => {
          79  +
                    builder.policy_status = Some(crate::types::PolicyStatus::deserialize(deser)?);
          80  +
                }
          81  +
                Some(1) => {
          82  +
                    builder._request_id = Some(deser.read_string(member)?);
          83  +
                }
          84  +
                _ => {}
          85  +
            }
          86  +
            Ok(())
          87  +
        })?;
          88  +
        Ok(builder.build())
          89  +
    }
          90  +
}
          91  +
impl GetAccessPointPolicyStatusForObjectLambdaOutput {
          92  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          93  +
    /// Header-bound members are read directly from headers, avoiding runtime
          94  +
    /// member iteration overhead. Body members are read via the deserializer.
          95  +
    pub fn deserialize_with_response(
          96  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          97  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          98  +
        _status: u16,
          99  +
        _body: &[u8],
         100  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         101  +
        #[allow(unused_variables, unused_mut)]
         102  +
        let mut builder = Self::builder();
         103  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         104  +
            builder._request_id = Some(val.to_string());
         105  +
        }
         106  +
        #[allow(
         107  +
            unused_variables,
         108  +
            unreachable_code,
         109  +
            clippy::single_match,
         110  +
            clippy::match_single_binding,
         111  +
            clippy::diverging_sub_expression
         112  +
        )]
         113  +
        deserializer.read_struct(&GETACCESSPOINTPOLICYSTATUSFOROBJECTLAMBDAOUTPUT_SCHEMA, &mut |member, deser| {
   67    114   
            match member.member_index() {
   68    115   
                Some(0) => {
   69    116   
                    builder.policy_status = Some(crate::types::PolicyStatus::deserialize(deser)?);
   70    117   
                }
   71    118   
                _ => {}
   72    119   
            }
   73    120   
            Ok(())
   74    121   
        })?;
   75    122   
        Ok(builder.build())
   76    123   
    }

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/get_access_point_scope.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 `GetAccessPointScope`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct GetAccessPointScope;
    6      6   
impl GetAccessPointScope {
    7      7   
    /// Creates a new `GetAccessPointScope`
    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::get_access_point_scope::GetAccessPointScopeInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::get_access_point_scope::GetAccessPointScopeOutput::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::get_access_point_scope::GetAccessPointScopeInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::get_access_point_scope::GetAccessPointScopeOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::get_access_point_scope::GetAccessPointScopeError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -121,125 +180,185 @@
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct GetAccessPointScopeResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for GetAccessPointScopeResponseDeserializer {
  148    152   
    fn deserialize_nonstreaming(
  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_get_access_point_scope::de_get_access_point_scope_http_error(status, headers, body)
  160    165   
        } else {

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

@@ -3,3 +128,172 @@
   23     23   
    "com.amazonaws.s3control.synthetic",
   24     24   
    "GetAccessPointScopeInput",
   25     25   
);
   26     26   
static GETACCESSPOINTSCOPEINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   27     27   
    ::aws_smithy_schema::ShapeId::from_static(
   28     28   
        "com.amazonaws.s3control.synthetic#GetAccessPointScopeInput$AccountId",
   29     29   
        "com.amazonaws.s3control.synthetic",
   30     30   
        "GetAccessPointScopeInput",
   31     31   
    ),
   32     32   
    ::aws_smithy_schema::ShapeType::String,
   33         -
    "account_id",
          33  +
    "AccountId",
   34     34   
    0,
   35     35   
)
   36     36   
.with_host_label()
   37     37   
.with_http_header("x-amz-account-id");
   38     38   
static GETACCESSPOINTSCOPEINPUT_MEMBER_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   39     39   
    ::aws_smithy_schema::ShapeId::from_static(
   40     40   
        "com.amazonaws.s3control.synthetic#GetAccessPointScopeInput$Name",
   41     41   
        "com.amazonaws.s3control.synthetic",
   42     42   
        "GetAccessPointScopeInput",
   43     43   
    ),
   44     44   
    ::aws_smithy_schema::ShapeType::String,
   45         -
    "name",
          45  +
    "Name",
   46     46   
    1,
   47     47   
)
   48     48   
.with_http_label();
   49     49   
static GETACCESSPOINTSCOPEINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   50     50   
    GETACCESSPOINTSCOPEINPUT_SCHEMA_ID,
   51     51   
    ::aws_smithy_schema::ShapeType::Structure,
   52     52   
    &[&GETACCESSPOINTSCOPEINPUT_MEMBER_ACCOUNT_ID, &GETACCESSPOINTSCOPEINPUT_MEMBER_NAME],
   53         -
);
          53  +
)
          54  +
.with_http(aws_smithy_schema::traits::HttpTrait::new(
          55  +
    "GET",
          56  +
    "/v20180820/accesspoint/{Name}/scope",
          57  +
    None,
          58  +
));
   54     59   
impl GetAccessPointScopeInput {
   55     60   
    /// The schema for this shape.
   56     61   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETACCESSPOINTSCOPEINPUT_SCHEMA;
   57     62   
}
   58     63   
impl ::aws_smithy_schema::serde::SerializableStruct for GetAccessPointScopeInput {
   59     64   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   60     65   
    fn serialize_members(
   61     66   
        &self,
   62     67   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   63     68   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   64     69   
        if let Some(ref val) = self.account_id {
   65     70   
            ser.write_string(&GETACCESSPOINTSCOPEINPUT_MEMBER_ACCOUNT_ID, val)?;
   66     71   
        }
   67     72   
        if let Some(ref val) = self.name {
   68     73   
            ser.write_string(&GETACCESSPOINTSCOPEINPUT_MEMBER_NAME, val)?;
   69     74   
        }
   70     75   
        Ok(())
   71     76   
    }
   72     77   
}
   73     78   
impl GetAccessPointScopeInput {
   74     79   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   75         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   76         -
        deserializer: &mut D,
          80  +
    pub fn deserialize(
          81  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   77     82   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   78     83   
        #[allow(unused_variables, unused_mut)]
   79     84   
        let mut builder = Self::builder();
   80     85   
        #[allow(
   81     86   
            unused_variables,
   82     87   
            unreachable_code,
   83     88   
            clippy::single_match,
   84     89   
            clippy::match_single_binding,
   85     90   
            clippy::diverging_sub_expression
   86     91   
        )]
   87         -
        deserializer.read_struct(&GETACCESSPOINTSCOPEINPUT_SCHEMA, (), |_, member, deser| {
          92  +
        deserializer.read_struct(&GETACCESSPOINTSCOPEINPUT_SCHEMA, &mut |member, deser| {
   88     93   
            match member.member_index() {
   89     94   
                Some(0) => {
   90     95   
                    builder.account_id = Some(deser.read_string(member)?);
   91     96   
                }
   92     97   
                Some(1) => {
   93     98   
                    builder.name = Some(deser.read_string(member)?);
   94     99   
                }
   95    100   
                _ => {}
   96    101   
            }
   97    102   
            Ok(())
   98    103   
        })?;
         104  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         105  +
        builder.name = builder.name.or(Some(String::new()));
         106  +
        builder
         107  +
            .build()
         108  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         109  +
    }
         110  +
}
         111  +
impl GetAccessPointScopeInput {
         112  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         113  +
    /// Header-bound members are read directly from headers, avoiding runtime
         114  +
    /// member iteration overhead. Body members are read via the deserializer.
         115  +
    pub fn deserialize_with_response(
         116  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         117  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         118  +
        _status: u16,
         119  +
        _body: &[u8],
         120  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         121  +
        #[allow(unused_variables, unused_mut)]
         122  +
        let mut builder = Self::builder();
         123  +
        if let Some(val) = headers.get("x-amz-account-id") {
         124  +
            builder.account_id = Some(val.to_string());
         125  +
        }
         126  +
        #[allow(
         127  +
            unused_variables,
         128  +
            unreachable_code,
         129  +
            clippy::single_match,
         130  +
            clippy::match_single_binding,
         131  +
            clippy::diverging_sub_expression
         132  +
        )]
         133  +
        deserializer.read_struct(&GETACCESSPOINTSCOPEINPUT_SCHEMA, &mut |member, deser| {
         134  +
            match member.member_index() {
         135  +
                Some(0) => { /* read from headers above */ }
         136  +
                Some(1) => {
         137  +
                    builder.name = Some(deser.read_string(member)?);
         138  +
                }
         139  +
                _ => {}
         140  +
            }
         141  +
            Ok(())
         142  +
        })?;
   99    143   
        builder
  100    144   
            .build()
  101    145   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  102    146   
    }
  103    147   
}
  104    148   
impl GetAccessPointScopeInput {
  105    149   
    /// Creates a new builder-style object to manufacture [`GetAccessPointScopeInput`](crate::operation::get_access_point_scope::GetAccessPointScopeInput).
  106    150   
    pub fn builder() -> crate::operation::get_access_point_scope::builders::GetAccessPointScopeInputBuilder {
  107    151   
        crate::operation::get_access_point_scope::builders::GetAccessPointScopeInputBuilder::default()
  108    152   
    }

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

@@ -1,1 +96,140 @@
   18     18   
    "com.amazonaws.s3control.synthetic",
   19     19   
    "GetAccessPointScopeOutput",
   20     20   
);
   21     21   
static GETACCESSPOINTSCOPEOUTPUT_MEMBER_SCOPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.s3control.synthetic#GetAccessPointScopeOutput$Scope",
   24     24   
        "com.amazonaws.s3control.synthetic",
   25     25   
        "GetAccessPointScopeOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::Structure,
   28         -
    "scope",
          28  +
    "Scope",
   29     29   
    0,
   30     30   
);
          31  +
static GETACCESSPOINTSCOPEOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          32  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          33  +
    ::aws_smithy_schema::ShapeType::String,
          34  +
    "request_id",
          35  +
    1,
          36  +
)
          37  +
.with_http_header("x-amzn-requestid");
   31     38   
static GETACCESSPOINTSCOPEOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   32     39   
    GETACCESSPOINTSCOPEOUTPUT_SCHEMA_ID,
   33     40   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    &[&GETACCESSPOINTSCOPEOUTPUT_MEMBER_SCOPE],
          41  +
    &[&GETACCESSPOINTSCOPEOUTPUT_MEMBER_SCOPE, &GETACCESSPOINTSCOPEOUTPUT_MEMBER__REQUEST_ID],
   35     42   
);
   36     43   
impl GetAccessPointScopeOutput {
   37     44   
    /// The schema for this shape.
   38     45   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETACCESSPOINTSCOPEOUTPUT_SCHEMA;
   39     46   
}
   40     47   
impl ::aws_smithy_schema::serde::SerializableStruct for GetAccessPointScopeOutput {
   41     48   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   42     49   
    fn serialize_members(
   43     50   
        &self,
   44     51   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   45     52   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     53   
        if let Some(ref val) = self.scope {
   47     54   
            ser.write_struct(&GETACCESSPOINTSCOPEOUTPUT_MEMBER_SCOPE, val)?;
   48     55   
        }
   49     56   
        Ok(())
   50     57   
    }
   51     58   
}
   52     59   
impl GetAccessPointScopeOutput {
   53     60   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   54         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   55         -
        deserializer: &mut D,
          61  +
    pub fn deserialize(
          62  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   56     63   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   57     64   
        #[allow(unused_variables, unused_mut)]
   58     65   
        let mut builder = Self::builder();
   59     66   
        #[allow(
   60     67   
            unused_variables,
   61     68   
            unreachable_code,
   62     69   
            clippy::single_match,
   63     70   
            clippy::match_single_binding,
   64     71   
            clippy::diverging_sub_expression
   65     72   
        )]
   66         -
        deserializer.read_struct(&GETACCESSPOINTSCOPEOUTPUT_SCHEMA, (), |_, member, deser| {
          73  +
        deserializer.read_struct(&GETACCESSPOINTSCOPEOUTPUT_SCHEMA, &mut |member, deser| {
          74  +
            match member.member_index() {
          75  +
                Some(0) => {
          76  +
                    builder.scope = Some(crate::types::Scope::deserialize(deser)?);
          77  +
                }
          78  +
                Some(1) => {
          79  +
                    builder._request_id = Some(deser.read_string(member)?);
          80  +
                }
          81  +
                _ => {}
          82  +
            }
          83  +
            Ok(())
          84  +
        })?;
          85  +
        Ok(builder.build())
          86  +
    }
          87  +
}
          88  +
impl GetAccessPointScopeOutput {
          89  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          90  +
    /// Header-bound members are read directly from headers, avoiding runtime
          91  +
    /// member iteration overhead. Body members are read via the deserializer.
          92  +
    pub fn deserialize_with_response(
          93  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          94  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          95  +
        _status: u16,
          96  +
        _body: &[u8],
          97  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          98  +
        #[allow(unused_variables, unused_mut)]
          99  +
        let mut builder = Self::builder();
         100  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         101  +
            builder._request_id = Some(val.to_string());
         102  +
        }
         103  +
        #[allow(
         104  +
            unused_variables,
         105  +
            unreachable_code,
         106  +
            clippy::single_match,
         107  +
            clippy::match_single_binding,
         108  +
            clippy::diverging_sub_expression
         109  +
        )]
         110  +
        deserializer.read_struct(&GETACCESSPOINTSCOPEOUTPUT_SCHEMA, &mut |member, deser| {
   67    111   
            match member.member_index() {
   68    112   
                Some(0) => {
   69    113   
                    builder.scope = Some(crate::types::Scope::deserialize(deser)?);
   70    114   
                }
   71    115   
                _ => {}
   72    116   
            }
   73    117   
            Ok(())
   74    118   
        })?;
   75    119   
        Ok(builder.build())
   76    120   
    }

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/get_bucket.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 `GetBucket`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct GetBucket;
    6      6   
impl GetBucket {
    7      7   
    /// Creates a new `GetBucket`
    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::get_bucket::GetBucketInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::get_bucket::GetBucketOutput::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::get_bucket::GetBucketInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::get_bucket::GetBucketOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::get_bucket::GetBucketError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +177,182 @@
  138    142   
        ::std::borrow::Cow::Owned(rcb)
  139    143   
    }
  140    144   
}
  141    145   
  142    146   
#[derive(Debug)]
  143    147   
struct GetBucketResponseDeserializer;
  144    148   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for GetBucketResponseDeserializer {
  145    149   
    fn deserialize_nonstreaming(
  146    150   
        &self,
  147    151   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         152  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  148    153   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  149    154   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  150    155   
        let headers = response.headers();
  151    156   
        let body = response.body().bytes().expect("body loaded");
  152    157   
        #[allow(unused_mut)]
  153    158   
        let mut force_error = false;
  154    159   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  155    160   
        let parse_result = if !success && status != 200 || force_error {
  156    161   
            crate::protocol_serde::shape_get_bucket::de_get_bucket_http_error(status, headers, body)
  157    162   
        } else {

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

@@ -25,25 +150,190 @@
   45     45   
    "com.amazonaws.s3control.synthetic",
   46     46   
    "GetBucketInput",
   47     47   
);
   48     48   
static GETBUCKETINPUT_MEMBER_ACCOUNT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   49     49   
    ::aws_smithy_schema::ShapeId::from_static(
   50     50   
        "com.amazonaws.s3control.synthetic#GetBucketInput$AccountId",
   51     51   
        "com.amazonaws.s3control.synthetic",
   52     52   
        "GetBucketInput",
   53     53   
    ),
   54     54   
    ::aws_smithy_schema::ShapeType::String,
   55         -
    "account_id",
          55  +
    "AccountId",
   56     56   
    0,
   57     57   
)
   58     58   
.with_host_label()
   59     59   
.with_http_header("x-amz-account-id");
   60     60   
static GETBUCKETINPUT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   61     61   
    ::aws_smithy_schema::ShapeId::from_static(
   62     62   
        "com.amazonaws.s3control.synthetic#GetBucketInput$Bucket",
   63     63   
        "com.amazonaws.s3control.synthetic",
   64     64   
        "GetBucketInput",
   65     65   
    ),
   66     66   
    ::aws_smithy_schema::ShapeType::String,
   67         -
    "bucket",
          67  +
    "Bucket",
   68     68   
    1,
   69     69   
)
   70     70   
.with_http_label();
   71     71   
static GETBUCKETINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   72     72   
    GETBUCKETINPUT_SCHEMA_ID,
   73     73   
    ::aws_smithy_schema::ShapeType::Structure,
   74     74   
    &[&GETBUCKETINPUT_MEMBER_ACCOUNT_ID, &GETBUCKETINPUT_MEMBER_BUCKET],
   75         -
);
          75  +
)
          76  +
.with_http(aws_smithy_schema::traits::HttpTrait::new("GET", "/v20180820/bucket/{Bucket}", None));
   76     77   
impl GetBucketInput {
   77     78   
    /// The schema for this shape.
   78     79   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETBUCKETINPUT_SCHEMA;
   79     80   
}
   80     81   
impl ::aws_smithy_schema::serde::SerializableStruct for GetBucketInput {
   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(&GETBUCKETINPUT_MEMBER_ACCOUNT_ID, val)?;
   88     89   
        }
   89     90   
        if let Some(ref val) = self.bucket {
   90     91   
            ser.write_string(&GETBUCKETINPUT_MEMBER_BUCKET, val)?;
   91     92   
        }
   92     93   
        Ok(())
   93     94   
    }
   94     95   
}
   95     96   
impl GetBucketInput {
   96     97   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   97         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   98         -
        deserializer: &mut D,
          98  +
    pub fn deserialize(
          99  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   99    100   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  100    101   
        #[allow(unused_variables, unused_mut)]
  101    102   
        let mut builder = Self::builder();
  102    103   
        #[allow(
  103    104   
            unused_variables,
  104    105   
            unreachable_code,
  105    106   
            clippy::single_match,
  106    107   
            clippy::match_single_binding,
  107    108   
            clippy::diverging_sub_expression
  108    109   
        )]
  109         -
        deserializer.read_struct(&GETBUCKETINPUT_SCHEMA, (), |_, member, deser| {
         110  +
        deserializer.read_struct(&GETBUCKETINPUT_SCHEMA, &mut |member, deser| {
  110    111   
            match member.member_index() {
  111    112   
                Some(0) => {
  112    113   
                    builder.account_id = Some(deser.read_string(member)?);
  113    114   
                }
  114    115   
                Some(1) => {
  115    116   
                    builder.bucket = Some(deser.read_string(member)?);
  116    117   
                }
  117    118   
                _ => {}
  118    119   
            }
  119    120   
            Ok(())
  120    121   
        })?;
         122  +
        builder.account_id = builder.account_id.or(Some(String::new()));
         123  +
        builder.bucket = builder.bucket.or(Some(String::new()));
         124  +
        builder
         125  +
            .build()
         126  +
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
         127  +
    }
         128  +
}
         129  +
impl GetBucketInput {
         130  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         131  +
    /// Header-bound members are read directly from headers, avoiding runtime
         132  +
    /// member iteration overhead. Body members are read via the deserializer.
         133  +
    pub fn deserialize_with_response(
         134  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         135  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         136  +
        _status: u16,
         137  +
        _body: &[u8],
         138  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         139  +
        #[allow(unused_variables, unused_mut)]
         140  +
        let mut builder = Self::builder();
         141  +
        if let Some(val) = headers.get("x-amz-account-id") {
         142  +
            builder.account_id = Some(val.to_string());
         143  +
        }
         144  +
        #[allow(
         145  +
            unused_variables,
         146  +
            unreachable_code,
         147  +
            clippy::single_match,
         148  +
            clippy::match_single_binding,
         149  +
            clippy::diverging_sub_expression
         150  +
        )]
         151  +
        deserializer.read_struct(&GETBUCKETINPUT_SCHEMA, &mut |member, deser| {
         152  +
            match member.member_index() {
         153  +
                Some(0) => { /* read from headers above */ }
         154  +
                Some(1) => {
         155  +
                    builder.bucket = Some(deser.read_string(member)?);
         156  +
                }
         157  +
                _ => {}
         158  +
            }
         159  +
            Ok(())
         160  +
        })?;
  121    161   
        builder
  122    162   
            .build()
  123    163   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  124    164   
    }
  125    165   
}
  126    166   
impl GetBucketInput {
  127    167   
    /// Creates a new builder-style object to manufacture [`GetBucketInput`](crate::operation::get_bucket::GetBucketInput).
  128    168   
    pub fn builder() -> crate::operation::get_bucket::builders::GetBucketInputBuilder {
  129    169   
        crate::operation::get_bucket::builders::GetBucketInputBuilder::default()
  130    170   
    }

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

@@ -10,10 +139,190 @@
   30     30   
    "com.amazonaws.s3control.synthetic",
   31     31   
    "GetBucketOutput",
   32     32   
);
   33     33   
static GETBUCKETOUTPUT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   34     34   
    ::aws_smithy_schema::ShapeId::from_static(
   35     35   
        "com.amazonaws.s3control.synthetic#GetBucketOutput$Bucket",
   36     36   
        "com.amazonaws.s3control.synthetic",
   37     37   
        "GetBucketOutput",
   38     38   
    ),
   39     39   
    ::aws_smithy_schema::ShapeType::String,
   40         -
    "bucket",
          40  +
    "Bucket",
   41     41   
    0,
   42     42   
);
   43     43   
static GETBUCKETOUTPUT_MEMBER_PUBLIC_ACCESS_BLOCK_ENABLED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   44     44   
    ::aws_smithy_schema::ShapeId::from_static(
   45     45   
        "com.amazonaws.s3control.synthetic#GetBucketOutput$PublicAccessBlockEnabled",
   46     46   
        "com.amazonaws.s3control.synthetic",
   47     47   
        "GetBucketOutput",
   48     48   
    ),
   49     49   
    ::aws_smithy_schema::ShapeType::Boolean,
   50         -
    "public_access_block_enabled",
          50  +
    "PublicAccessBlockEnabled",
   51     51   
    1,
   52     52   
);
   53     53   
static GETBUCKETOUTPUT_MEMBER_CREATION_DATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   54     54   
    ::aws_smithy_schema::ShapeId::from_static(
   55     55   
        "com.amazonaws.s3control.synthetic#GetBucketOutput$CreationDate",
   56     56   
        "com.amazonaws.s3control.synthetic",
   57     57   
        "GetBucketOutput",
   58     58   
    ),
   59     59   
    ::aws_smithy_schema::ShapeType::Timestamp,
   60         -
    "creation_date",
          60  +
    "CreationDate",
   61     61   
    2,
   62     62   
);
          63  +
static GETBUCKETOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          64  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          65  +
    ::aws_smithy_schema::ShapeType::String,
          66  +
    "request_id",
          67  +
    3,
          68  +
)
          69  +
.with_http_header("x-amzn-requestid");
   63     70   
static GETBUCKETOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   64     71   
    GETBUCKETOUTPUT_SCHEMA_ID,
   65     72   
    ::aws_smithy_schema::ShapeType::Structure,
   66     73   
    &[
   67     74   
        &GETBUCKETOUTPUT_MEMBER_BUCKET,
   68     75   
        &GETBUCKETOUTPUT_MEMBER_PUBLIC_ACCESS_BLOCK_ENABLED,
   69     76   
        &GETBUCKETOUTPUT_MEMBER_CREATION_DATE,
          77  +
        &GETBUCKETOUTPUT_MEMBER__REQUEST_ID,
   70     78   
    ],
   71     79   
);
   72     80   
impl GetBucketOutput {
   73     81   
    /// The schema for this shape.
   74     82   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETBUCKETOUTPUT_SCHEMA;
   75     83   
}
   76     84   
impl ::aws_smithy_schema::serde::SerializableStruct for GetBucketOutput {
   77     85   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   78     86   
    fn serialize_members(
   79     87   
        &self,
   80     88   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   81     89   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   82     90   
        if let Some(ref val) = self.bucket {
   83     91   
            ser.write_string(&GETBUCKETOUTPUT_MEMBER_BUCKET, val)?;
   84     92   
        }
   85     93   
        {
   86     94   
            let val = &self.public_access_block_enabled;
   87     95   
            ser.write_boolean(&GETBUCKETOUTPUT_MEMBER_PUBLIC_ACCESS_BLOCK_ENABLED, *val)?;
   88     96   
        }
   89     97   
        if let Some(ref val) = self.creation_date {
   90     98   
            ser.write_timestamp(&GETBUCKETOUTPUT_MEMBER_CREATION_DATE, val)?;
   91     99   
        }
   92    100   
        Ok(())
   93    101   
    }
   94    102   
}
   95    103   
impl GetBucketOutput {
   96    104   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   97         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   98         -
        deserializer: &mut D,
         105  +
    pub fn deserialize(
         106  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   99    107   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  100    108   
        #[allow(unused_variables, unused_mut)]
  101    109   
        let mut builder = Self::builder();
  102    110   
        #[allow(
  103    111   
            unused_variables,
  104    112   
            unreachable_code,
  105    113   
            clippy::single_match,
  106    114   
            clippy::match_single_binding,
  107    115   
            clippy::diverging_sub_expression
  108    116   
        )]
  109         -
        deserializer.read_struct(&GETBUCKETOUTPUT_SCHEMA, (), |_, member, deser| {
         117  +
        deserializer.read_struct(&GETBUCKETOUTPUT_SCHEMA, &mut |member, deser| {
         118  +
            match member.member_index() {
         119  +
                Some(0) => {
         120  +
                    builder.bucket = Some(deser.read_string(member)?);
         121  +
                }
         122  +
                Some(1) => {
         123  +
                    builder.public_access_block_enabled = Some(deser.read_boolean(member)?);
         124  +
                }
         125  +
                Some(2) => {
         126  +
                    builder.creation_date = Some(deser.read_timestamp(member)?);
         127  +
                }
         128  +
                Some(3) => {
         129  +
                    builder._request_id = Some(deser.read_string(member)?);
         130  +
                }
         131  +
                _ => {}
         132  +
            }
         133  +
            Ok(())
         134  +
        })?;
         135  +
        Ok(builder.build())
         136  +
    }
         137  +
}
         138  +
impl GetBucketOutput {
         139  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         140  +
    /// Header-bound members are read directly from headers, avoiding runtime
         141  +
    /// member iteration overhead. Body members are read via the deserializer.
         142  +
    pub fn deserialize_with_response(
         143  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         144  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         145  +
        _status: u16,
         146  +
        _body: &[u8],
         147  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         148  +
        #[allow(unused_variables, unused_mut)]
         149  +
        let mut builder = Self::builder();
         150  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         151  +
            builder._request_id = Some(val.to_string());
         152  +
        }
         153  +
        #[allow(
         154  +
            unused_variables,
         155  +
            unreachable_code,
         156  +
            clippy::single_match,
         157  +
            clippy::match_single_binding,
         158  +
            clippy::diverging_sub_expression
         159  +
        )]
         160  +
        deserializer.read_struct(&GETBUCKETOUTPUT_SCHEMA, &mut |member, deser| {
  110    161   
            match member.member_index() {
  111    162   
                Some(0) => {
  112    163   
                    builder.bucket = Some(deser.read_string(member)?);
  113    164   
                }
  114    165   
                Some(1) => {
  115    166   
                    builder.public_access_block_enabled = Some(deser.read_boolean(member)?);
  116    167   
                }
  117    168   
                Some(2) => {
  118    169   
                    builder.creation_date = Some(deser.read_timestamp(member)?);
  119    170   
                }

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

@@ -1,1 +40,46 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `GetBucketLifecycleConfiguration`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct GetBucketLifecycleConfiguration;
    6      6   
impl GetBucketLifecycleConfiguration {
    7      7   
    /// Creates a new `GetBucketLifecycleConfiguration`
    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 =
          13  +
        crate::operation::get_bucket_lifecycle_configuration::GetBucketLifecycleConfigurationInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::get_bucket_lifecycle_configuration::GetBucketLifecycleConfigurationOutput::SCHEMA;
   11     17   
    pub(crate) async fn orchestrate(
   12     18   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     19   
        input: crate::operation::get_bucket_lifecycle_configuration::GetBucketLifecycleConfigurationInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::get_bucket_lifecycle_configuration::GetBucketLifecycleConfigurationOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::get_bucket_lifecycle_configuration::GetBucketLifecycleConfigurationError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -127,133 +186,193 @@
  147    153   
        ::std::borrow::Cow::Owned(rcb)
  148    154   
    }
  149    155   
}
  150    156   
  151    157   
#[derive(Debug)]
  152    158   
struct GetBucketLifecycleConfigurationResponseDeserializer;
  153    159   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for GetBucketLifecycleConfigurationResponseDeserializer {
  154    160   
    fn deserialize_nonstreaming(
  155    161   
        &self,
  156    162   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         163  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  157    164   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  158    165   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  159    166   
        let headers = response.headers();
  160    167   
        let body = response.body().bytes().expect("body loaded");
  161    168   
        #[allow(unused_mut)]
  162    169   
        let mut force_error = false;
  163    170   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  164    171   
        let parse_result = if !success && status != 200 || force_error {
  165    172   
            crate::protocol_serde::shape_get_bucket_lifecycle_configuration::de_get_bucket_lifecycle_configuration_http_error(status, headers, body)
  166    173   
        } else {

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

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

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

@@ -1,1 +118,169 @@
   20     20   
    "com.amazonaws.s3control.synthetic",
   21     21   
    "GetBucketLifecycleConfigurationOutput",
   22     22   
);
   23     23   
static GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER_RULES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   24     24   
    ::aws_smithy_schema::ShapeId::from_static(
   25     25   
        "com.amazonaws.s3control.synthetic#GetBucketLifecycleConfigurationOutput$Rules",
   26     26   
        "com.amazonaws.s3control.synthetic",
   27     27   
        "GetBucketLifecycleConfigurationOutput",
   28     28   
    ),
   29     29   
    ::aws_smithy_schema::ShapeType::List,
   30         -
    "rules",
          30  +
    "Rules",
   31     31   
    0,
   32     32   
);
          33  +
static GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          34  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          35  +
    ::aws_smithy_schema::ShapeType::String,
          36  +
    "request_id",
          37  +
    1,
          38  +
)
          39  +
.with_http_header("x-amzn-requestid");
   33     40   
static GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   34     41   
    GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA_ID,
   35     42   
    ::aws_smithy_schema::ShapeType::Structure,
   36         -
    &[&GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER_RULES],
          43  +
    &[
          44  +
        &GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER_RULES,
          45  +
        &GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER__REQUEST_ID,
          46  +
    ],
   37     47   
);
   38     48   
impl GetBucketLifecycleConfigurationOutput {
   39     49   
    /// The schema for this shape.
   40     50   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA;
   41     51   
}
   42     52   
impl ::aws_smithy_schema::serde::SerializableStruct for GetBucketLifecycleConfigurationOutput {
   43     53   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   44     54   
    fn serialize_members(
   45     55   
        &self,
   46     56   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   47     57   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   48     58   
        if let Some(ref val) = self.rules {
   49     59   
            ser.write_list(
   50     60   
                &GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_MEMBER_RULES,
   51     61   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   52     62   
                    for item in val {
   53     63   
                        ser.write_struct(crate::types::LifecycleRule::SCHEMA, item)?;
   54     64   
                    }
   55     65   
                    Ok(())
   56     66   
                },
   57     67   
            )?;
   58     68   
        }
   59     69   
        Ok(())
   60     70   
    }
   61     71   
}
   62     72   
impl GetBucketLifecycleConfigurationOutput {
   63     73   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   64         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   65         -
        deserializer: &mut D,
          74  +
    pub fn deserialize(
          75  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          76  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          77  +
        #[allow(unused_variables, unused_mut)]
          78  +
        let mut builder = Self::builder();
          79  +
        #[allow(
          80  +
            unused_variables,
          81  +
            unreachable_code,
          82  +
            clippy::single_match,
          83  +
            clippy::match_single_binding,
          84  +
            clippy::diverging_sub_expression
          85  +
        )]
          86  +
        deserializer.read_struct(&GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA, &mut |member, deser| {
          87  +
            match member.member_index() {
          88  +
                Some(0) => {
          89  +
                    builder.rules = Some({
          90  +
                        let mut container = Vec::new();
          91  +
                        deser.read_list(member, &mut |deser| {
          92  +
                            container.push(crate::types::LifecycleRule::deserialize(deser)?);
          93  +
                            Ok(())
          94  +
                        })?;
          95  +
                        container
          96  +
                    });
          97  +
                }
          98  +
                Some(1) => {
          99  +
                    builder._request_id = Some(deser.read_string(member)?);
         100  +
                }
         101  +
                _ => {}
         102  +
            }
         103  +
            Ok(())
         104  +
        })?;
         105  +
        Ok(builder.build())
         106  +
    }
         107  +
}
         108  +
impl GetBucketLifecycleConfigurationOutput {
         109  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         110  +
    /// Header-bound members are read directly from headers, avoiding runtime
         111  +
    /// member iteration overhead. Body members are read via the deserializer.
         112  +
    pub fn deserialize_with_response(
         113  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         114  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         115  +
        _status: u16,
         116  +
        _body: &[u8],
   66    117   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   67    118   
        #[allow(unused_variables, unused_mut)]
   68    119   
        let mut builder = Self::builder();
         120  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         121  +
            builder._request_id = Some(val.to_string());
         122  +
        }
   69    123   
        #[allow(
   70    124   
            unused_variables,
   71    125   
            unreachable_code,
   72    126   
            clippy::single_match,
   73    127   
            clippy::match_single_binding,
   74    128   
            clippy::diverging_sub_expression
   75    129   
        )]
   76         -
        deserializer.read_struct(&GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA, (), |_, member, deser| {
         130  +
        deserializer.read_struct(&GETBUCKETLIFECYCLECONFIGURATIONOUTPUT_SCHEMA, &mut |member, deser| {
   77    131   
            match member.member_index() {
   78    132   
                Some(0) => {
   79    133   
                    builder.rules = Some({
   80         -
                        let container = if let Some(cap) = deser.container_size() {
   81         -
                            Vec::with_capacity(cap)
   82         -
                        } else {
   83         -
                            Vec::new()
   84         -
                        };
   85         -
                        deser.read_list(member, container, |mut list, deser| {
   86         -
                            list.push(crate::types::LifecycleRule::deserialize(deser)?);
   87         -
                            Ok(list)
   88         -
                        })?
         134  +
                        let mut container = Vec::new();
         135  +
                        deser.read_list(member, &mut |deser| {
         136  +
                            container.push(crate::types::LifecycleRule::deserialize(deser)?);
         137  +
                            Ok(())
         138  +
                        })?;
         139  +
                        container
   89    140   
                    });
   90    141   
                }
   91    142   
                _ => {}
   92    143   
            }
   93    144   
            Ok(())
   94    145   
        })?;
   95    146   
        Ok(builder.build())
   96    147   
    }
   97    148   
}
   98    149   
impl ::aws_types::request_id::RequestId for GetBucketLifecycleConfigurationOutput {

tmp-codegen-diff/aws-sdk/sdk/s3control/src/operation/get_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 `GetBucketPolicy`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct GetBucketPolicy;
    6      6   
impl GetBucketPolicy {
    7      7   
    /// Creates a new `GetBucketPolicy`
    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::get_bucket_policy::GetBucketPolicyInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::get_bucket_policy::GetBucketPolicyOutput::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::get_bucket_policy::GetBucketPolicyInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::get_bucket_policy::GetBucketPolicyOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::get_bucket_policy::GetBucketPolicyError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -121,125 +180,185 @@
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct GetBucketPolicyResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for GetBucketPolicyResponseDeserializer {
  148    152   
    fn deserialize_nonstreaming(
  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_get_bucket_policy::de_get_bucket_policy_http_error(status, headers, body)
  160    165   
        } else {

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

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

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

@@ -1,1 +96,140 @@
   18     18   
    "com.amazonaws.s3control.synthetic",
   19     19   
    "GetBucketPolicyOutput",
   20     20   
);
   21     21   
static GETBUCKETPOLICYOUTPUT_MEMBER_POLICY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.s3control.synthetic#GetBucketPolicyOutput$Policy",
   24     24   
        "com.amazonaws.s3control.synthetic",
   25     25   
        "GetBucketPolicyOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::String,
   28         -
    "policy",
          28  +
    "Policy",
   29     29   
    0,
   30     30   
);
          31  +
static GETBUCKETPOLICYOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          32  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          33  +
    ::aws_smithy_schema::ShapeType::String,
          34  +
    "request_id",
          35  +
    1,
          36  +
)
          37  +
.with_http_header("x-amzn-requestid");
   31     38   
static GETBUCKETPOLICYOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   32     39   
    GETBUCKETPOLICYOUTPUT_SCHEMA_ID,
   33     40   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    &[&GETBUCKETPOLICYOUTPUT_MEMBER_POLICY],
          41  +
    &[&GETBUCKETPOLICYOUTPUT_MEMBER_POLICY, &GETBUCKETPOLICYOUTPUT_MEMBER__REQUEST_ID],
   35     42   
);
   36     43   
impl GetBucketPolicyOutput {
   37     44   
    /// The schema for this shape.
   38     45   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GETBUCKETPOLICYOUTPUT_SCHEMA;
   39     46   
}
   40     47   
impl ::aws_smithy_schema::serde::SerializableStruct for GetBucketPolicyOutput {
   41     48   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   42     49   
    fn serialize_members(
   43     50   
        &self,
   44     51   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   45     52   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     53   
        if let Some(ref val) = self.policy {
   47     54   
            ser.write_string(&GETBUCKETPOLICYOUTPUT_MEMBER_POLICY, val)?;
   48     55   
        }
   49     56   
        Ok(())
   50     57   
    }
   51     58   
}
   52     59   
impl GetBucketPolicyOutput {
   53     60   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   54         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   55         -
        deserializer: &mut D,
          61  +
    pub fn deserialize(
          62  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   56     63   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   57     64   
        #[allow(unused_variables, unused_mut)]
   58     65   
        let mut builder = Self::builder();
   59     66   
        #[allow(
   60     67   
            unused_variables,
   61     68   
            unreachable_code,
   62     69   
            clippy::single_match,
   63     70   
            clippy::match_single_binding,
   64     71   
            clippy::diverging_sub_expression
   65     72   
        )]
   66         -
        deserializer.read_struct(&GETBUCKETPOLICYOUTPUT_SCHEMA, (), |_, member, deser| {
          73  +
        deserializer.read_struct(&GETBUCKETPOLICYOUTPUT_SCHEMA, &mut |member, deser| {
          74  +
            match member.member_index() {
          75  +
                Some(0) => {
          76  +
                    builder.policy = Some(deser.read_string(member)?);
          77  +
                }
          78  +
                Some(1) => {
          79  +
                    builder._request_id = Some(deser.read_string(member)?);
          80  +
                }
          81  +
                _ => {}
          82  +
            }
          83  +
            Ok(())
          84  +
        })?;
          85  +
        Ok(builder.build())
          86  +
    }
          87  +
}
          88  +
impl GetBucketPolicyOutput {
          89  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          90  +
    /// Header-bound members are read directly from headers, avoiding runtime
          91  +
    /// member iteration overhead. Body members are read via the deserializer.
          92  +
    pub fn deserialize_with_response(
          93  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          94  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          95  +
        _status: u16,
          96  +
        _body: &[u8],
          97  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          98  +
        #[allow(unused_variables, unused_mut)]
          99  +
        let mut builder = Self::builder();
         100  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         101  +
            builder._request_id = Some(val.to_string());
         102  +
        }
         103  +
        #[allow(
         104  +
            unused_variables,
         105  +
            unreachable_code,
         106  +
            clippy::single_match,
         107  +
            clippy::match_single_binding,
         108  +
            clippy::diverging_sub_expression
         109  +
        )]
         110  +
        deserializer.read_struct(&GETBUCKETPOLICYOUTPUT_SCHEMA, &mut |member, deser| {
   67    111   
            match member.member_index() {
   68    112   
                Some(0) => {
   69    113   
                    builder.policy = Some(deser.read_string(member)?);
   70    114   
                }
   71    115   
                _ => {}
   72    116   
            }
   73    117   
            Ok(())
   74    118   
        })?;
   75    119   
        Ok(builder.build())
   76    120   
    }