AWS SDK

AWS SDK

rev. 32b1b3c3761061baed26023be3219639e42d7d12 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table/_update_table_input.rs

@@ -152,152 +342,342 @@
  172    172   
    "com.amazonaws.dynamodb.synthetic",
  173    173   
    "UpdateTableInput",
  174    174   
);
  175    175   
static UPDATETABLEINPUT_MEMBER_ATTRIBUTE_DEFINITIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  176    176   
    ::aws_smithy_schema::ShapeId::from_static(
  177    177   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$AttributeDefinitions",
  178    178   
        "com.amazonaws.dynamodb.synthetic",
  179    179   
        "UpdateTableInput",
  180    180   
    ),
  181    181   
    ::aws_smithy_schema::ShapeType::List,
  182         -
    "attribute_definitions",
         182  +
    "AttributeDefinitions",
  183    183   
    0,
  184    184   
);
  185    185   
static UPDATETABLEINPUT_MEMBER_TABLE_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  186    186   
    ::aws_smithy_schema::ShapeId::from_static(
  187    187   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$TableName",
  188    188   
        "com.amazonaws.dynamodb.synthetic",
  189    189   
        "UpdateTableInput",
  190    190   
    ),
  191    191   
    ::aws_smithy_schema::ShapeType::String,
  192         -
    "table_name",
         192  +
    "TableName",
  193    193   
    1,
  194    194   
);
  195    195   
static UPDATETABLEINPUT_MEMBER_BILLING_MODE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  196    196   
    ::aws_smithy_schema::ShapeId::from_static(
  197    197   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$BillingMode",
  198    198   
        "com.amazonaws.dynamodb.synthetic",
  199    199   
        "UpdateTableInput",
  200    200   
    ),
  201    201   
    ::aws_smithy_schema::ShapeType::String,
  202         -
    "billing_mode",
         202  +
    "BillingMode",
  203    203   
    2,
  204    204   
);
  205    205   
static UPDATETABLEINPUT_MEMBER_PROVISIONED_THROUGHPUT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  206    206   
    ::aws_smithy_schema::ShapeId::from_static(
  207    207   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$ProvisionedThroughput",
  208    208   
        "com.amazonaws.dynamodb.synthetic",
  209    209   
        "UpdateTableInput",
  210    210   
    ),
  211    211   
    ::aws_smithy_schema::ShapeType::Structure,
  212         -
    "provisioned_throughput",
         212  +
    "ProvisionedThroughput",
  213    213   
    3,
  214    214   
);
  215    215   
static UPDATETABLEINPUT_MEMBER_GLOBAL_SECONDARY_INDEX_UPDATES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  216    216   
    ::aws_smithy_schema::ShapeId::from_static(
  217    217   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$GlobalSecondaryIndexUpdates",
  218    218   
        "com.amazonaws.dynamodb.synthetic",
  219    219   
        "UpdateTableInput",
  220    220   
    ),
  221    221   
    ::aws_smithy_schema::ShapeType::List,
  222         -
    "global_secondary_index_updates",
         222  +
    "GlobalSecondaryIndexUpdates",
  223    223   
    4,
  224    224   
);
  225    225   
static UPDATETABLEINPUT_MEMBER_STREAM_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  226    226   
    ::aws_smithy_schema::ShapeId::from_static(
  227    227   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$StreamSpecification",
  228    228   
        "com.amazonaws.dynamodb.synthetic",
  229    229   
        "UpdateTableInput",
  230    230   
    ),
  231    231   
    ::aws_smithy_schema::ShapeType::Structure,
  232         -
    "stream_specification",
         232  +
    "StreamSpecification",
  233    233   
    5,
  234    234   
);
  235    235   
static UPDATETABLEINPUT_MEMBER_SSE_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  236    236   
    ::aws_smithy_schema::ShapeId::from_static(
  237    237   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$SSESpecification",
  238    238   
        "com.amazonaws.dynamodb.synthetic",
  239    239   
        "UpdateTableInput",
  240    240   
    ),
  241    241   
    ::aws_smithy_schema::ShapeType::Structure,
  242         -
    "sse_specification",
         242  +
    "SSESpecification",
  243    243   
    6,
  244    244   
);
  245    245   
static UPDATETABLEINPUT_MEMBER_REPLICA_UPDATES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  246    246   
    ::aws_smithy_schema::ShapeId::from_static(
  247    247   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$ReplicaUpdates",
  248    248   
        "com.amazonaws.dynamodb.synthetic",
  249    249   
        "UpdateTableInput",
  250    250   
    ),
  251    251   
    ::aws_smithy_schema::ShapeType::List,
  252         -
    "replica_updates",
         252  +
    "ReplicaUpdates",
  253    253   
    7,
  254    254   
);
  255    255   
static UPDATETABLEINPUT_MEMBER_TABLE_CLASS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  256    256   
    ::aws_smithy_schema::ShapeId::from_static(
  257    257   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$TableClass",
  258    258   
        "com.amazonaws.dynamodb.synthetic",
  259    259   
        "UpdateTableInput",
  260    260   
    ),
  261    261   
    ::aws_smithy_schema::ShapeType::String,
  262         -
    "table_class",
         262  +
    "TableClass",
  263    263   
    8,
  264    264   
);
  265    265   
static UPDATETABLEINPUT_MEMBER_DELETION_PROTECTION_ENABLED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  266    266   
    ::aws_smithy_schema::ShapeId::from_static(
  267    267   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$DeletionProtectionEnabled",
  268    268   
        "com.amazonaws.dynamodb.synthetic",
  269    269   
        "UpdateTableInput",
  270    270   
    ),
  271    271   
    ::aws_smithy_schema::ShapeType::Boolean,
  272         -
    "deletion_protection_enabled",
         272  +
    "DeletionProtectionEnabled",
  273    273   
    9,
  274    274   
);
  275    275   
static UPDATETABLEINPUT_MEMBER_MULTI_REGION_CONSISTENCY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  276    276   
    ::aws_smithy_schema::ShapeId::from_static(
  277    277   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$MultiRegionConsistency",
  278    278   
        "com.amazonaws.dynamodb.synthetic",
  279    279   
        "UpdateTableInput",
  280    280   
    ),
  281    281   
    ::aws_smithy_schema::ShapeType::String,
  282         -
    "multi_region_consistency",
         282  +
    "MultiRegionConsistency",
  283    283   
    10,
  284    284   
);
  285    285   
static UPDATETABLEINPUT_MEMBER_GLOBAL_TABLE_WITNESS_UPDATES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  286    286   
    ::aws_smithy_schema::ShapeId::from_static(
  287    287   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$GlobalTableWitnessUpdates",
  288    288   
        "com.amazonaws.dynamodb.synthetic",
  289    289   
        "UpdateTableInput",
  290    290   
    ),
  291    291   
    ::aws_smithy_schema::ShapeType::List,
  292         -
    "global_table_witness_updates",
         292  +
    "GlobalTableWitnessUpdates",
  293    293   
    11,
  294    294   
);
  295    295   
static UPDATETABLEINPUT_MEMBER_ON_DEMAND_THROUGHPUT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  296    296   
    ::aws_smithy_schema::ShapeId::from_static(
  297    297   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$OnDemandThroughput",
  298    298   
        "com.amazonaws.dynamodb.synthetic",
  299    299   
        "UpdateTableInput",
  300    300   
    ),
  301    301   
    ::aws_smithy_schema::ShapeType::Structure,
  302         -
    "on_demand_throughput",
         302  +
    "OnDemandThroughput",
  303    303   
    12,
  304    304   
);
  305    305   
static UPDATETABLEINPUT_MEMBER_WARM_THROUGHPUT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  306    306   
    ::aws_smithy_schema::ShapeId::from_static(
  307    307   
        "com.amazonaws.dynamodb.synthetic#UpdateTableInput$WarmThroughput",
  308    308   
        "com.amazonaws.dynamodb.synthetic",
  309    309   
        "UpdateTableInput",
  310    310   
    ),
  311    311   
    ::aws_smithy_schema::ShapeType::Structure,
  312         -
    "warm_throughput",
         312  +
    "WarmThroughput",
  313    313   
    13,
  314    314   
);
  315    315   
static UPDATETABLEINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  316    316   
    UPDATETABLEINPUT_SCHEMA_ID,
  317    317   
    ::aws_smithy_schema::ShapeType::Structure,
  318    318   
    &[
  319    319   
        &UPDATETABLEINPUT_MEMBER_ATTRIBUTE_DEFINITIONS,
  320    320   
        &UPDATETABLEINPUT_MEMBER_TABLE_NAME,
  321    321   
        &UPDATETABLEINPUT_MEMBER_BILLING_MODE,
  322    322   
        &UPDATETABLEINPUT_MEMBER_PROVISIONED_THROUGHPUT,
@@ -394,394 +558,558 @@
  414    414   
            ser.write_struct(&UPDATETABLEINPUT_MEMBER_ON_DEMAND_THROUGHPUT, val)?;
  415    415   
        }
  416    416   
        if let Some(ref val) = self.warm_throughput {
  417    417   
            ser.write_struct(&UPDATETABLEINPUT_MEMBER_WARM_THROUGHPUT, val)?;
  418    418   
        }
  419    419   
        Ok(())
  420    420   
    }
  421    421   
}
  422    422   
impl UpdateTableInput {
  423    423   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  424         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  425         -
        deserializer: &mut D,
         424  +
    pub fn deserialize(
         425  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  426    426   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  427    427   
        #[allow(unused_variables, unused_mut)]
  428    428   
        let mut builder = Self::builder();
  429    429   
        #[allow(
  430    430   
            unused_variables,
  431    431   
            unreachable_code,
  432    432   
            clippy::single_match,
  433    433   
            clippy::match_single_binding,
  434    434   
            clippy::diverging_sub_expression
  435    435   
        )]
  436         -
        deserializer.read_struct(&UPDATETABLEINPUT_SCHEMA, (), |_, member, deser| {
         436  +
        deserializer.read_struct(&UPDATETABLEINPUT_SCHEMA, &mut |member, deser| {
  437    437   
            match member.member_index() {
  438    438   
                Some(0) => {
  439    439   
                    builder.attribute_definitions = Some({
  440         -
                        let container = if let Some(cap) = deser.container_size() {
  441         -
                            Vec::with_capacity(cap)
  442         -
                        } else {
  443         -
                            Vec::new()
  444         -
                        };
  445         -
                        deser.read_list(member, container, |mut list, deser| {
  446         -
                            list.push(crate::types::AttributeDefinition::deserialize(deser)?);
  447         -
                            Ok(list)
  448         -
                        })?
         440  +
                        let mut container = Vec::new();
         441  +
                        deser.read_list(member, &mut |deser| {
         442  +
                            container.push(crate::types::AttributeDefinition::deserialize(deser)?);
         443  +
                            Ok(())
         444  +
                        })?;
         445  +
                        container
  449    446   
                    });
  450    447   
                }
  451    448   
                Some(1) => {
  452    449   
                    builder.table_name = Some(deser.read_string(member)?);
  453    450   
                }
  454    451   
                Some(2) => {
  455    452   
                    builder.billing_mode = Some(crate::types::BillingMode::from(deser.read_string(member)?.as_str()));
  456    453   
                }
  457    454   
                Some(3) => {
  458    455   
                    builder.provisioned_throughput = Some(crate::types::ProvisionedThroughput::deserialize(deser)?);
  459    456   
                }
  460    457   
                Some(4) => {
  461    458   
                    builder.global_secondary_index_updates = Some({
  462         -
                        let container = if let Some(cap) = deser.container_size() {
  463         -
                            Vec::with_capacity(cap)
  464         -
                        } else {
  465         -
                            Vec::new()
  466         -
                        };
  467         -
                        deser.read_list(member, container, |mut list, deser| {
  468         -
                            list.push(crate::types::GlobalSecondaryIndexUpdate::deserialize(deser)?);
  469         -
                            Ok(list)
  470         -
                        })?
         459  +
                        let mut container = Vec::new();
         460  +
                        deser.read_list(member, &mut |deser| {
         461  +
                            container.push(crate::types::GlobalSecondaryIndexUpdate::deserialize(deser)?);
         462  +
                            Ok(())
         463  +
                        })?;
         464  +
                        container
  471    465   
                    });
  472    466   
                }
  473    467   
                Some(5) => {
  474    468   
                    builder.stream_specification = Some(crate::types::StreamSpecification::deserialize(deser)?);
  475    469   
                }
  476    470   
                Some(6) => {
  477    471   
                    builder.sse_specification = Some(crate::types::SseSpecification::deserialize(deser)?);
  478    472   
                }
  479    473   
                Some(7) => {
  480    474   
                    builder.replica_updates = Some({
  481         -
                        let container = if let Some(cap) = deser.container_size() {
  482         -
                            Vec::with_capacity(cap)
  483         -
                        } else {
  484         -
                            Vec::new()
  485         -
                        };
  486         -
                        deser.read_list(member, container, |mut list, deser| {
  487         -
                            list.push(crate::types::ReplicationGroupUpdate::deserialize(deser)?);
  488         -
                            Ok(list)
  489         -
                        })?
         475  +
                        let mut container = Vec::new();
         476  +
                        deser.read_list(member, &mut |deser| {
         477  +
                            container.push(crate::types::ReplicationGroupUpdate::deserialize(deser)?);
         478  +
                            Ok(())
         479  +
                        })?;
         480  +
                        container
  490    481   
                    });
  491    482   
                }
  492    483   
                Some(8) => {
  493    484   
                    builder.table_class = Some(crate::types::TableClass::from(deser.read_string(member)?.as_str()));
  494    485   
                }
  495    486   
                Some(9) => {
  496    487   
                    builder.deletion_protection_enabled = Some(deser.read_boolean(member)?);
  497    488   
                }
  498    489   
                Some(10) => {
  499    490   
                    builder.multi_region_consistency = Some(crate::types::MultiRegionConsistency::from(deser.read_string(member)?.as_str()));
  500    491   
                }
  501    492   
                Some(11) => {
  502    493   
                    builder.global_table_witness_updates = Some({
  503         -
                        let container = if let Some(cap) = deser.container_size() {
  504         -
                            Vec::with_capacity(cap)
  505         -
                        } else {
  506         -
                            Vec::new()
  507         -
                        };
  508         -
                        deser.read_list(member, container, |mut list, deser| {
  509         -
                            list.push(crate::types::GlobalTableWitnessGroupUpdate::deserialize(deser)?);
  510         -
                            Ok(list)
  511         -
                        })?
         494  +
                        let mut container = Vec::new();
         495  +
                        deser.read_list(member, &mut |deser| {
         496  +
                            container.push(crate::types::GlobalTableWitnessGroupUpdate::deserialize(deser)?);
         497  +
                            Ok(())
         498  +
                        })?;
         499  +
                        container
  512    500   
                    });
  513    501   
                }
  514    502   
                Some(12) => {
  515    503   
                    builder.on_demand_throughput = Some(crate::types::OnDemandThroughput::deserialize(deser)?);
  516    504   
                }
  517    505   
                Some(13) => {
  518    506   
                    builder.warm_throughput = Some(crate::types::WarmThroughput::deserialize(deser)?);
  519    507   
                }
  520    508   
                _ => {}
  521    509   
            }
  522    510   
            Ok(())
  523    511   
        })?;
         512  +
        builder.table_name = builder.table_name.or(Some(String::new()));
  524    513   
        builder
  525    514   
            .build()
  526    515   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  527    516   
    }
  528    517   
}
         518  +
impl UpdateTableInput {
         519  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         520  +
    pub fn deserialize_with_response(
         521  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         522  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         523  +
        _status: u16,
         524  +
        _body: &[u8],
         525  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         526  +
        Self::deserialize(deserializer)
         527  +
    }
         528  +
}
  529    529   
impl UpdateTableInput {
  530    530   
    /// Creates a new builder-style object to manufacture [`UpdateTableInput`](crate::operation::update_table::UpdateTableInput).
  531    531   
    pub fn builder() -> crate::operation::update_table::builders::UpdateTableInputBuilder {
  532    532   
        crate::operation::update_table::builders::UpdateTableInputBuilder::default()
  533    533   
    }
  534    534   
}
  535    535   
  536    536   
/// A builder for [`UpdateTableInput`](crate::operation::update_table::UpdateTableInput).
  537    537   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  538    538   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table/_update_table_output.rs

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

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table_replica_auto_scaling.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 `UpdateTableReplicaAutoScaling`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct UpdateTableReplicaAutoScaling;
    6      6   
impl UpdateTableReplicaAutoScaling {
    7      7   
    /// Creates a new `UpdateTableReplicaAutoScaling`
    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::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingOutput::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::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -124,130 +253,374 @@
  144    150   
                crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError,
  145    151   
            >::new());
  146    152   
  147    153   
        ::std::borrow::Cow::Owned(rcb)
  148    154   
    }
  149    155   
}
  150    156   
  151    157   
#[derive(Debug)]
  152    158   
struct UpdateTableReplicaAutoScalingResponseDeserializer;
  153    159   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for UpdateTableReplicaAutoScalingResponseDeserializer {
  154         -
    fn deserialize_nonstreaming(
         160  +
    fn deserialize_nonstreaming_with_config(
  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         -
        let headers = response.headers();
  160         -
        let body = response.body().bytes().expect("body loaded");
  161    166   
        #[allow(unused_mut)]
  162    167   
        let mut force_error = false;
  163    168   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  164         -
        let parse_result = if !success && status != 200 || force_error {
  165         -
            crate::protocol_serde::shape_update_table_replica_auto_scaling::de_update_table_replica_auto_scaling_http_error(status, headers, body)
  166         -
        } else {
  167         -
            crate::protocol_serde::shape_update_table_replica_auto_scaling::de_update_table_replica_auto_scaling_http_response(status, headers, body)
         169  +
        if !success && status != 200 || force_error {
         170  +
            let headers = response.headers();
         171  +
            let body = response.body().bytes().expect("body loaded");
         172  +
            #[allow(unused_mut)]
         173  +
            let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(status, headers, body).map_err(|e| {
         174  +
                ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(::aws_smithy_runtime_api::box_error::BoxError::from(e))
         175  +
            })?;
         176  +
            generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, headers);
         177  +
            let generic = generic_builder.build();
         178  +
            let error_code = match generic.code() {
         179  +
                ::std::option::Option::Some(code) => code,
         180  +
                ::std::option::Option::None => {
         181  +
                    return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         182  +
                        ::aws_smithy_runtime_api::box_error::BoxError::from(
         183  +
                            crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError::unhandled(generic),
         184  +
                        ),
         185  +
                    ))
         186  +
                }
         187  +
            };
         188  +
            let _error_message = generic.message().map(|msg| msg.to_owned());
         189  +
            let protocol = _cfg
         190  +
                .load::<::aws_smithy_schema::protocol::SharedClientProtocol>()
         191  +
                .expect("a SharedClientProtocol is required");
         192  +
            let err = match error_code {
         193  +
                "InternalServerError" => {
         194  +
                    crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError::InternalServerError({
         195  +
                        let mut tmp = match protocol
         196  +
                            .deserialize_response(response, crate::types::error::InternalServerError::SCHEMA, _cfg)
         197  +
                            .and_then(|mut deser| {
         198  +
                                crate::types::error::InternalServerError::deserialize_with_response(
         199  +
                                    &mut *deser,
         200  +
                                    response.headers(),
         201  +
                                    response.status().into(),
         202  +
                                    body,
         203  +
                                )
         204  +
                            }) {
         205  +
                            ::std::result::Result::Ok(val) => val,
         206  +
                            ::std::result::Result::Err(e) => {
         207  +
                                return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         208  +
                                    ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         209  +
                                ))
         210  +
                            }
         211  +
                        };
         212  +
                        tmp.meta = generic;
         213  +
                        if tmp.message.is_none() {
         214  +
                            tmp.message = _error_message;
         215  +
                        }
         216  +
                        tmp
         217  +
                    })
         218  +
                }
         219  +
                "LimitExceededException" => {
         220  +
                    crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError::LimitExceededException({
         221  +
                        let mut tmp = match protocol
         222  +
                            .deserialize_response(response, crate::types::error::LimitExceededException::SCHEMA, _cfg)
         223  +
                            .and_then(|mut deser| {
         224  +
                                crate::types::error::LimitExceededException::deserialize_with_response(
         225  +
                                    &mut *deser,
         226  +
                                    response.headers(),
         227  +
                                    response.status().into(),
         228  +
                                    body,
         229  +
                                )
         230  +
                            }) {
         231  +
                            ::std::result::Result::Ok(val) => val,
         232  +
                            ::std::result::Result::Err(e) => {
         233  +
                                return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         234  +
                                    ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         235  +
                                ))
         236  +
                            }
         237  +
                        };
         238  +
                        tmp.meta = generic;
         239  +
                        if tmp.message.is_none() {
         240  +
                            tmp.message = _error_message;
         241  +
                        }
         242  +
                        tmp
         243  +
                    })
         244  +
                }
         245  +
                "ResourceInUseException" => {
         246  +
                    crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError::ResourceInUseException({
         247  +
                        let mut tmp = match protocol
         248  +
                            .deserialize_response(response, crate::types::error::ResourceInUseException::SCHEMA, _cfg)
         249  +
                            .and_then(|mut deser| {
         250  +
                                crate::types::error::ResourceInUseException::deserialize_with_response(
         251  +
                                    &mut *deser,
         252  +
                                    response.headers(),
         253  +
                                    response.status().into(),
         254  +
                                    body,
         255  +
                                )
         256  +
                            }) {
         257  +
                            ::std::result::Result::Ok(val) => val,
         258  +
                            ::std::result::Result::Err(e) => {
         259  +
                                return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         260  +
                                    ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         261  +
                                ))
         262  +
                            }
  168    263   
                        };
  169         -
        crate::protocol_serde::type_erase_result(parse_result)
         264  +
                        tmp.meta = generic;
         265  +
                        if tmp.message.is_none() {
         266  +
                            tmp.message = _error_message;
         267  +
                        }
         268  +
                        tmp
         269  +
                    })
         270  +
                }
         271  +
                "ResourceNotFoundException" => {
         272  +
                    crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError::ResourceNotFoundException({
         273  +
                        let mut tmp = match protocol
         274  +
                            .deserialize_response(response, crate::types::error::ResourceNotFoundException::SCHEMA, _cfg)
         275  +
                            .and_then(|mut deser| {
         276  +
                                crate::types::error::ResourceNotFoundException::deserialize_with_response(
         277  +
                                    &mut *deser,
         278  +
                                    response.headers(),
         279  +
                                    response.status().into(),
         280  +
                                    body,
         281  +
                                )
         282  +
                            }) {
         283  +
                            ::std::result::Result::Ok(val) => val,
         284  +
                            ::std::result::Result::Err(e) => {
         285  +
                                return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         286  +
                                    ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         287  +
                                ))
         288  +
                            }
         289  +
                        };
         290  +
                        tmp.meta = generic;
         291  +
                        if tmp.message.is_none() {
         292  +
                            tmp.message = _error_message;
         293  +
                        }
         294  +
                        tmp
         295  +
                    })
         296  +
                }
         297  +
                _ => crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingError::generic(generic),
         298  +
            };
         299  +
            ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::operation(
         300  +
                ::aws_smithy_runtime_api::client::interceptors::context::Error::erase(err),
         301  +
            ))
         302  +
        } else {
         303  +
            let protocol = _cfg
         304  +
                .load::<::aws_smithy_schema::protocol::SharedClientProtocol>()
         305  +
                .expect("a SharedClientProtocol is required");
         306  +
            let mut deser = protocol
         307  +
                .deserialize_response(response, UpdateTableReplicaAutoScaling::OUTPUT_SCHEMA, _cfg)
         308  +
                .map_err(|e| {
         309  +
                    ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(::aws_smithy_runtime_api::box_error::BoxError::from(e))
         310  +
                })?;
         311  +
            let body = response.body().bytes().expect("body loaded");
         312  +
            let output = crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingOutput::deserialize_with_response(
         313  +
                &mut *deser,
         314  +
                response.headers(),
         315  +
                response.status().into(),
         316  +
                body,
         317  +
            )
         318  +
            .map_err(|e| {
         319  +
                ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(::aws_smithy_runtime_api::box_error::BoxError::from(e))
         320  +
            })?;
         321  +
            ::std::result::Result::Ok(::aws_smithy_runtime_api::client::interceptors::context::Output::erase(output))
         322  +
        }
  170    323   
    }
  171    324   
}
  172    325   
#[derive(Debug)]
  173    326   
struct UpdateTableReplicaAutoScalingRequestSerializer;
  174    327   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for UpdateTableReplicaAutoScalingRequestSerializer {
  175    328   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  176    329   
    fn serialize_input(
  177    330   
        &self,
  178    331   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  179    332   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  180    333   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  181    334   
        let input = input
  182    335   
            .downcast::<crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput>()
  183    336   
            .expect("correct type");
  184         -
        let _header_serialization_settings = _cfg
  185         -
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  186         -
            .cloned()
  187         -
            .unwrap_or_default();
  188         -
        let mut request_builder = {
  189         -
            #[allow(clippy::uninlined_format_args)]
  190         -
            fn uri_base(
  191         -
                _input: &crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput,
  192         -
                output: &mut ::std::string::String,
  193         -
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  194         -
                use ::std::fmt::Write as _;
  195         -
                ::std::write!(output, "/").expect("formatting should succeed");
  196         -
                ::std::result::Result::Ok(())
  197         -
            }
  198         -
            #[allow(clippy::unnecessary_wraps)]
  199         -
            fn update_http_builder(
  200         -
                input: &crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput,
  201         -
                builder: ::http_1x::request::Builder,
  202         -
            ) -> ::std::result::Result<::http_1x::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  203         -
                let mut uri = ::std::string::String::new();
  204         -
                uri_base(input, &mut uri)?;
  205         -
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  206         -
            }
  207         -
            let mut builder = update_http_builder(&input, ::http_1x::request::Builder::new())?;
  208         -
            builder = _header_serialization_settings.set_default_header(builder, ::http_1x::header::CONTENT_TYPE, "application/x-amz-json-1.0");
  209         -
            builder = _header_serialization_settings.set_default_header(
  210         -
                builder,
  211         -
                ::http_1x::header::HeaderName::from_static("x-amz-target"),
  212         -
                "DynamoDB_20120810.UpdateTableReplicaAutoScaling",
  213         -
            );
  214         -
            builder
  215         -
        };
  216         -
        let body = ::aws_smithy_types::body::SdkBody::from(
  217         -
            crate::protocol_serde::shape_update_table_replica_auto_scaling::ser_update_table_replica_auto_scaling_input(&input)?,
  218         -
        );
  219         -
        if let Some(content_length) = body.content_length() {
  220         -
            let content_length = content_length.to_string();
  221         -
            request_builder = _header_serialization_settings.set_default_header(request_builder, ::http_1x::header::CONTENT_LENGTH, &content_length);
  222         -
        }
  223         -
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
         337  +
        let protocol = _cfg
         338  +
            .load::<::aws_smithy_schema::protocol::SharedClientProtocol>()
         339  +
            .expect("a SharedClientProtocol is required");
         340  +
        let mut request = protocol
         341  +
            .serialize_request(&input, UpdateTableReplicaAutoScaling::INPUT_SCHEMA, "", _cfg)
         342  +
            .map_err(::aws_smithy_runtime_api::box_error::BoxError::from)?;
         343  +
         344  +
        return ::std::result::Result::Ok(request);
  224    345   
    }
  225    346   
}
  226    347   
#[derive(Debug)]
  227    348   
struct UpdateTableReplicaAutoScalingEndpointParamsInterceptor;
  228    349   
  229    350   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for UpdateTableReplicaAutoScalingEndpointParamsInterceptor {
  230    351   
    fn name(&self) -> &'static str {
  231    352   
        "UpdateTableReplicaAutoScalingEndpointParamsInterceptor"
  232    353   
    }
  233    354   

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table_replica_auto_scaling/_update_table_replica_auto_scaling_input.rs

@@ -20,20 +224,230 @@
   40     40   
    "UpdateTableReplicaAutoScalingInput",
   41     41   
);
   42     42   
static UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_GLOBAL_SECONDARY_INDEX_UPDATES: ::aws_smithy_schema::Schema =
   43     43   
    ::aws_smithy_schema::Schema::new_member(
   44     44   
        ::aws_smithy_schema::ShapeId::from_static(
   45     45   
            "com.amazonaws.dynamodb.synthetic#UpdateTableReplicaAutoScalingInput$GlobalSecondaryIndexUpdates",
   46     46   
            "com.amazonaws.dynamodb.synthetic",
   47     47   
            "UpdateTableReplicaAutoScalingInput",
   48     48   
        ),
   49     49   
        ::aws_smithy_schema::ShapeType::List,
   50         -
        "global_secondary_index_updates",
          50  +
        "GlobalSecondaryIndexUpdates",
   51     51   
        0,
   52     52   
    );
   53     53   
static UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_TABLE_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   54     54   
    ::aws_smithy_schema::ShapeId::from_static(
   55     55   
        "com.amazonaws.dynamodb.synthetic#UpdateTableReplicaAutoScalingInput$TableName",
   56     56   
        "com.amazonaws.dynamodb.synthetic",
   57     57   
        "UpdateTableReplicaAutoScalingInput",
   58     58   
    ),
   59     59   
    ::aws_smithy_schema::ShapeType::String,
   60         -
    "table_name",
          60  +
    "TableName",
   61     61   
    1,
   62     62   
);
   63     63   
static UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_PROVISIONED_WRITE_CAPACITY_AUTO_SCALING_UPDATE: ::aws_smithy_schema::Schema =
   64     64   
    ::aws_smithy_schema::Schema::new_member(
   65     65   
        ::aws_smithy_schema::ShapeId::from_static(
   66     66   
            "com.amazonaws.dynamodb.synthetic#UpdateTableReplicaAutoScalingInput$ProvisionedWriteCapacityAutoScalingUpdate",
   67     67   
            "com.amazonaws.dynamodb.synthetic",
   68     68   
            "UpdateTableReplicaAutoScalingInput",
   69     69   
        ),
   70     70   
        ::aws_smithy_schema::ShapeType::Structure,
   71         -
        "provisioned_write_capacity_auto_scaling_update",
          71  +
        "ProvisionedWriteCapacityAutoScalingUpdate",
   72     72   
        2,
   73     73   
    );
   74     74   
static UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_REPLICA_UPDATES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   75     75   
    ::aws_smithy_schema::ShapeId::from_static(
   76     76   
        "com.amazonaws.dynamodb.synthetic#UpdateTableReplicaAutoScalingInput$ReplicaUpdates",
   77     77   
        "com.amazonaws.dynamodb.synthetic",
   78     78   
        "UpdateTableReplicaAutoScalingInput",
   79     79   
    ),
   80     80   
    ::aws_smithy_schema::ShapeType::List,
   81         -
    "replica_updates",
          81  +
    "ReplicaUpdates",
   82     82   
    3,
   83     83   
);
   84     84   
static UPDATETABLEREPLICAAUTOSCALINGINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   85     85   
    UPDATETABLEREPLICAAUTOSCALINGINPUT_SCHEMA_ID,
   86     86   
    ::aws_smithy_schema::ShapeType::Structure,
   87     87   
    &[
   88     88   
        &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_GLOBAL_SECONDARY_INDEX_UPDATES,
   89     89   
        &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_TABLE_NAME,
   90     90   
        &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_PROVISIONED_WRITE_CAPACITY_AUTO_SCALING_UPDATE,
   91     91   
        &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_REPLICA_UPDATES,
   92     92   
    ],
   93     93   
);
   94     94   
impl UpdateTableReplicaAutoScalingInput {
   95     95   
    /// The schema for this shape.
   96     96   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &UPDATETABLEREPLICAAUTOSCALINGINPUT_SCHEMA;
   97     97   
}
   98     98   
impl ::aws_smithy_schema::serde::SerializableStruct for UpdateTableReplicaAutoScalingInput {
   99     99   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  100    100   
    fn serialize_members(
  101    101   
        &self,
  102    102   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  103    103   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  104    104   
        if let Some(ref val) = self.global_secondary_index_updates {
  105    105   
            ser.write_list(
  106    106   
                &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_GLOBAL_SECONDARY_INDEX_UPDATES,
  107    107   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  108    108   
                    for item in val {
  109    109   
                        ser.write_struct(crate::types::GlobalSecondaryIndexAutoScalingUpdate::SCHEMA, item)?;
  110    110   
                    }
  111    111   
                    Ok(())
  112    112   
                },
  113    113   
            )?;
  114    114   
        }
  115    115   
        if let Some(ref val) = self.table_name {
  116    116   
            ser.write_string(&UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_TABLE_NAME, val)?;
  117    117   
        }
  118    118   
        if let Some(ref val) = self.provisioned_write_capacity_auto_scaling_update {
  119    119   
            ser.write_struct(
  120    120   
                &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_PROVISIONED_WRITE_CAPACITY_AUTO_SCALING_UPDATE,
  121    121   
                val,
  122    122   
            )?;
  123    123   
        }
  124    124   
        if let Some(ref val) = self.replica_updates {
  125    125   
            ser.write_list(
  126    126   
                &UPDATETABLEREPLICAAUTOSCALINGINPUT_MEMBER_REPLICA_UPDATES,
  127    127   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  128    128   
                    for item in val {
  129    129   
                        ser.write_struct(crate::types::ReplicaAutoScalingUpdate::SCHEMA, item)?;
  130    130   
                    }
  131    131   
                    Ok(())
  132    132   
                },
  133    133   
            )?;
  134    134   
        }
  135    135   
        Ok(())
  136    136   
    }
  137    137   
}
  138    138   
impl UpdateTableReplicaAutoScalingInput {
  139    139   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  140         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  141         -
        deserializer: &mut D,
         140  +
    pub fn deserialize(
         141  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  142    142   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  143    143   
        #[allow(unused_variables, unused_mut)]
  144    144   
        let mut builder = Self::builder();
  145    145   
        #[allow(
  146    146   
            unused_variables,
  147    147   
            unreachable_code,
  148    148   
            clippy::single_match,
  149    149   
            clippy::match_single_binding,
  150    150   
            clippy::diverging_sub_expression
  151    151   
        )]
  152         -
        deserializer.read_struct(&UPDATETABLEREPLICAAUTOSCALINGINPUT_SCHEMA, (), |_, member, deser| {
         152  +
        deserializer.read_struct(&UPDATETABLEREPLICAAUTOSCALINGINPUT_SCHEMA, &mut |member, deser| {
  153    153   
            match member.member_index() {
  154    154   
                Some(0) => {
  155    155   
                    builder.global_secondary_index_updates = Some({
  156         -
                        let container = if let Some(cap) = deser.container_size() {
  157         -
                            Vec::with_capacity(cap)
  158         -
                        } else {
  159         -
                            Vec::new()
  160         -
                        };
  161         -
                        deser.read_list(member, container, |mut list, deser| {
  162         -
                            list.push(crate::types::GlobalSecondaryIndexAutoScalingUpdate::deserialize(deser)?);
  163         -
                            Ok(list)
  164         -
                        })?
         156  +
                        let mut container = Vec::new();
         157  +
                        deser.read_list(member, &mut |deser| {
         158  +
                            container.push(crate::types::GlobalSecondaryIndexAutoScalingUpdate::deserialize(deser)?);
         159  +
                            Ok(())
         160  +
                        })?;
         161  +
                        container
  165    162   
                    });
  166    163   
                }
  167    164   
                Some(1) => {
  168    165   
                    builder.table_name = Some(deser.read_string(member)?);
  169    166   
                }
  170    167   
                Some(2) => {
  171    168   
                    builder.provisioned_write_capacity_auto_scaling_update = Some(crate::types::AutoScalingSettingsUpdate::deserialize(deser)?);
  172    169   
                }
  173    170   
                Some(3) => {
  174    171   
                    builder.replica_updates = Some({
  175         -
                        let container = if let Some(cap) = deser.container_size() {
  176         -
                            Vec::with_capacity(cap)
  177         -
                        } else {
  178         -
                            Vec::new()
  179         -
                        };
  180         -
                        deser.read_list(member, container, |mut list, deser| {
  181         -
                            list.push(crate::types::ReplicaAutoScalingUpdate::deserialize(deser)?);
  182         -
                            Ok(list)
  183         -
                        })?
         172  +
                        let mut container = Vec::new();
         173  +
                        deser.read_list(member, &mut |deser| {
         174  +
                            container.push(crate::types::ReplicaAutoScalingUpdate::deserialize(deser)?);
         175  +
                            Ok(())
         176  +
                        })?;
         177  +
                        container
  184    178   
                    });
  185    179   
                }
  186    180   
                _ => {}
  187    181   
            }
  188    182   
            Ok(())
  189    183   
        })?;
         184  +
        builder.table_name = builder.table_name.or(Some(String::new()));
  190    185   
        builder
  191    186   
            .build()
  192    187   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  193    188   
    }
  194    189   
}
         190  +
impl UpdateTableReplicaAutoScalingInput {
         191  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         192  +
    pub fn deserialize_with_response(
         193  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         194  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         195  +
        _status: u16,
         196  +
        _body: &[u8],
         197  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         198  +
        Self::deserialize(deserializer)
         199  +
    }
         200  +
}
  195    201   
impl UpdateTableReplicaAutoScalingInput {
  196    202   
    /// Creates a new builder-style object to manufacture [`UpdateTableReplicaAutoScalingInput`](crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput).
  197    203   
    pub fn builder() -> crate::operation::update_table_replica_auto_scaling::builders::UpdateTableReplicaAutoScalingInputBuilder {
  198    204   
        crate::operation::update_table_replica_auto_scaling::builders::UpdateTableReplicaAutoScalingInputBuilder::default()
  199    205   
    }
  200    206   
}
  201    207   
  202    208   
/// A builder for [`UpdateTableReplicaAutoScalingInput`](crate::operation::update_table_replica_auto_scaling::UpdateTableReplicaAutoScalingInput).
  203    209   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  204    210   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table_replica_auto_scaling/_update_table_replica_auto_scaling_output.rs

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

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_time_to_live.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 `UpdateTimeToLive`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct UpdateTimeToLive;
    6      6   
impl UpdateTimeToLive {
    7      7   
    /// Creates a new `UpdateTimeToLive`
    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::update_time_to_live::UpdateTimeToLiveInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::update_time_to_live::UpdateTimeToLiveOutput::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::update_time_to_live::UpdateTimeToLiveInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::update_time_to_live::UpdateTimeToLiveOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::update_time_to_live::UpdateTimeToLiveError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +245,382 @@
  138    142   
                crate::operation::update_time_to_live::UpdateTimeToLiveError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct UpdateTimeToLiveResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for UpdateTimeToLiveResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153         -
        let headers = response.headers();
  154         -
        let body = response.body().bytes().expect("body loaded");
  155    158   
        #[allow(unused_mut)]
  156    159   
        let mut force_error = false;
  157    160   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158         -
        let parse_result = if !success && status != 200 || force_error {
  159         -
            crate::protocol_serde::shape_update_time_to_live::de_update_time_to_live_http_error(status, headers, body)
  160         -
        } else {
  161         -
            crate::protocol_serde::shape_update_time_to_live::de_update_time_to_live_http_response(status, headers, body)
         161  +
        if !success && status != 200 || force_error {
         162  +
            let headers = response.headers();
         163  +
            let body = response.body().bytes().expect("body loaded");
         164  +
            #[allow(unused_mut)]
         165  +
            let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(status, headers, body).map_err(|e| {
         166  +
                ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(::aws_smithy_runtime_api::box_error::BoxError::from(e))
         167  +
            })?;
         168  +
            generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, headers);
         169  +
            let generic = generic_builder.build();
         170  +
            let error_code = match generic.code() {
         171  +
                ::std::option::Option::Some(code) => code,
         172  +
                ::std::option::Option::None => {
         173  +
                    return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         174  +
                        ::aws_smithy_runtime_api::box_error::BoxError::from(crate::operation::update_time_to_live::UpdateTimeToLiveError::unhandled(
         175  +
                            generic,
         176  +
                        )),
         177  +
                    ))
         178  +
                }
         179  +
            };
         180  +
            let _error_message = generic.message().map(|msg| msg.to_owned());
         181  +
            let protocol = _cfg
         182  +
                .load::<::aws_smithy_schema::protocol::SharedClientProtocol>()
         183  +
                .expect("a SharedClientProtocol is required");
         184  +
            let err = match error_code {
         185  +
                "InternalServerError" => crate::operation::update_time_to_live::UpdateTimeToLiveError::InternalServerError({
         186  +
                    let mut tmp = match protocol
         187  +
                        .deserialize_response(response, crate::types::error::InternalServerError::SCHEMA, _cfg)
         188  +
                        .and_then(|mut deser| {
         189  +
                            crate::types::error::InternalServerError::deserialize_with_response(
         190  +
                                &mut *deser,
         191  +
                                response.headers(),
         192  +
                                response.status().into(),
         193  +
                                body,
         194  +
                            )
         195  +
                        }) {
         196  +
                        ::std::result::Result::Ok(val) => val,
         197  +
                        ::std::result::Result::Err(e) => {
         198  +
                            return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         199  +
                                ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         200  +
                            ))
         201  +
                        }
         202  +
                    };
         203  +
                    tmp.meta = generic;
         204  +
                    if tmp.message.is_none() {
         205  +
                        tmp.message = _error_message;
         206  +
                    }
         207  +
                    tmp
         208  +
                }),
         209  +
                "InvalidEndpointException" => crate::operation::update_time_to_live::UpdateTimeToLiveError::InvalidEndpointException({
         210  +
                    let mut tmp = match protocol
         211  +
                        .deserialize_response(response, crate::types::error::InvalidEndpointException::SCHEMA, _cfg)
         212  +
                        .and_then(|mut deser| {
         213  +
                            crate::types::error::InvalidEndpointException::deserialize_with_response(
         214  +
                                &mut *deser,
         215  +
                                response.headers(),
         216  +
                                response.status().into(),
         217  +
                                body,
         218  +
                            )
         219  +
                        }) {
         220  +
                        ::std::result::Result::Ok(val) => val,
         221  +
                        ::std::result::Result::Err(e) => {
         222  +
                            return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         223  +
                                ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         224  +
                            ))
         225  +
                        }
         226  +
                    };
         227  +
                    tmp.meta = generic;
         228  +
                    if tmp.message.is_none() {
         229  +
                        tmp.message = _error_message;
         230  +
                    }
         231  +
                    tmp
         232  +
                }),
         233  +
                "LimitExceededException" => crate::operation::update_time_to_live::UpdateTimeToLiveError::LimitExceededException({
         234  +
                    let mut tmp = match protocol
         235  +
                        .deserialize_response(response, crate::types::error::LimitExceededException::SCHEMA, _cfg)
         236  +
                        .and_then(|mut deser| {
         237  +
                            crate::types::error::LimitExceededException::deserialize_with_response(
         238  +
                                &mut *deser,
         239  +
                                response.headers(),
         240  +
                                response.status().into(),
         241  +
                                body,
         242  +
                            )
         243  +
                        }) {
         244  +
                        ::std::result::Result::Ok(val) => val,
         245  +
                        ::std::result::Result::Err(e) => {
         246  +
                            return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         247  +
                                ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         248  +
                            ))
         249  +
                        }
         250  +
                    };
         251  +
                    tmp.meta = generic;
         252  +
                    if tmp.message.is_none() {
         253  +
                        tmp.message = _error_message;
         254  +
                    }
         255  +
                    tmp
         256  +
                }),
         257  +
                "ResourceInUseException" => crate::operation::update_time_to_live::UpdateTimeToLiveError::ResourceInUseException({
         258  +
                    let mut tmp = match protocol
         259  +
                        .deserialize_response(response, crate::types::error::ResourceInUseException::SCHEMA, _cfg)
         260  +
                        .and_then(|mut deser| {
         261  +
                            crate::types::error::ResourceInUseException::deserialize_with_response(
         262  +
                                &mut *deser,
         263  +
                                response.headers(),
         264  +
                                response.status().into(),
         265  +
                                body,
         266  +
                            )
         267  +
                        }) {
         268  +
                        ::std::result::Result::Ok(val) => val,
         269  +
                        ::std::result::Result::Err(e) => {
         270  +
                            return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         271  +
                                ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         272  +
                            ))
         273  +
                        }
  162    274   
                    };
  163         -
        crate::protocol_serde::type_erase_result(parse_result)
         275  +
                    tmp.meta = generic;
         276  +
                    if tmp.message.is_none() {
         277  +
                        tmp.message = _error_message;
         278  +
                    }
         279  +
                    tmp
         280  +
                }),
         281  +
                "ResourceNotFoundException" => crate::operation::update_time_to_live::UpdateTimeToLiveError::ResourceNotFoundException({
         282  +
                    let mut tmp = match protocol
         283  +
                        .deserialize_response(response, crate::types::error::ResourceNotFoundException::SCHEMA, _cfg)
         284  +
                        .and_then(|mut deser| {
         285  +
                            crate::types::error::ResourceNotFoundException::deserialize_with_response(
         286  +
                                &mut *deser,
         287  +
                                response.headers(),
         288  +
                                response.status().into(),
         289  +
                                body,
         290  +
                            )
         291  +
                        }) {
         292  +
                        ::std::result::Result::Ok(val) => val,
         293  +
                        ::std::result::Result::Err(e) => {
         294  +
                            return ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(
         295  +
                                ::aws_smithy_runtime_api::box_error::BoxError::from(e),
         296  +
                            ))
         297  +
                        }
         298  +
                    };
         299  +
                    tmp.meta = generic;
         300  +
                    if tmp.message.is_none() {
         301  +
                        tmp.message = _error_message;
         302  +
                    }
         303  +
                    tmp
         304  +
                }),
         305  +
                _ => crate::operation::update_time_to_live::UpdateTimeToLiveError::generic(generic),
         306  +
            };
         307  +
            ::std::result::Result::Err(::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::operation(
         308  +
                ::aws_smithy_runtime_api::client::interceptors::context::Error::erase(err),
         309  +
            ))
         310  +
        } else {
         311  +
            let protocol = _cfg
         312  +
                .load::<::aws_smithy_schema::protocol::SharedClientProtocol>()
         313  +
                .expect("a SharedClientProtocol is required");
         314  +
            let mut deser = protocol
         315  +
                .deserialize_response(response, UpdateTimeToLive::OUTPUT_SCHEMA, _cfg)
         316  +
                .map_err(|e| {
         317  +
                    ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(::aws_smithy_runtime_api::box_error::BoxError::from(e))
         318  +
                })?;
         319  +
            let body = response.body().bytes().expect("body loaded");
         320  +
            let output = crate::operation::update_time_to_live::UpdateTimeToLiveOutput::deserialize_with_response(
         321  +
                &mut *deser,
         322  +
                response.headers(),
         323  +
                response.status().into(),
         324  +
                body,
         325  +
            )
         326  +
            .map_err(|e| {
         327  +
                ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError::other(::aws_smithy_runtime_api::box_error::BoxError::from(e))
         328  +
            })?;
         329  +
            ::std::result::Result::Ok(::aws_smithy_runtime_api::client::interceptors::context::Output::erase(output))
         330  +
        }
  164    331   
    }
  165    332   
}
  166    333   
#[derive(Debug)]
  167    334   
struct UpdateTimeToLiveRequestSerializer;
  168    335   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for UpdateTimeToLiveRequestSerializer {
  169    336   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  170    337   
    fn serialize_input(
  171    338   
        &self,
  172    339   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  173    340   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  174    341   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  175    342   
        let input = input
  176    343   
            .downcast::<crate::operation::update_time_to_live::UpdateTimeToLiveInput>()
  177    344   
            .expect("correct type");
  178         -
        let _header_serialization_settings = _cfg
  179         -
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  180         -
            .cloned()
  181         -
            .unwrap_or_default();
  182         -
        let mut request_builder = {
  183         -
            #[allow(clippy::uninlined_format_args)]
  184         -
            fn uri_base(
  185         -
                _input: &crate::operation::update_time_to_live::UpdateTimeToLiveInput,
  186         -
                output: &mut ::std::string::String,
  187         -
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  188         -
                use ::std::fmt::Write as _;
  189         -
                ::std::write!(output, "/").expect("formatting should succeed");
  190         -
                ::std::result::Result::Ok(())
  191         -
            }
  192         -
            #[allow(clippy::unnecessary_wraps)]
  193         -
            fn update_http_builder(
  194         -
                input: &crate::operation::update_time_to_live::UpdateTimeToLiveInput,
  195         -
                builder: ::http_1x::request::Builder,
  196         -
            ) -> ::std::result::Result<::http_1x::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  197         -
                let mut uri = ::std::string::String::new();
  198         -
                uri_base(input, &mut uri)?;
  199         -
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  200         -
            }
  201         -
            let mut builder = update_http_builder(&input, ::http_1x::request::Builder::new())?;
  202         -
            builder = _header_serialization_settings.set_default_header(builder, ::http_1x::header::CONTENT_TYPE, "application/x-amz-json-1.0");
  203         -
            builder = _header_serialization_settings.set_default_header(
  204         -
                builder,
  205         -
                ::http_1x::header::HeaderName::from_static("x-amz-target"),
  206         -
                "DynamoDB_20120810.UpdateTimeToLive",
  207         -
            );
  208         -
            builder
  209         -
        };
  210         -
        let body = ::aws_smithy_types::body::SdkBody::from(crate::protocol_serde::shape_update_time_to_live::ser_update_time_to_live_input(&input)?);
  211         -
        if let Some(content_length) = body.content_length() {
  212         -
            let content_length = content_length.to_string();
  213         -
            request_builder = _header_serialization_settings.set_default_header(request_builder, ::http_1x::header::CONTENT_LENGTH, &content_length);
  214         -
        }
  215         -
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
         345  +
        let protocol = _cfg
         346  +
            .load::<::aws_smithy_schema::protocol::SharedClientProtocol>()
         347  +
            .expect("a SharedClientProtocol is required");
         348  +
        let mut request = protocol
         349  +
            .serialize_request(&input, UpdateTimeToLive::INPUT_SCHEMA, "", _cfg)
         350  +
            .map_err(::aws_smithy_runtime_api::box_error::BoxError::from)?;
         351  +
         352  +
        return ::std::result::Result::Ok(request);
  216    353   
    }
  217    354   
}
  218    355   
#[derive(Debug)]
  219    356   
struct UpdateTimeToLiveEndpointParamsInterceptor;
  220    357   
  221    358   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for UpdateTimeToLiveEndpointParamsInterceptor {
  222    359   
    fn name(&self) -> &'static str {
  223    360   
        "UpdateTimeToLiveEndpointParamsInterceptor"
  224    361   
    }
  225    362   

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_time_to_live/_update_time_to_live_input.rs

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

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_time_to_live/_update_time_to_live_output.rs

@@ -1,1 +96,143 @@
   18     18   
    "com.amazonaws.dynamodb.synthetic",
   19     19   
    "UpdateTimeToLiveOutput",
   20     20   
);
   21     21   
static UPDATETIMETOLIVEOUTPUT_MEMBER_TIME_TO_LIVE_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.dynamodb.synthetic#UpdateTimeToLiveOutput$TimeToLiveSpecification",
   24     24   
        "com.amazonaws.dynamodb.synthetic",
   25     25   
        "UpdateTimeToLiveOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::Structure,
   28         -
    "time_to_live_specification",
          28  +
    "TimeToLiveSpecification",
   29     29   
    0,
   30     30   
);
          31  +
static UPDATETIMETOLIVEOUTPUT_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 UPDATETIMETOLIVEOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   32     39   
    UPDATETIMETOLIVEOUTPUT_SCHEMA_ID,
   33     40   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    &[&UPDATETIMETOLIVEOUTPUT_MEMBER_TIME_TO_LIVE_SPECIFICATION],
          41  +
    &[
          42  +
        &UPDATETIMETOLIVEOUTPUT_MEMBER_TIME_TO_LIVE_SPECIFICATION,
          43  +
        &UPDATETIMETOLIVEOUTPUT_MEMBER__REQUEST_ID,
          44  +
    ],
   35     45   
);
   36     46   
impl UpdateTimeToLiveOutput {
   37     47   
    /// The schema for this shape.
   38     48   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &UPDATETIMETOLIVEOUTPUT_SCHEMA;
   39     49   
}
   40     50   
impl ::aws_smithy_schema::serde::SerializableStruct for UpdateTimeToLiveOutput {
   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.time_to_live_specification {
   47     57   
            ser.write_struct(&UPDATETIMETOLIVEOUTPUT_MEMBER_TIME_TO_LIVE_SPECIFICATION, val)?;
   48     58   
        }
   49     59   
        Ok(())
   50     60   
    }
   51     61   
}
   52     62   
impl UpdateTimeToLiveOutput {
   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(&UPDATETIMETOLIVEOUTPUT_SCHEMA, (), |_, member, deser| {
          76  +
        deserializer.read_struct(&UPDATETIMETOLIVEOUTPUT_SCHEMA, &mut |member, deser| {
          77  +
            match member.member_index() {
          78  +
                Some(0) => {
          79  +
                    builder.time_to_live_specification = Some(crate::types::TimeToLiveSpecification::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 UpdateTimeToLiveOutput {
          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(&UPDATETIMETOLIVEOUTPUT_SCHEMA, &mut |member, deser| {
   67    114   
            match member.member_index() {
   68    115   
                Some(0) => {
   69    116   
                    builder.time_to_live_specification = Some(crate::types::TimeToLiveSpecification::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/dynamodb/src/protocol_serde.rs

@@ -1,1 +662,0 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
pub(crate) fn type_erase_result<O, E>(
    3         -
    result: ::std::result::Result<O, E>,
    4         -
) -> ::std::result::Result<
    5         -
    ::aws_smithy_runtime_api::client::interceptors::context::Output,
    6         -
    ::aws_smithy_runtime_api::client::orchestrator::OrchestratorError<::aws_smithy_runtime_api::client::interceptors::context::Error>,
    7         -
>
    8         -
where
    9         -
    O: ::std::fmt::Debug + ::std::marker::Send + ::std::marker::Sync + 'static,
   10         -
    E: ::std::error::Error + std::fmt::Debug + ::std::marker::Send + ::std::marker::Sync + 'static,
   11         -
{
   12         -
    result
   13         -
        .map(|output| ::aws_smithy_runtime_api::client::interceptors::context::Output::erase(output))
   14         -
        .map_err(|error| ::aws_smithy_runtime_api::client::interceptors::context::Error::erase(error))
   15         -
        .map_err(::std::convert::Into::into)
   16         -
}
   17         -
   18      2   
pub fn parse_http_error_metadata(
   19      3   
    _response_status: u16,
   20      4   
    response_headers: &::aws_smithy_runtime_api::http::Headers,
   21      5   
    response_body: &[u8],
   22      6   
) -> ::std::result::Result<::aws_smithy_types::error::metadata::Builder, ::aws_smithy_json::deserialize::error::DeserializeError> {
   23      7   
    crate::json_errors::parse_error_metadata(response_body, response_headers)
   24      8   
}
   25         -
   26         -
pub(crate) mod shape_batch_execute_statement;
   27         -
   28         -
pub(crate) mod shape_batch_get_item;
   29         -
   30         -
pub(crate) mod shape_batch_write_item;
   31         -
   32         -
pub(crate) mod shape_create_backup;
   33         -
   34         -
pub(crate) mod shape_create_global_table;
   35         -
   36         -
pub(crate) mod shape_create_table;
   37         -
   38         -
pub(crate) mod shape_delete_backup;
   39         -
   40         -
pub(crate) mod shape_delete_item;
   41         -
   42         -
pub(crate) mod shape_delete_resource_policy;
   43         -
   44         -
pub(crate) mod shape_delete_table;
   45         -
   46         -
pub(crate) mod shape_describe_backup;
   47         -
   48         -
pub(crate) mod shape_describe_continuous_backups;
   49         -
   50         -
pub(crate) mod shape_describe_contributor_insights;
   51         -
   52         -
pub(crate) mod shape_describe_endpoints;
   53         -
   54         -
pub(crate) mod shape_describe_export;
   55         -
   56         -
pub(crate) mod shape_describe_global_table;
   57         -
   58         -
pub(crate) mod shape_describe_global_table_settings;
   59         -
   60         -
pub(crate) mod shape_describe_import;
   61         -
   62         -
pub(crate) mod shape_describe_kinesis_streaming_destination;
   63         -
   64         -
pub(crate) mod shape_describe_limits;
   65         -
   66         -
pub(crate) mod shape_describe_table;
   67         -
   68         -
pub(crate) mod shape_describe_table_replica_auto_scaling;
   69         -
   70         -
pub(crate) mod shape_describe_time_to_live;
   71         -
   72         -
pub(crate) mod shape_disable_kinesis_streaming_destination;
   73         -
   74         -
pub(crate) mod shape_enable_kinesis_streaming_destination;
   75         -
   76         -
pub(crate) mod shape_execute_statement;
   77         -
   78         -
pub(crate) mod shape_execute_transaction;
   79         -
   80         -
pub(crate) mod shape_export_table_to_point_in_time;
   81         -
   82         -
pub(crate) mod shape_get_item;
   83         -
   84         -
pub(crate) mod shape_get_resource_policy;
   85         -
   86         -
pub(crate) mod shape_import_table;
   87         -
   88         -
pub(crate) mod shape_list_backups;
   89         -
   90         -
pub(crate) mod shape_list_contributor_insights;
   91         -
   92         -
pub(crate) mod shape_list_exports;
   93         -
   94         -
pub(crate) mod shape_list_global_tables;
   95         -
   96         -
pub(crate) mod shape_list_imports;
   97         -
   98         -
pub(crate) mod shape_list_tables;
   99         -
  100         -
pub(crate) mod shape_list_tags_of_resource;
  101         -
  102         -
pub(crate) mod shape_put_item;
  103         -
  104         -
pub(crate) mod shape_put_resource_policy;
  105         -
  106         -
pub(crate) mod shape_query;
  107         -
  108         -
pub(crate) mod shape_restore_table_from_backup;
  109         -
  110         -
pub(crate) mod shape_restore_table_to_point_in_time;
  111         -
  112         -
pub(crate) mod shape_scan;
  113         -
  114         -
pub(crate) mod shape_tag_resource;
  115         -
  116         -
pub(crate) mod shape_transact_get_items;
  117         -
  118         -
pub(crate) mod shape_transact_write_items;
  119         -
  120         -
pub(crate) mod shape_untag_resource;
  121         -
  122         -
pub(crate) mod shape_update_continuous_backups;
  123         -
  124         -
pub(crate) mod shape_update_contributor_insights;
  125         -
  126         -
pub(crate) mod shape_update_global_table;
  127         -
  128         -
pub(crate) mod shape_update_global_table_settings;
  129         -
  130         -
pub(crate) mod shape_update_item;
  131         -
  132         -
pub(crate) mod shape_update_kinesis_streaming_destination;
  133         -
  134         -
pub(crate) mod shape_update_table;
  135         -
  136         -
pub(crate) mod shape_update_table_replica_auto_scaling;
  137         -
  138         -
pub(crate) mod shape_update_time_to_live;
  139         -
  140         -
pub(crate) fn or_empty_doc(data: &[u8]) -> &[u8] {
  141         -
    if data.is_empty() {
  142         -
        b"{}"
  143         -
    } else {
  144         -
        data
  145         -
    }
  146         -
}
  147         -
  148         -
pub(crate) mod shape_backup_in_use_exception;
  149         -
  150         -
pub(crate) mod shape_backup_not_found_exception;
  151         -
  152         -
pub(crate) mod shape_batch_execute_statement_input;
  153         -
  154         -
pub(crate) mod shape_batch_get_item_input;
  155         -
  156         -
pub(crate) mod shape_batch_write_item_input;
  157         -
  158         -
pub(crate) mod shape_conditional_check_failed_exception;
  159         -
  160         -
pub(crate) mod shape_continuous_backups_unavailable_exception;
  161         -
  162         -
pub(crate) mod shape_create_backup_input;
  163         -
  164         -
pub(crate) mod shape_create_global_table_input;
  165         -
  166         -
pub(crate) mod shape_create_table_input;
  167         -
  168         -
pub(crate) mod shape_delete_backup_input;
  169         -
  170         -
pub(crate) mod shape_delete_item_input;
  171         -
  172         -
pub(crate) mod shape_delete_resource_policy_input;
  173         -
  174         -
pub(crate) mod shape_delete_table_input;
  175         -
  176         -
pub(crate) mod shape_describe_backup_input;
  177         -
  178         -
pub(crate) mod shape_describe_continuous_backups_input;
  179         -
  180         -
pub(crate) mod shape_describe_contributor_insights_input;
  181         -
  182         -
pub(crate) mod shape_describe_export_input;
  183         -
  184         -
pub(crate) mod shape_describe_global_table_input;
  185         -
  186         -
pub(crate) mod shape_describe_global_table_settings_input;
  187         -
  188         -
pub(crate) mod shape_describe_import_input;
  189         -
  190         -
pub(crate) mod shape_describe_kinesis_streaming_destination_input;
  191         -
  192         -
pub(crate) mod shape_describe_table_input;
  193         -
  194         -
pub(crate) mod shape_describe_table_replica_auto_scaling_input;
  195         -
  196         -
pub(crate) mod shape_describe_time_to_live_input;
  197         -
  198         -
pub(crate) mod shape_disable_kinesis_streaming_destination_input;
  199         -
  200         -
pub(crate) mod shape_duplicate_item_exception;
  201         -
  202         -
pub(crate) mod shape_enable_kinesis_streaming_destination_input;
  203         -
  204         -
pub(crate) mod shape_execute_statement_input;
  205         -
  206         -
pub(crate) mod shape_execute_transaction_input;
  207         -
  208         -
pub(crate) mod shape_export_conflict_exception;
  209         -
  210         -
pub(crate) mod shape_export_not_found_exception;
  211         -
  212         -
pub(crate) mod shape_export_table_to_point_in_time_input;
  213         -
  214         -
pub(crate) mod shape_get_item_input;
  215         -
  216         -
pub(crate) mod shape_get_resource_policy_input;
  217         -
  218         -
pub(crate) mod shape_global_table_already_exists_exception;
  219         -
  220         -
pub(crate) mod shape_global_table_not_found_exception;
  221         -
  222         -
pub(crate) mod shape_idempotent_parameter_mismatch_exception;
  223         -
  224         -
pub(crate) mod shape_import_conflict_exception;
  225         -
  226         -
pub(crate) mod shape_import_not_found_exception;
  227         -
  228         -
pub(crate) mod shape_import_table_input;
  229         -
  230         -
pub(crate) mod shape_index_not_found_exception;
  231         -
  232         -
pub(crate) mod shape_internal_server_error;
  233         -
  234         -
pub(crate) mod shape_invalid_endpoint_exception;
  235         -
  236         -
pub(crate) mod shape_invalid_export_time_exception;
  237         -
  238         -
pub(crate) mod shape_invalid_restore_time_exception;
  239         -
  240         -
pub(crate) mod shape_item_collection_size_limit_exceeded_exception;
  241         -
  242         -
pub(crate) mod shape_limit_exceeded_exception;
  243         -
  244         -
pub(crate) mod shape_list_backups_input;
  245         -
  246         -
pub(crate) mod shape_list_contributor_insights_input;
  247         -
  248         -
pub(crate) mod shape_list_exports_input;
  249         -
  250         -
pub(crate) mod shape_list_global_tables_input;
  251         -
  252         -
pub(crate) mod shape_list_imports_input;
  253         -
  254         -
pub(crate) mod shape_list_tables_input;
  255         -
  256         -
pub(crate) mod shape_list_tags_of_resource_input;
  257         -
  258         -
pub(crate) mod shape_point_in_time_recovery_unavailable_exception;
  259         -
  260         -
pub(crate) mod shape_policy_not_found_exception;
  261         -
  262         -
pub(crate) mod shape_provisioned_throughput_exceeded_exception;
  263         -
  264         -
pub(crate) mod shape_put_item_input;
  265         -
  266         -
pub(crate) mod shape_put_resource_policy_input;
  267         -
  268         -
pub(crate) mod shape_query_input;
  269         -
  270         -
pub(crate) mod shape_replica_already_exists_exception;
  271         -
  272         -
pub(crate) mod shape_replica_not_found_exception;
  273         -
  274         -
pub(crate) mod shape_replicated_write_conflict_exception;
  275         -
  276         -
pub(crate) mod shape_request_limit_exceeded;
  277         -
  278         -
pub(crate) mod shape_resource_in_use_exception;
  279         -
  280         -
pub(crate) mod shape_resource_not_found_exception;
  281         -
  282         -
pub(crate) mod shape_restore_table_from_backup_input;
  283         -
  284         -
pub(crate) mod shape_restore_table_to_point_in_time_input;
  285         -
  286         -
pub(crate) mod shape_scan_input;
  287         -
  288         -
pub(crate) mod shape_table_already_exists_exception;
  289         -
  290         -
pub(crate) mod shape_table_in_use_exception;
  291         -
  292         -
pub(crate) mod shape_table_not_found_exception;
  293         -
  294         -
pub(crate) mod shape_tag_resource_input;
  295         -
  296         -
pub(crate) mod shape_throttling_exception;
  297         -
  298         -
pub(crate) mod shape_transact_get_items_input;
  299         -
  300         -
pub(crate) mod shape_transact_write_items_input;
  301         -
  302         -
pub(crate) mod shape_transaction_canceled_exception;
  303         -
  304         -
pub(crate) mod shape_transaction_conflict_exception;
  305         -
  306         -
pub(crate) mod shape_transaction_in_progress_exception;
  307         -
  308         -
pub(crate) mod shape_untag_resource_input;
  309         -
  310         -
pub(crate) mod shape_update_continuous_backups_input;
  311         -
  312         -
pub(crate) mod shape_update_contributor_insights_input;
  313         -
  314         -
pub(crate) mod shape_update_global_table_input;
  315         -
  316         -
pub(crate) mod shape_update_global_table_settings_input;
  317         -
  318         -
pub(crate) mod shape_update_item_input;
  319         -
  320         -
pub(crate) mod shape_update_kinesis_streaming_destination_input;
  321         -
  322         -
pub(crate) mod shape_update_table_input;
  323         -
  324         -
pub(crate) mod shape_update_table_replica_auto_scaling_input;
  325         -
  326         -
pub(crate) mod shape_update_time_to_live_input;
  327         -
  328         -
pub(crate) mod shape_attribute_definition;
  329         -
  330         -
pub(crate) mod shape_attribute_map;
  331         -
  332         -
pub(crate) mod shape_attribute_value;
  333         -
  334         -
pub(crate) mod shape_attribute_value_update;
  335         -
  336         -
pub(crate) mod shape_auto_scaling_settings_update;
  337         -
  338         -
pub(crate) mod shape_backup_description;
  339         -
  340         -
pub(crate) mod shape_backup_details;
  341         -
  342         -
pub(crate) mod shape_backup_summaries;
  343         -
  344         -
pub(crate) mod shape_batch_get_request_map;
  345         -
  346         -
pub(crate) mod shape_batch_get_response_map;
  347         -
  348         -
pub(crate) mod shape_batch_statement_request;
  349         -
  350         -
pub(crate) mod shape_batch_write_item_request_map;
  351         -
  352         -
pub(crate) mod shape_cancellation_reason_list;
  353         -
  354         -
pub(crate) mod shape_condition;
  355         -
  356         -
pub(crate) mod shape_consumed_capacity;
  357         -
  358         -
pub(crate) mod shape_consumed_capacity_multiple;
  359         -
  360         -
pub(crate) mod shape_continuous_backups_description;
  361         -
  362         -
pub(crate) mod shape_contributor_insights_rule_list;
  363         -
  364         -
pub(crate) mod shape_contributor_insights_summaries;
  365         -
  366         -
pub(crate) mod shape_enable_kinesis_streaming_configuration;
  367         -
  368         -
pub(crate) mod shape_endpoints;
  369         -
  370         -
pub(crate) mod shape_expected_attribute_value;
  371         -
  372         -
pub(crate) mod shape_export_description;
  373         -
  374         -
pub(crate) mod shape_export_summaries;
  375         -
  376         -
pub(crate) mod shape_failure_exception;
  377         -
  378         -
pub(crate) mod shape_global_secondary_index;
  379         -
  380         -
pub(crate) mod shape_global_secondary_index_auto_scaling_update;
  381         -
  382         -
pub(crate) mod shape_global_secondary_index_update;
  383         -
  384         -
pub(crate) mod shape_global_table_description;
  385         -
  386         -
pub(crate) mod shape_global_table_global_secondary_index_settings_update;
  387         -
  388         -
pub(crate) mod shape_global_table_list;
  389         -
  390         -
pub(crate) mod shape_global_table_witness_group_update;
  391         -
  392         -
pub(crate) mod shape_import_summary_list;
  393         -
  394         -
pub(crate) mod shape_import_table_description;
  395         -
  396         -
pub(crate) mod shape_incremental_export_specification;
  397         -
  398         -
pub(crate) mod shape_input_format_options;
  399         -
  400         -
pub(crate) mod shape_item_collection_metrics;
  401         -
  402         -
pub(crate) mod shape_item_collection_metrics_per_table;
  403         -
  404         -
pub(crate) mod shape_item_list;
  405         -
  406         -
pub(crate) mod shape_item_response_list;
  407         -
  408         -
pub(crate) mod shape_key;
  409         -
  410         -
pub(crate) mod shape_key_schema_element;
  411         -
  412         -
pub(crate) mod shape_keys_and_attributes;
  413         -
  414         -
pub(crate) mod shape_kinesis_data_stream_destinations;
  415         -
  416         -
pub(crate) mod shape_local_secondary_index;
  417         -
  418         -
pub(crate) mod shape_on_demand_throughput;
  419         -
  420         -
pub(crate) mod shape_parameterized_statement;
  421         -
  422         -
pub(crate) mod shape_parti_ql_batch_response;
  423         -
  424         -
pub(crate) mod shape_point_in_time_recovery_specification;
  425         -
  426         -
pub(crate) mod shape_provisioned_throughput;
  427         -
  428         -
pub(crate) mod shape_replica;
  429         -
  430         -
pub(crate) mod shape_replica_auto_scaling_update;
  431         -
  432         -
pub(crate) mod shape_replica_settings_description_list;
  433         -
  434         -
pub(crate) mod shape_replica_settings_update;
  435         -
  436         -
pub(crate) mod shape_replica_update;
  437         -
  438         -
pub(crate) mod shape_replication_group_update;
  439         -
  440         -
pub(crate) mod shape_s3_bucket_source;
  441         -
  442         -
pub(crate) mod shape_sse_specification;
  443         -
  444         -
pub(crate) mod shape_stream_specification;
  445         -
  446         -
pub(crate) mod shape_table_auto_scaling_description;
  447         -
  448         -
pub(crate) mod shape_table_creation_parameters;
  449         -
  450         -
pub(crate) mod shape_table_description;
  451         -
  452         -
pub(crate) mod shape_table_name_list;
  453         -
  454         -
pub(crate) mod shape_tag;
  455         -
  456         -
pub(crate) mod shape_tag_list;
  457         -
  458         -
pub(crate) mod shape_throttling_reason_list;
  459         -
  460         -
pub(crate) mod shape_time_to_live_description;
  461         -
  462         -
pub(crate) mod shape_time_to_live_specification;
  463         -
  464         -
pub(crate) mod shape_transact_get_item;
  465         -
  466         -
pub(crate) mod shape_transact_write_item;
  467         -
  468         -
pub(crate) mod shape_update_kinesis_streaming_configuration;
  469         -
  470         -
pub(crate) mod shape_warm_throughput;
  471         -
  472         -
pub(crate) mod shape_write_request;
  473         -
  474         -
pub(crate) mod shape_archival_summary;
  475         -
  476         -
pub(crate) mod shape_attribute_definitions;
  477         -
  478         -
pub(crate) mod shape_auto_scaling_policy_update;
  479         -
  480         -
pub(crate) mod shape_backup_summary;
  481         -
  482         -
pub(crate) mod shape_batch_statement_response;
  483         -
  484         -
pub(crate) mod shape_billing_mode_summary;
  485         -
  486         -
pub(crate) mod shape_cancellation_reason;
  487         -
  488         -
pub(crate) mod shape_capacity;
  489         -
  490         -
pub(crate) mod shape_condition_check;
  491         -
  492         -
pub(crate) mod shape_contributor_insights_summary;
  493         -
  494         -
pub(crate) mod shape_create_global_secondary_index_action;
  495         -
  496         -
pub(crate) mod shape_create_global_table_witness_group_member_action;
  497         -
  498         -
pub(crate) mod shape_create_replica_action;
  499         -
  500         -
pub(crate) mod shape_create_replication_group_member_action;
  501         -
  502         -
pub(crate) mod shape_csv_options;
  503         -
  504         -
pub(crate) mod shape_delete;
  505         -
  506         -
pub(crate) mod shape_delete_global_secondary_index_action;
  507         -
  508         -
pub(crate) mod shape_delete_global_table_witness_group_member_action;
  509         -
  510         -
pub(crate) mod shape_delete_replica_action;
  511         -
  512         -
pub(crate) mod shape_delete_replication_group_member_action;
  513         -
  514         -
pub(crate) mod shape_delete_request;
  515         -
  516         -
pub(crate) mod shape_endpoint;
  517         -
  518         -
pub(crate) mod shape_export_summary;
  519         -
  520         -
pub(crate) mod shape_get;
  521         -
  522         -
pub(crate) mod shape_global_secondary_index_description_list;
  523         -
  524         -
pub(crate) mod shape_global_table;
  525         -
  526         -
pub(crate) mod shape_global_table_witness_description_list;
  527         -
  528         -
pub(crate) mod shape_import_summary;
  529         -
  530         -
pub(crate) mod shape_item_collection_key_attribute_map;
  531         -
  532         -
pub(crate) mod shape_item_collection_metrics_multiple;
  533         -
  534         -
pub(crate) mod shape_item_collection_size_estimate_range;
  535         -
  536         -
pub(crate) mod shape_item_response;
  537         -
  538         -
pub(crate) mod shape_key_schema;
  539         -
  540         -
pub(crate) mod shape_kinesis_data_stream_destination;
  541         -
  542         -
pub(crate) mod shape_local_secondary_index_description_list;
  543         -
  544         -
pub(crate) mod shape_point_in_time_recovery_description;
  545         -
  546         -
pub(crate) mod shape_projection;
  547         -
  548         -
pub(crate) mod shape_provisioned_throughput_description;
  549         -
  550         -
pub(crate) mod shape_put;
  551         -
  552         -
pub(crate) mod shape_put_request;
  553         -
  554         -
pub(crate) mod shape_replica_auto_scaling_description_list;
  555         -
  556         -
pub(crate) mod shape_replica_description_list;
  557         -
  558         -
pub(crate) mod shape_replica_global_secondary_index_auto_scaling_update;
  559         -
  560         -
pub(crate) mod shape_replica_global_secondary_index_settings_update;
  561         -
  562         -
pub(crate) mod shape_replica_settings_description;
  563         -
  564         -
pub(crate) mod shape_restore_summary;
  565         -
  566         -
pub(crate) mod shape_secondary_indexes_capacity_map;
  567         -
  568         -
pub(crate) mod shape_source_table_details;
  569         -
  570         -
pub(crate) mod shape_source_table_feature_details;
  571         -
  572         -
pub(crate) mod shape_sse_description;
  573         -
  574         -
pub(crate) mod shape_table_class_summary;
  575         -
  576         -
pub(crate) mod shape_table_warm_throughput_description;
  577         -
  578         -
pub(crate) mod shape_throttling_reason;
  579         -
  580         -
pub(crate) mod shape_update;
  581         -
  582         -
pub(crate) mod shape_update_global_secondary_index_action;
  583         -
  584         -
pub(crate) mod shape_update_replication_group_member_action;
  585         -
  586         -
pub(crate) mod shape_write_requests;
  587         -
  588         -
pub(crate) mod shape_attribute_name_list;
  589         -
  590         -
pub(crate) mod shape_auto_scaling_settings_description;
  591         -
  592         -
pub(crate) mod shape_auto_scaling_target_tracking_scaling_policy_configuration_update;
  593         -
  594         -
pub(crate) mod shape_batch_statement_error;
  595         -
  596         -
pub(crate) mod shape_binary_set_attribute_value;
  597         -
  598         -
pub(crate) mod shape_expression_attribute_name_map;
  599         -
  600         -
pub(crate) mod shape_global_secondary_index_description;
  601         -
  602         -
pub(crate) mod shape_global_secondary_index_list;
  603         -
  604         -
pub(crate) mod shape_global_secondary_indexes;
  605         -
  606         -
pub(crate) mod shape_global_table_witness_description;
  607         -
  608         -
pub(crate) mod shape_key_list;
  609         -
  610         -
pub(crate) mod shape_list_attribute_value;
  611         -
  612         -
pub(crate) mod shape_local_secondary_index_description;
  613         -
  614         -
pub(crate) mod shape_local_secondary_indexes;
  615         -
  616         -
pub(crate) mod shape_map_attribute_value;
  617         -
  618         -
pub(crate) mod shape_number_set_attribute_value;
  619         -
  620         -
pub(crate) mod shape_on_demand_throughput_override;
  621         -
  622         -
pub(crate) mod shape_provisioned_throughput_override;
  623         -
  624         -
pub(crate) mod shape_replica_auto_scaling_description;
  625         -
  626         -
pub(crate) mod shape_replica_description;
  627         -
  628         -
pub(crate) mod shape_replica_global_secondary_index;
  629         -
  630         -
pub(crate) mod shape_replica_global_secondary_index_settings_description_list;
  631         -
  632         -
pub(crate) mod shape_replica_list;
  633         -
  634         -
pub(crate) mod shape_string_set_attribute_value;
  635         -
  636         -
pub(crate) mod shape_auto_scaling_policy_description_list;
  637         -
  638         -
pub(crate) mod shape_csv_header_list;
  639         -
  640         -
pub(crate) mod shape_global_secondary_index_info;
  641         -
  642         -
pub(crate) mod shape_global_secondary_index_warm_throughput_description;
  643         -
  644         -
pub(crate) mod shape_local_secondary_index_info;
  645         -
  646         -
pub(crate) mod shape_replica_global_secondary_index_auto_scaling_description_list;
  647         -
  648         -
pub(crate) mod shape_replica_global_secondary_index_description_list;
  649         -
  650         -
pub(crate) mod shape_replica_global_secondary_index_settings_description;
  651         -
  652         -
pub(crate) mod shape_auto_scaling_policy_description;
  653         -
  654         -
pub(crate) mod shape_non_key_attribute_name_list;
  655         -
  656         -
pub(crate) mod shape_put_item_input_attribute_map;
  657         -
  658         -
pub(crate) mod shape_replica_global_secondary_index_auto_scaling_description;
  659         -
  660         -
pub(crate) mod shape_replica_global_secondary_index_description;
  661         -
  662         -
pub(crate) mod shape_auto_scaling_target_tracking_scaling_policy_configuration_description;