AWS SDK

AWS SDK

rev. 32b1b3c3761061baed26023be3219639e42d7d12 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_insights_analyses/_describe_network_insights_analyses_input.rs

@@ -56,56 +188,188 @@
   76     76   
    "DescribeNetworkInsightsAnalysesInput",
   77     77   
);
   78     78   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_ANALYSIS_IDS: ::aws_smithy_schema::Schema =
   79     79   
    ::aws_smithy_schema::Schema::new_member(
   80     80   
        ::aws_smithy_schema::ShapeId::from_static(
   81     81   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$NetworkInsightsAnalysisIds",
   82     82   
            "com.amazonaws.ec2.synthetic",
   83     83   
            "DescribeNetworkInsightsAnalysesInput",
   84     84   
        ),
   85     85   
        ::aws_smithy_schema::ShapeType::List,
   86         -
        "network_insights_analysis_ids",
          86  +
        "NetworkInsightsAnalysisIds",
   87     87   
        0,
   88     88   
    )
   89     89   
    .with_xml_name("NetworkInsightsAnalysisId");
   90     90   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_PATH_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   91     91   
    ::aws_smithy_schema::ShapeId::from_static(
   92     92   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$NetworkInsightsPathId",
   93     93   
        "com.amazonaws.ec2.synthetic",
   94     94   
        "DescribeNetworkInsightsAnalysesInput",
   95     95   
    ),
   96     96   
    ::aws_smithy_schema::ShapeType::String,
   97         -
    "network_insights_path_id",
          97  +
    "NetworkInsightsPathId",
   98     98   
    1,
   99     99   
);
  100    100   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_ANALYSIS_START_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$AnalysisStartTime",
  103    103   
        "com.amazonaws.ec2.synthetic",
  104    104   
        "DescribeNetworkInsightsAnalysesInput",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::Timestamp,
  107         -
    "analysis_start_time",
         107  +
    "AnalysisStartTime",
  108    108   
    2,
  109    109   
);
  110    110   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_ANALYSIS_END_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  111    111   
    ::aws_smithy_schema::ShapeId::from_static(
  112    112   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$AnalysisEndTime",
  113    113   
        "com.amazonaws.ec2.synthetic",
  114    114   
        "DescribeNetworkInsightsAnalysesInput",
  115    115   
    ),
  116    116   
    ::aws_smithy_schema::ShapeType::Timestamp,
  117         -
    "analysis_end_time",
         117  +
    "AnalysisEndTime",
  118    118   
    3,
  119    119   
);
  120    120   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  121    121   
    ::aws_smithy_schema::ShapeId::from_static(
  122    122   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$Filters",
  123    123   
        "com.amazonaws.ec2.synthetic",
  124    124   
        "DescribeNetworkInsightsAnalysesInput",
  125    125   
    ),
  126    126   
    ::aws_smithy_schema::ShapeType::List,
  127         -
    "filters",
         127  +
    "Filters",
  128    128   
    4,
  129    129   
)
  130    130   
.with_xml_name("Filter");
  131    131   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  132    132   
    ::aws_smithy_schema::ShapeId::from_static(
  133    133   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$MaxResults",
  134    134   
        "com.amazonaws.ec2.synthetic",
  135    135   
        "DescribeNetworkInsightsAnalysesInput",
  136    136   
    ),
  137    137   
    ::aws_smithy_schema::ShapeType::Integer,
  138         -
    "max_results",
         138  +
    "MaxResults",
  139    139   
    5,
  140    140   
);
  141    141   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  142    142   
    ::aws_smithy_schema::ShapeId::from_static(
  143    143   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$DryRun",
  144    144   
        "com.amazonaws.ec2.synthetic",
  145    145   
        "DescribeNetworkInsightsAnalysesInput",
  146    146   
    ),
  147    147   
    ::aws_smithy_schema::ShapeType::Boolean,
  148         -
    "dry_run",
         148  +
    "DryRun",
  149    149   
    6,
  150    150   
);
  151    151   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  152    152   
    ::aws_smithy_schema::ShapeId::from_static(
  153    153   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAnalysesInput$NextToken",
  154    154   
        "com.amazonaws.ec2.synthetic",
  155    155   
        "DescribeNetworkInsightsAnalysesInput",
  156    156   
    ),
  157    157   
    ::aws_smithy_schema::ShapeType::String,
  158         -
    "next_token",
         158  +
    "NextToken",
  159    159   
    7,
  160    160   
);
  161    161   
static DESCRIBENETWORKINSIGHTSANALYSESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  162    162   
    DESCRIBENETWORKINSIGHTSANALYSESINPUT_SCHEMA_ID,
  163    163   
    ::aws_smithy_schema::ShapeType::Structure,
  164    164   
    &[
  165    165   
        &DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_ANALYSIS_IDS,
  166    166   
        &DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_PATH_ID,
  167    167   
        &DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_ANALYSIS_START_TIME,
  168    168   
        &DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_ANALYSIS_END_TIME,
@@ -200,200 +326,324 @@
  220    220   
            ser.write_boolean(&DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_DRY_RUN, *val)?;
  221    221   
        }
  222    222   
        if let Some(ref val) = self.next_token {
  223    223   
            ser.write_string(&DESCRIBENETWORKINSIGHTSANALYSESINPUT_MEMBER_NEXT_TOKEN, val)?;
  224    224   
        }
  225    225   
        Ok(())
  226    226   
    }
  227    227   
}
  228    228   
impl DescribeNetworkInsightsAnalysesInput {
  229    229   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  230         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  231         -
        deserializer: &mut D,
         230  +
    pub fn deserialize(
         231  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  232    232   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  233    233   
        #[allow(unused_variables, unused_mut)]
  234    234   
        let mut builder = Self::builder();
  235    235   
        #[allow(
  236    236   
            unused_variables,
  237    237   
            unreachable_code,
  238    238   
            clippy::single_match,
  239    239   
            clippy::match_single_binding,
  240    240   
            clippy::diverging_sub_expression
  241    241   
        )]
  242         -
        deserializer.read_struct(&DESCRIBENETWORKINSIGHTSANALYSESINPUT_SCHEMA, (), |_, member, deser| {
         242  +
        deserializer.read_struct(&DESCRIBENETWORKINSIGHTSANALYSESINPUT_SCHEMA, &mut |member, deser| {
  243    243   
            match member.member_index() {
  244    244   
                Some(0) => {
  245         -
                    builder.network_insights_analysis_ids = Some({
  246         -
                        let container = if let Some(cap) = deser.container_size() {
  247         -
                            Vec::with_capacity(cap)
  248         -
                        } else {
  249         -
                            Vec::new()
  250         -
                        };
  251         -
                        deser.read_list(member, container, |mut list, deser| {
  252         -
                            list.push(deser.read_string(member)?);
  253         -
                            Ok(list)
  254         -
                        })?
  255         -
                    });
         245  +
                    builder.network_insights_analysis_ids = Some(deser.read_string_list(member)?);
  256    246   
                }
  257    247   
                Some(1) => {
  258    248   
                    builder.network_insights_path_id = Some(deser.read_string(member)?);
  259    249   
                }
  260    250   
                Some(2) => {
  261    251   
                    builder.analysis_start_time = Some(deser.read_timestamp(member)?);
  262    252   
                }
  263    253   
                Some(3) => {
  264    254   
                    builder.analysis_end_time = Some(deser.read_timestamp(member)?);
  265    255   
                }
  266    256   
                Some(4) => {
  267    257   
                    builder.filters = Some({
  268         -
                        let container = if let Some(cap) = deser.container_size() {
  269         -
                            Vec::with_capacity(cap)
  270         -
                        } else {
  271         -
                            Vec::new()
  272         -
                        };
  273         -
                        deser.read_list(member, container, |mut list, deser| {
  274         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  275         -
                            Ok(list)
  276         -
                        })?
         258  +
                        let mut container = Vec::new();
         259  +
                        deser.read_list(member, &mut |deser| {
         260  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         261  +
                            Ok(())
         262  +
                        })?;
         263  +
                        container
  277    264   
                    });
  278    265   
                }
  279    266   
                Some(5) => {
  280    267   
                    builder.max_results = Some(deser.read_integer(member)?);
  281    268   
                }
  282    269   
                Some(6) => {
  283    270   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  284    271   
                }
  285    272   
                Some(7) => {
  286    273   
                    builder.next_token = Some(deser.read_string(member)?);
  287    274   
                }
  288    275   
                _ => {}
  289    276   
            }
  290    277   
            Ok(())
  291    278   
        })?;
  292    279   
        builder
  293    280   
            .build()
  294    281   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  295    282   
    }
  296    283   
}
         284  +
impl DescribeNetworkInsightsAnalysesInput {
         285  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         286  +
    pub fn deserialize_with_response(
         287  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         288  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         289  +
        _status: u16,
         290  +
        _body: &[u8],
         291  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         292  +
        Self::deserialize(deserializer)
         293  +
    }
         294  +
}
  297    295   
impl DescribeNetworkInsightsAnalysesInput {
  298    296   
    /// Creates a new builder-style object to manufacture [`DescribeNetworkInsightsAnalysesInput`](crate::operation::describe_network_insights_analyses::DescribeNetworkInsightsAnalysesInput).
  299    297   
    pub fn builder() -> crate::operation::describe_network_insights_analyses::builders::DescribeNetworkInsightsAnalysesInputBuilder {
  300    298   
        crate::operation::describe_network_insights_analyses::builders::DescribeNetworkInsightsAnalysesInputBuilder::default()
  301    299   
    }
  302    300   
}
  303    301   
  304    302   
/// A builder for [`DescribeNetworkInsightsAnalysesInput`](crate::operation::describe_network_insights_analyses::DescribeNetworkInsightsAnalysesInput).
  305    303   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  306    304   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_insights_analyses/_describe_network_insights_analyses_output.rs

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

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_insights_paths/_describe_network_insights_paths_input.rs

@@ -73,73 +292,290 @@
   93     93   
    "com.amazonaws.ec2.synthetic",
   94     94   
    "DescribeNetworkInsightsPathsInput",
   95     95   
);
   96     96   
static DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_NETWORK_INSIGHTS_PATH_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   97     97   
    ::aws_smithy_schema::ShapeId::from_static(
   98     98   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsPathsInput$NetworkInsightsPathIds",
   99     99   
        "com.amazonaws.ec2.synthetic",
  100    100   
        "DescribeNetworkInsightsPathsInput",
  101    101   
    ),
  102    102   
    ::aws_smithy_schema::ShapeType::List,
  103         -
    "network_insights_path_ids",
         103  +
    "NetworkInsightsPathIds",
  104    104   
    0,
  105    105   
)
  106    106   
.with_xml_name("NetworkInsightsPathId");
  107    107   
static DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  108    108   
    ::aws_smithy_schema::ShapeId::from_static(
  109    109   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsPathsInput$Filters",
  110    110   
        "com.amazonaws.ec2.synthetic",
  111    111   
        "DescribeNetworkInsightsPathsInput",
  112    112   
    ),
  113    113   
    ::aws_smithy_schema::ShapeType::List,
  114         -
    "filters",
         114  +
    "Filters",
  115    115   
    1,
  116    116   
)
  117    117   
.with_xml_name("Filter");
  118    118   
static DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  119    119   
    ::aws_smithy_schema::ShapeId::from_static(
  120    120   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsPathsInput$MaxResults",
  121    121   
        "com.amazonaws.ec2.synthetic",
  122    122   
        "DescribeNetworkInsightsPathsInput",
  123    123   
    ),
  124    124   
    ::aws_smithy_schema::ShapeType::Integer,
  125         -
    "max_results",
         125  +
    "MaxResults",
  126    126   
    2,
  127    127   
);
  128    128   
static DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  129    129   
    ::aws_smithy_schema::ShapeId::from_static(
  130    130   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsPathsInput$DryRun",
  131    131   
        "com.amazonaws.ec2.synthetic",
  132    132   
        "DescribeNetworkInsightsPathsInput",
  133    133   
    ),
  134    134   
    ::aws_smithy_schema::ShapeType::Boolean,
  135         -
    "dry_run",
         135  +
    "DryRun",
  136    136   
    3,
  137    137   
);
  138    138   
static DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  139    139   
    ::aws_smithy_schema::ShapeId::from_static(
  140    140   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsPathsInput$NextToken",
  141    141   
        "com.amazonaws.ec2.synthetic",
  142    142   
        "DescribeNetworkInsightsPathsInput",
  143    143   
    ),
  144    144   
    ::aws_smithy_schema::ShapeType::String,
  145         -
    "next_token",
         145  +
    "NextToken",
  146    146   
    4,
  147    147   
);
  148    148   
static DESCRIBENETWORKINSIGHTSPATHSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  149    149   
    DESCRIBENETWORKINSIGHTSPATHSINPUT_SCHEMA_ID,
  150    150   
    ::aws_smithy_schema::ShapeType::Structure,
  151    151   
    &[
  152    152   
        &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_NETWORK_INSIGHTS_PATH_IDS,
  153    153   
        &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_FILTERS,
  154    154   
        &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_MAX_RESULTS,
  155    155   
        &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_DRY_RUN,
  156    156   
        &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_NEXT_TOKEN,
  157    157   
    ],
  158    158   
);
  159    159   
impl DescribeNetworkInsightsPathsInput {
  160    160   
    /// The schema for this shape.
  161    161   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DESCRIBENETWORKINSIGHTSPATHSINPUT_SCHEMA;
  162    162   
}
  163    163   
impl ::aws_smithy_schema::serde::SerializableStruct for DescribeNetworkInsightsPathsInput {
  164    164   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  165    165   
    fn serialize_members(
  166    166   
        &self,
  167    167   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  168    168   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  169    169   
        if let Some(ref val) = self.network_insights_path_ids {
  170    170   
            ser.write_list(
  171    171   
                &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_NETWORK_INSIGHTS_PATH_IDS,
  172    172   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  173    173   
                    for item in val {
  174    174   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  175    175   
                    }
  176    176   
                    Ok(())
  177    177   
                },
  178    178   
            )?;
  179    179   
        }
  180    180   
        if let Some(ref val) = self.filters {
  181    181   
            ser.write_list(
  182    182   
                &DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_FILTERS,
  183    183   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  184    184   
                    for item in val {
  185    185   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  186    186   
                    }
  187    187   
                    Ok(())
  188    188   
                },
  189    189   
            )?;
  190    190   
        }
  191    191   
        if let Some(ref val) = self.max_results {
  192    192   
            ser.write_integer(&DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_MAX_RESULTS, *val)?;
  193    193   
        }
  194    194   
        if let Some(ref val) = self.dry_run {
  195    195   
            ser.write_boolean(&DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_DRY_RUN, *val)?;
  196    196   
        }
  197    197   
        if let Some(ref val) = self.next_token {
  198    198   
            ser.write_string(&DESCRIBENETWORKINSIGHTSPATHSINPUT_MEMBER_NEXT_TOKEN, val)?;
  199    199   
        }
  200    200   
        Ok(())
  201    201   
    }
  202    202   
}
  203    203   
impl DescribeNetworkInsightsPathsInput {
  204    204   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  205         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  206         -
        deserializer: &mut D,
         205  +
    pub fn deserialize(
         206  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  207    207   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  208    208   
        #[allow(unused_variables, unused_mut)]
  209    209   
        let mut builder = Self::builder();
  210    210   
        #[allow(
  211    211   
            unused_variables,
  212    212   
            unreachable_code,
  213    213   
            clippy::single_match,
  214    214   
            clippy::match_single_binding,
  215    215   
            clippy::diverging_sub_expression
  216    216   
        )]
  217         -
        deserializer.read_struct(&DESCRIBENETWORKINSIGHTSPATHSINPUT_SCHEMA, (), |_, member, deser| {
         217  +
        deserializer.read_struct(&DESCRIBENETWORKINSIGHTSPATHSINPUT_SCHEMA, &mut |member, deser| {
  218    218   
            match member.member_index() {
  219    219   
                Some(0) => {
  220         -
                    builder.network_insights_path_ids = Some({
  221         -
                        let container = if let Some(cap) = deser.container_size() {
  222         -
                            Vec::with_capacity(cap)
  223         -
                        } else {
  224         -
                            Vec::new()
  225         -
                        };
  226         -
                        deser.read_list(member, container, |mut list, deser| {
  227         -
                            list.push(deser.read_string(member)?);
  228         -
                            Ok(list)
  229         -
                        })?
  230         -
                    });
         220  +
                    builder.network_insights_path_ids = Some(deser.read_string_list(member)?);
  231    221   
                }
  232    222   
                Some(1) => {
  233    223   
                    builder.filters = Some({
  234         -
                        let container = if let Some(cap) = deser.container_size() {
  235         -
                            Vec::with_capacity(cap)
  236         -
                        } else {
  237         -
                            Vec::new()
  238         -
                        };
  239         -
                        deser.read_list(member, container, |mut list, deser| {
  240         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  241         -
                            Ok(list)
  242         -
                        })?
         224  +
                        let mut container = Vec::new();
         225  +
                        deser.read_list(member, &mut |deser| {
         226  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         227  +
                            Ok(())
         228  +
                        })?;
         229  +
                        container
  243    230   
                    });
  244    231   
                }
  245    232   
                Some(2) => {
  246    233   
                    builder.max_results = Some(deser.read_integer(member)?);
  247    234   
                }
  248    235   
                Some(3) => {
  249    236   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  250    237   
                }
  251    238   
                Some(4) => {
  252    239   
                    builder.next_token = Some(deser.read_string(member)?);
  253    240   
                }
  254    241   
                _ => {}
  255    242   
            }
  256    243   
            Ok(())
  257    244   
        })?;
  258    245   
        builder
  259    246   
            .build()
  260    247   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  261    248   
    }
  262    249   
}
         250  +
impl DescribeNetworkInsightsPathsInput {
         251  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         252  +
    pub fn deserialize_with_response(
         253  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         254  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         255  +
        _status: u16,
         256  +
        _body: &[u8],
         257  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         258  +
        Self::deserialize(deserializer)
         259  +
    }
         260  +
}
  263    261   
impl DescribeNetworkInsightsPathsInput {
  264    262   
    /// Creates a new builder-style object to manufacture [`DescribeNetworkInsightsPathsInput`](crate::operation::describe_network_insights_paths::DescribeNetworkInsightsPathsInput).
  265    263   
    pub fn builder() -> crate::operation::describe_network_insights_paths::builders::DescribeNetworkInsightsPathsInputBuilder {
  266    264   
        crate::operation::describe_network_insights_paths::builders::DescribeNetworkInsightsPathsInputBuilder::default()
  267    265   
    }
  268    266   
}
  269    267   
  270    268   
/// A builder for [`DescribeNetworkInsightsPathsInput`](crate::operation::describe_network_insights_paths::DescribeNetworkInsightsPathsInput).
  271    269   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  272    270   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_insights_paths/_describe_network_insights_paths_output.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interface_attribute.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 `DescribeNetworkInterfaceAttribute`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DescribeNetworkInterfaceAttribute;
    6      6   
impl DescribeNetworkInterfaceAttribute {
    7      7   
    /// Creates a new `DescribeNetworkInterfaceAttribute`
    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::describe_network_interface_attribute::DescribeNetworkInterfaceAttributeInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::describe_network_interface_attribute::DescribeNetworkInterfaceAttributeOutput::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::describe_network_interface_attribute::DescribeNetworkInterfaceAttributeInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::describe_network_interface_attribute::DescribeNetworkInterfaceAttributeOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::describe_network_interface_attribute::DescribeNetworkInterfaceAttributeError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -124,130 +186,193 @@
  144    150   
                crate::operation::describe_network_interface_attribute::DescribeNetworkInterfaceAttributeError,
  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 DescribeNetworkInterfaceAttributeResponseDeserializer;
  153    159   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DescribeNetworkInterfaceAttributeResponseDeserializer {
  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    166   
        let headers = response.headers();
  160    167   
        let body = response.body().bytes().expect("body loaded");
  161    168   
        #[allow(unused_mut)]
  162    169   
        let mut force_error = false;
  163    170   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  164    171   
        let parse_result = if !success && status != 200 || force_error {
  165    172   
            crate::protocol_serde::shape_describe_network_interface_attribute::de_describe_network_interface_attribute_http_error(
  166    173   
                status, headers, body,

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interface_attribute/_describe_network_interface_attribute_input.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interface_attribute/_describe_network_interface_attribute_output.rs

@@ -31,31 +234,298 @@
   51     51   
    "com.amazonaws.ec2.synthetic",
   52     52   
    "DescribeNetworkInterfaceAttributeOutput",
   53     53   
);
   54     54   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_ATTACHMENT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   55     55   
    ::aws_smithy_schema::ShapeId::from_static(
   56     56   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfaceAttributeOutput$Attachment",
   57     57   
        "com.amazonaws.ec2.synthetic",
   58     58   
        "DescribeNetworkInterfaceAttributeOutput",
   59     59   
    ),
   60     60   
    ::aws_smithy_schema::ShapeType::Structure,
   61         -
    "attachment",
          61  +
    "Attachment",
   62     62   
    0,
   63     63   
)
   64     64   
.with_xml_name("attachment");
   65     65   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   66     66   
    ::aws_smithy_schema::ShapeId::from_static(
   67     67   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfaceAttributeOutput$Description",
   68     68   
        "com.amazonaws.ec2.synthetic",
   69     69   
        "DescribeNetworkInterfaceAttributeOutput",
   70     70   
    ),
   71     71   
    ::aws_smithy_schema::ShapeType::Structure,
   72         -
    "description",
          72  +
    "Description",
   73     73   
    1,
   74     74   
)
   75     75   
.with_xml_name("description");
   76     76   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_GROUPS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   77     77   
    ::aws_smithy_schema::ShapeId::from_static(
   78     78   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfaceAttributeOutput$Groups",
   79     79   
        "com.amazonaws.ec2.synthetic",
   80     80   
        "DescribeNetworkInterfaceAttributeOutput",
   81     81   
    ),
   82     82   
    ::aws_smithy_schema::ShapeType::List,
   83         -
    "groups",
          83  +
    "Groups",
   84     84   
    2,
   85     85   
)
   86     86   
.with_xml_name("groupSet");
   87     87   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_NETWORK_INTERFACE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   88     88   
    ::aws_smithy_schema::ShapeId::from_static(
   89     89   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfaceAttributeOutput$NetworkInterfaceId",
   90     90   
        "com.amazonaws.ec2.synthetic",
   91     91   
        "DescribeNetworkInterfaceAttributeOutput",
   92     92   
    ),
   93     93   
    ::aws_smithy_schema::ShapeType::String,
   94         -
    "network_interface_id",
          94  +
    "NetworkInterfaceId",
   95     95   
    3,
   96     96   
)
   97     97   
.with_xml_name("networkInterfaceId");
   98     98   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_SOURCE_DEST_CHECK: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   99     99   
    ::aws_smithy_schema::ShapeId::from_static(
  100    100   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfaceAttributeOutput$SourceDestCheck",
  101    101   
        "com.amazonaws.ec2.synthetic",
  102    102   
        "DescribeNetworkInterfaceAttributeOutput",
  103    103   
    ),
  104    104   
    ::aws_smithy_schema::ShapeType::Structure,
  105         -
    "source_dest_check",
         105  +
    "SourceDestCheck",
  106    106   
    4,
  107    107   
)
  108    108   
.with_xml_name("sourceDestCheck");
  109    109   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_ASSOCIATE_PUBLIC_IP_ADDRESS: ::aws_smithy_schema::Schema =
  110    110   
    ::aws_smithy_schema::Schema::new_member(
  111    111   
        ::aws_smithy_schema::ShapeId::from_static(
  112    112   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInterfaceAttributeOutput$AssociatePublicIpAddress",
  113    113   
            "com.amazonaws.ec2.synthetic",
  114    114   
            "DescribeNetworkInterfaceAttributeOutput",
  115    115   
        ),
  116    116   
        ::aws_smithy_schema::ShapeType::Boolean,
  117         -
        "associate_public_ip_address",
         117  +
        "AssociatePublicIpAddress",
  118    118   
        5,
  119    119   
    )
  120    120   
    .with_xml_name("associatePublicIpAddress");
         121  +
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
         122  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
         123  +
    ::aws_smithy_schema::ShapeType::String,
         124  +
    "request_id",
         125  +
    6,
         126  +
)
         127  +
.with_http_header("x-amzn-requestid");
  121    128   
static DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  122    129   
    DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_SCHEMA_ID,
  123    130   
    ::aws_smithy_schema::ShapeType::Structure,
  124    131   
    &[
  125    132   
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_ATTACHMENT,
  126    133   
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_DESCRIPTION,
  127    134   
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_GROUPS,
  128    135   
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_NETWORK_INTERFACE_ID,
  129    136   
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_SOURCE_DEST_CHECK,
  130    137   
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_ASSOCIATE_PUBLIC_IP_ADDRESS,
         138  +
        &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER__REQUEST_ID,
  131    139   
    ],
  132    140   
);
  133    141   
impl DescribeNetworkInterfaceAttributeOutput {
  134    142   
    /// The schema for this shape.
  135    143   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_SCHEMA;
  136    144   
}
  137    145   
impl ::aws_smithy_schema::serde::SerializableStruct for DescribeNetworkInterfaceAttributeOutput {
  138    146   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  139    147   
    fn serialize_members(
  140    148   
        &self,
  141    149   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  142    150   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  143    151   
        if let Some(ref val) = self.attachment {
  144    152   
            ser.write_struct(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_ATTACHMENT, val)?;
  145    153   
        }
  146    154   
        if let Some(ref val) = self.description {
  147    155   
            ser.write_struct(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_DESCRIPTION, val)?;
  148    156   
        }
  149    157   
        if let Some(ref val) = self.groups {
  150    158   
            ser.write_list(
  151    159   
                &DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_GROUPS,
  152    160   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  153    161   
                    for item in val {
  154    162   
                        ser.write_struct(crate::types::GroupIdentifier::SCHEMA, item)?;
  155    163   
                    }
  156    164   
                    Ok(())
  157    165   
                },
  158    166   
            )?;
  159    167   
        }
  160    168   
        if let Some(ref val) = self.network_interface_id {
  161    169   
            ser.write_string(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_NETWORK_INTERFACE_ID, val)?;
  162    170   
        }
  163    171   
        if let Some(ref val) = self.source_dest_check {
  164    172   
            ser.write_struct(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_SOURCE_DEST_CHECK, val)?;
  165    173   
        }
  166    174   
        if let Some(ref val) = self.associate_public_ip_address {
  167    175   
            ser.write_boolean(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_MEMBER_ASSOCIATE_PUBLIC_IP_ADDRESS, *val)?;
  168    176   
        }
  169    177   
        Ok(())
  170    178   
    }
  171    179   
}
  172    180   
impl DescribeNetworkInterfaceAttributeOutput {
  173    181   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  174         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  175         -
        deserializer: &mut D,
         182  +
    pub fn deserialize(
         183  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         184  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         185  +
        #[allow(unused_variables, unused_mut)]
         186  +
        let mut builder = Self::builder();
         187  +
        #[allow(
         188  +
            unused_variables,
         189  +
            unreachable_code,
         190  +
            clippy::single_match,
         191  +
            clippy::match_single_binding,
         192  +
            clippy::diverging_sub_expression
         193  +
        )]
         194  +
        deserializer.read_struct(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_SCHEMA, &mut |member, deser| {
         195  +
            match member.member_index() {
         196  +
                Some(0) => {
         197  +
                    builder.attachment = Some(crate::types::NetworkInterfaceAttachment::deserialize(deser)?);
         198  +
                }
         199  +
                Some(1) => {
         200  +
                    builder.description = Some(crate::types::AttributeValue::deserialize(deser)?);
         201  +
                }
         202  +
                Some(2) => {
         203  +
                    builder.groups = Some({
         204  +
                        let mut container = Vec::new();
         205  +
                        deser.read_list(member, &mut |deser| {
         206  +
                            container.push(crate::types::GroupIdentifier::deserialize(deser)?);
         207  +
                            Ok(())
         208  +
                        })?;
         209  +
                        container
         210  +
                    });
         211  +
                }
         212  +
                Some(3) => {
         213  +
                    builder.network_interface_id = Some(deser.read_string(member)?);
         214  +
                }
         215  +
                Some(4) => {
         216  +
                    builder.source_dest_check = Some(crate::types::AttributeBooleanValue::deserialize(deser)?);
         217  +
                }
         218  +
                Some(5) => {
         219  +
                    builder.associate_public_ip_address = Some(deser.read_boolean(member)?);
         220  +
                }
         221  +
                Some(6) => {
         222  +
                    builder._request_id = Some(deser.read_string(member)?);
         223  +
                }
         224  +
                _ => {}
         225  +
            }
         226  +
            Ok(())
         227  +
        })?;
         228  +
        Ok(builder.build())
         229  +
    }
         230  +
}
         231  +
impl DescribeNetworkInterfaceAttributeOutput {
         232  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         233  +
    /// Header-bound members are read directly from headers, avoiding runtime
         234  +
    /// member iteration overhead. Body members are read via the deserializer.
         235  +
    pub fn deserialize_with_response(
         236  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         237  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         238  +
        _status: u16,
         239  +
        _body: &[u8],
  176    240   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  177    241   
        #[allow(unused_variables, unused_mut)]
  178    242   
        let mut builder = Self::builder();
         243  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         244  +
            builder._request_id = Some(val.to_string());
         245  +
        }
  179    246   
        #[allow(
  180    247   
            unused_variables,
  181    248   
            unreachable_code,
  182    249   
            clippy::single_match,
  183    250   
            clippy::match_single_binding,
  184    251   
            clippy::diverging_sub_expression
  185    252   
        )]
  186         -
        deserializer.read_struct(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_SCHEMA, (), |_, member, deser| {
         253  +
        deserializer.read_struct(&DESCRIBENETWORKINTERFACEATTRIBUTEOUTPUT_SCHEMA, &mut |member, deser| {
  187    254   
            match member.member_index() {
  188    255   
                Some(0) => {
  189    256   
                    builder.attachment = Some(crate::types::NetworkInterfaceAttachment::deserialize(deser)?);
  190    257   
                }
  191    258   
                Some(1) => {
  192    259   
                    builder.description = Some(crate::types::AttributeValue::deserialize(deser)?);
  193    260   
                }
  194    261   
                Some(2) => {
  195    262   
                    builder.groups = Some({
  196         -
                        let container = if let Some(cap) = deser.container_size() {
  197         -
                            Vec::with_capacity(cap)
  198         -
                        } else {
  199         -
                            Vec::new()
  200         -
                        };
  201         -
                        deser.read_list(member, container, |mut list, deser| {
  202         -
                            list.push(crate::types::GroupIdentifier::deserialize(deser)?);
  203         -
                            Ok(list)
  204         -
                        })?
         263  +
                        let mut container = Vec::new();
         264  +
                        deser.read_list(member, &mut |deser| {
         265  +
                            container.push(crate::types::GroupIdentifier::deserialize(deser)?);
         266  +
                            Ok(())
         267  +
                        })?;
         268  +
                        container
  205    269   
                    });
  206    270   
                }
  207    271   
                Some(3) => {
  208    272   
                    builder.network_interface_id = Some(deser.read_string(member)?);
  209    273   
                }
  210    274   
                Some(4) => {
  211    275   
                    builder.source_dest_check = Some(crate::types::AttributeBooleanValue::deserialize(deser)?);
  212    276   
                }
  213    277   
                Some(5) => {
  214    278   
                    builder.associate_public_ip_address = Some(deser.read_boolean(member)?);

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interface_permissions.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 `DescribeNetworkInterfacePermissions`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DescribeNetworkInterfacePermissions;
    6      6   
impl DescribeNetworkInterfacePermissions {
    7      7   
    /// Creates a new `DescribeNetworkInterfacePermissions`
    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::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsOutput::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::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -124,130 +186,193 @@
  144    150   
                crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsError,
  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 DescribeNetworkInterfacePermissionsResponseDeserializer;
  153    159   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DescribeNetworkInterfacePermissionsResponseDeserializer {
  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    166   
        let headers = response.headers();
  160    167   
        let body = response.body().bytes().expect("body loaded");
  161    168   
        #[allow(unused_mut)]
  162    169   
        let mut force_error = false;
  163    170   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  164    171   
        let parse_result = if !success && status != 200 || force_error {
  165    172   
            crate::protocol_serde::shape_describe_network_interface_permissions::de_describe_network_interface_permissions_http_error(
  166    173   
                status, headers, body,

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interface_permissions/_describe_network_interface_permissions_input.rs

@@ -45,45 +247,245 @@
   65     65   
    "DescribeNetworkInterfacePermissionsInput",
   66     66   
);
   67     67   
static DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_NETWORK_INTERFACE_PERMISSION_IDS: ::aws_smithy_schema::Schema =
   68     68   
    ::aws_smithy_schema::Schema::new_member(
   69     69   
        ::aws_smithy_schema::ShapeId::from_static(
   70     70   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacePermissionsInput$NetworkInterfacePermissionIds",
   71     71   
            "com.amazonaws.ec2.synthetic",
   72     72   
            "DescribeNetworkInterfacePermissionsInput",
   73     73   
        ),
   74     74   
        ::aws_smithy_schema::ShapeType::List,
   75         -
        "network_interface_permission_ids",
          75  +
        "NetworkInterfacePermissionIds",
   76     76   
        0,
   77     77   
    )
   78     78   
    .with_xml_name("NetworkInterfacePermissionId");
   79     79   
static DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   80     80   
    ::aws_smithy_schema::ShapeId::from_static(
   81     81   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacePermissionsInput$Filters",
   82     82   
        "com.amazonaws.ec2.synthetic",
   83     83   
        "DescribeNetworkInterfacePermissionsInput",
   84     84   
    ),
   85     85   
    ::aws_smithy_schema::ShapeType::List,
   86         -
    "filters",
          86  +
    "Filters",
   87     87   
    1,
   88     88   
)
   89     89   
.with_xml_name("Filter");
   90     90   
static DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   91     91   
    ::aws_smithy_schema::ShapeId::from_static(
   92     92   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacePermissionsInput$NextToken",
   93     93   
        "com.amazonaws.ec2.synthetic",
   94     94   
        "DescribeNetworkInterfacePermissionsInput",
   95     95   
    ),
   96     96   
    ::aws_smithy_schema::ShapeType::String,
   97         -
    "next_token",
          97  +
    "NextToken",
   98     98   
    2,
   99     99   
);
  100    100   
static DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacePermissionsInput$MaxResults",
  103    103   
        "com.amazonaws.ec2.synthetic",
  104    104   
        "DescribeNetworkInterfacePermissionsInput",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::Integer,
  107         -
    "max_results",
         107  +
    "MaxResults",
  108    108   
    3,
  109    109   
);
  110    110   
static DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  111    111   
    DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_SCHEMA_ID,
  112    112   
    ::aws_smithy_schema::ShapeType::Structure,
  113    113   
    &[
  114    114   
        &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_NETWORK_INTERFACE_PERMISSION_IDS,
  115    115   
        &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_FILTERS,
  116    116   
        &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_NEXT_TOKEN,
  117    117   
        &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_MAX_RESULTS,
  118    118   
    ],
  119    119   
);
  120    120   
impl DescribeNetworkInterfacePermissionsInput {
  121    121   
    /// The schema for this shape.
  122    122   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_SCHEMA;
  123    123   
}
  124    124   
impl ::aws_smithy_schema::serde::SerializableStruct for DescribeNetworkInterfacePermissionsInput {
  125    125   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  126    126   
    fn serialize_members(
  127    127   
        &self,
  128    128   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  129    129   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  130    130   
        if let Some(ref val) = self.network_interface_permission_ids {
  131    131   
            ser.write_list(
  132    132   
                &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_NETWORK_INTERFACE_PERMISSION_IDS,
  133    133   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  134    134   
                    for item in val {
  135    135   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  136    136   
                    }
  137    137   
                    Ok(())
  138    138   
                },
  139    139   
            )?;
  140    140   
        }
  141    141   
        if let Some(ref val) = self.filters {
  142    142   
            ser.write_list(
  143    143   
                &DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_FILTERS,
  144    144   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  145    145   
                    for item in val {
  146    146   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  147    147   
                    }
  148    148   
                    Ok(())
  149    149   
                },
  150    150   
            )?;
  151    151   
        }
  152    152   
        if let Some(ref val) = self.next_token {
  153    153   
            ser.write_string(&DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_NEXT_TOKEN, val)?;
  154    154   
        }
  155    155   
        if let Some(ref val) = self.max_results {
  156    156   
            ser.write_integer(&DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_MEMBER_MAX_RESULTS, *val)?;
  157    157   
        }
  158    158   
        Ok(())
  159    159   
    }
  160    160   
}
  161    161   
impl DescribeNetworkInterfacePermissionsInput {
  162    162   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  163         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  164         -
        deserializer: &mut D,
         163  +
    pub fn deserialize(
         164  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  165    165   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  166    166   
        #[allow(unused_variables, unused_mut)]
  167    167   
        let mut builder = Self::builder();
  168    168   
        #[allow(
  169    169   
            unused_variables,
  170    170   
            unreachable_code,
  171    171   
            clippy::single_match,
  172    172   
            clippy::match_single_binding,
  173    173   
            clippy::diverging_sub_expression
  174    174   
        )]
  175         -
        deserializer.read_struct(&DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_SCHEMA, (), |_, member, deser| {
         175  +
        deserializer.read_struct(&DESCRIBENETWORKINTERFACEPERMISSIONSINPUT_SCHEMA, &mut |member, deser| {
  176    176   
            match member.member_index() {
  177    177   
                Some(0) => {
  178         -
                    builder.network_interface_permission_ids = Some({
  179         -
                        let container = if let Some(cap) = deser.container_size() {
  180         -
                            Vec::with_capacity(cap)
  181         -
                        } else {
  182         -
                            Vec::new()
  183         -
                        };
  184         -
                        deser.read_list(member, container, |mut list, deser| {
  185         -
                            list.push(deser.read_string(member)?);
  186         -
                            Ok(list)
  187         -
                        })?
  188         -
                    });
         178  +
                    builder.network_interface_permission_ids = Some(deser.read_string_list(member)?);
  189    179   
                }
  190    180   
                Some(1) => {
  191    181   
                    builder.filters = Some({
  192         -
                        let container = if let Some(cap) = deser.container_size() {
  193         -
                            Vec::with_capacity(cap)
  194         -
                        } else {
  195         -
                            Vec::new()
  196         -
                        };
  197         -
                        deser.read_list(member, container, |mut list, deser| {
  198         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  199         -
                            Ok(list)
  200         -
                        })?
         182  +
                        let mut container = Vec::new();
         183  +
                        deser.read_list(member, &mut |deser| {
         184  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         185  +
                            Ok(())
         186  +
                        })?;
         187  +
                        container
  201    188   
                    });
  202    189   
                }
  203    190   
                Some(2) => {
  204    191   
                    builder.next_token = Some(deser.read_string(member)?);
  205    192   
                }
  206    193   
                Some(3) => {
  207    194   
                    builder.max_results = Some(deser.read_integer(member)?);
  208    195   
                }
  209    196   
                _ => {}
  210    197   
            }
  211    198   
            Ok(())
  212    199   
        })?;
  213    200   
        builder
  214    201   
            .build()
  215    202   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  216    203   
    }
  217    204   
}
         205  +
impl DescribeNetworkInterfacePermissionsInput {
         206  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         207  +
    pub fn deserialize_with_response(
         208  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         209  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         210  +
        _status: u16,
         211  +
        _body: &[u8],
         212  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         213  +
        Self::deserialize(deserializer)
         214  +
    }
         215  +
}
  218    216   
impl DescribeNetworkInterfacePermissionsInput {
  219    217   
    /// Creates a new builder-style object to manufacture [`DescribeNetworkInterfacePermissionsInput`](crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsInput).
  220    218   
    pub fn builder() -> crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsInputBuilder {
  221    219   
        crate::operation::describe_network_interface_permissions::builders::DescribeNetworkInterfacePermissionsInputBuilder::default()
  222    220   
    }
  223    221   
}
  224    222   
  225    223   
/// A builder for [`DescribeNetworkInterfacePermissionsInput`](crate::operation::describe_network_interface_permissions::DescribeNetworkInterfacePermissionsInput).
  226    224   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  227    225   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interface_permissions/_describe_network_interface_permissions_output.rs

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

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interfaces/_describe_network_interfaces_input.rs

@@ -188,188 +408,406 @@
  208    208   
    "com.amazonaws.ec2.synthetic",
  209    209   
    "DescribeNetworkInterfacesInput",
  210    210   
);
  211    211   
static DESCRIBENETWORKINTERFACESINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  212    212   
    ::aws_smithy_schema::ShapeId::from_static(
  213    213   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacesInput$NextToken",
  214    214   
        "com.amazonaws.ec2.synthetic",
  215    215   
        "DescribeNetworkInterfacesInput",
  216    216   
    ),
  217    217   
    ::aws_smithy_schema::ShapeType::String,
  218         -
    "next_token",
         218  +
    "NextToken",
  219    219   
    0,
  220    220   
);
  221    221   
static DESCRIBENETWORKINTERFACESINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  222    222   
    ::aws_smithy_schema::ShapeId::from_static(
  223    223   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacesInput$MaxResults",
  224    224   
        "com.amazonaws.ec2.synthetic",
  225    225   
        "DescribeNetworkInterfacesInput",
  226    226   
    ),
  227    227   
    ::aws_smithy_schema::ShapeType::Integer,
  228         -
    "max_results",
         228  +
    "MaxResults",
  229    229   
    1,
  230    230   
);
  231    231   
static DESCRIBENETWORKINTERFACESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  232    232   
    ::aws_smithy_schema::ShapeId::from_static(
  233    233   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacesInput$DryRun",
  234    234   
        "com.amazonaws.ec2.synthetic",
  235    235   
        "DescribeNetworkInterfacesInput",
  236    236   
    ),
  237    237   
    ::aws_smithy_schema::ShapeType::Boolean,
  238         -
    "dry_run",
         238  +
    "DryRun",
  239    239   
    2,
  240    240   
)
  241    241   
.with_xml_name("dryRun");
  242    242   
static DESCRIBENETWORKINTERFACESINPUT_MEMBER_NETWORK_INTERFACE_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  243    243   
    ::aws_smithy_schema::ShapeId::from_static(
  244    244   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacesInput$NetworkInterfaceIds",
  245    245   
        "com.amazonaws.ec2.synthetic",
  246    246   
        "DescribeNetworkInterfacesInput",
  247    247   
    ),
  248    248   
    ::aws_smithy_schema::ShapeType::List,
  249         -
    "network_interface_ids",
         249  +
    "NetworkInterfaceIds",
  250    250   
    3,
  251    251   
)
  252    252   
.with_xml_name("NetworkInterfaceId");
  253    253   
static DESCRIBENETWORKINTERFACESINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  254    254   
    ::aws_smithy_schema::ShapeId::from_static(
  255    255   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInterfacesInput$Filters",
  256    256   
        "com.amazonaws.ec2.synthetic",
  257    257   
        "DescribeNetworkInterfacesInput",
  258    258   
    ),
  259    259   
    ::aws_smithy_schema::ShapeType::List,
  260         -
    "filters",
         260  +
    "Filters",
  261    261   
    4,
  262    262   
)
  263    263   
.with_xml_name("filter");
  264    264   
static DESCRIBENETWORKINTERFACESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  265    265   
    DESCRIBENETWORKINTERFACESINPUT_SCHEMA_ID,
  266    266   
    ::aws_smithy_schema::ShapeType::Structure,
  267    267   
    &[
  268    268   
        &DESCRIBENETWORKINTERFACESINPUT_MEMBER_NEXT_TOKEN,
  269    269   
        &DESCRIBENETWORKINTERFACESINPUT_MEMBER_MAX_RESULTS,
  270    270   
        &DESCRIBENETWORKINTERFACESINPUT_MEMBER_DRY_RUN,
  271    271   
        &DESCRIBENETWORKINTERFACESINPUT_MEMBER_NETWORK_INTERFACE_IDS,
  272    272   
        &DESCRIBENETWORKINTERFACESINPUT_MEMBER_FILTERS,
  273    273   
    ],
  274    274   
);
  275    275   
impl DescribeNetworkInterfacesInput {
  276    276   
    /// The schema for this shape.
  277    277   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DESCRIBENETWORKINTERFACESINPUT_SCHEMA;
  278    278   
}
  279    279   
impl ::aws_smithy_schema::serde::SerializableStruct for DescribeNetworkInterfacesInput {
  280    280   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  281    281   
    fn serialize_members(
  282    282   
        &self,
  283    283   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  284    284   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  285    285   
        if let Some(ref val) = self.next_token {
  286    286   
            ser.write_string(&DESCRIBENETWORKINTERFACESINPUT_MEMBER_NEXT_TOKEN, val)?;
  287    287   
        }
  288    288   
        if let Some(ref val) = self.max_results {
  289    289   
            ser.write_integer(&DESCRIBENETWORKINTERFACESINPUT_MEMBER_MAX_RESULTS, *val)?;
  290    290   
        }
  291    291   
        if let Some(ref val) = self.dry_run {
  292    292   
            ser.write_boolean(&DESCRIBENETWORKINTERFACESINPUT_MEMBER_DRY_RUN, *val)?;
  293    293   
        }
  294    294   
        if let Some(ref val) = self.network_interface_ids {
  295    295   
            ser.write_list(
  296    296   
                &DESCRIBENETWORKINTERFACESINPUT_MEMBER_NETWORK_INTERFACE_IDS,
  297    297   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  298    298   
                    for item in val {
  299    299   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  300    300   
                    }
  301    301   
                    Ok(())
  302    302   
                },
  303    303   
            )?;
  304    304   
        }
  305    305   
        if let Some(ref val) = self.filters {
  306    306   
            ser.write_list(
  307    307   
                &DESCRIBENETWORKINTERFACESINPUT_MEMBER_FILTERS,
  308    308   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  309    309   
                    for item in val {
  310    310   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  311    311   
                    }
  312    312   
                    Ok(())
  313    313   
                },
  314    314   
            )?;
  315    315   
        }
  316    316   
        Ok(())
  317    317   
    }
  318    318   
}
  319    319   
impl DescribeNetworkInterfacesInput {
  320    320   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  321         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  322         -
        deserializer: &mut D,
         321  +
    pub fn deserialize(
         322  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  323    323   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  324    324   
        #[allow(unused_variables, unused_mut)]
  325    325   
        let mut builder = Self::builder();
  326    326   
        #[allow(
  327    327   
            unused_variables,
  328    328   
            unreachable_code,
  329    329   
            clippy::single_match,
  330    330   
            clippy::match_single_binding,
  331    331   
            clippy::diverging_sub_expression
  332    332   
        )]
  333         -
        deserializer.read_struct(&DESCRIBENETWORKINTERFACESINPUT_SCHEMA, (), |_, member, deser| {
         333  +
        deserializer.read_struct(&DESCRIBENETWORKINTERFACESINPUT_SCHEMA, &mut |member, deser| {
  334    334   
            match member.member_index() {
  335    335   
                Some(0) => {
  336    336   
                    builder.next_token = Some(deser.read_string(member)?);
  337    337   
                }
  338    338   
                Some(1) => {
  339    339   
                    builder.max_results = Some(deser.read_integer(member)?);
  340    340   
                }
  341    341   
                Some(2) => {
  342    342   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  343    343   
                }
  344    344   
                Some(3) => {
  345         -
                    builder.network_interface_ids = Some({
  346         -
                        let container = if let Some(cap) = deser.container_size() {
  347         -
                            Vec::with_capacity(cap)
  348         -
                        } else {
  349         -
                            Vec::new()
  350         -
                        };
  351         -
                        deser.read_list(member, container, |mut list, deser| {
  352         -
                            list.push(deser.read_string(member)?);
  353         -
                            Ok(list)
  354         -
                        })?
  355         -
                    });
         345  +
                    builder.network_interface_ids = Some(deser.read_string_list(member)?);
  356    346   
                }
  357    347   
                Some(4) => {
  358    348   
                    builder.filters = Some({
  359         -
                        let container = if let Some(cap) = deser.container_size() {
  360         -
                            Vec::with_capacity(cap)
  361         -
                        } else {
  362         -
                            Vec::new()
  363         -
                        };
  364         -
                        deser.read_list(member, container, |mut list, deser| {
  365         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  366         -
                            Ok(list)
  367         -
                        })?
         349  +
                        let mut container = Vec::new();
         350  +
                        deser.read_list(member, &mut |deser| {
         351  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         352  +
                            Ok(())
         353  +
                        })?;
         354  +
                        container
  368    355   
                    });
  369    356   
                }
  370    357   
                _ => {}
  371    358   
            }
  372    359   
            Ok(())
  373    360   
        })?;
  374    361   
        builder
  375    362   
            .build()
  376    363   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  377    364   
    }
  378    365   
}
         366  +
impl DescribeNetworkInterfacesInput {
         367  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         368  +
    pub fn deserialize_with_response(
         369  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         370  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         371  +
        _status: u16,
         372  +
        _body: &[u8],
         373  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         374  +
        Self::deserialize(deserializer)
         375  +
    }
         376  +
}
  379    377   
impl DescribeNetworkInterfacesInput {
  380    378   
    /// Creates a new builder-style object to manufacture [`DescribeNetworkInterfacesInput`](crate::operation::describe_network_interfaces::DescribeNetworkInterfacesInput).
  381    379   
    pub fn builder() -> crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesInputBuilder {
  382    380   
        crate::operation::describe_network_interfaces::builders::DescribeNetworkInterfacesInputBuilder::default()
  383    381   
    }
  384    382   
}
  385    383   
  386    384   
/// A builder for [`DescribeNetworkInterfacesInput`](crate::operation::describe_network_interfaces::DescribeNetworkInterfacesInput).
  387    385   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  388    386   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_network_interfaces/_describe_network_interfaces_output.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_outpost_lags.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 `DescribeOutpostLags`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DescribeOutpostLags;
    6      6   
impl DescribeOutpostLags {
    7      7   
    /// Creates a new `DescribeOutpostLags`
    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::describe_outpost_lags::DescribeOutpostLagsInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::describe_outpost_lags::DescribeOutpostLagsOutput::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::describe_outpost_lags::DescribeOutpostLagsInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::describe_outpost_lags::DescribeOutpostLagsOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::describe_outpost_lags::DescribeOutpostLagsError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::describe_outpost_lags::DescribeOutpostLagsError,
  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 DescribeOutpostLagsResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DescribeOutpostLagsResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_describe_outpost_lags::de_describe_outpost_lags_http_error(status, headers, body)
  160    165   
        } else {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/describe_outpost_lags/_describe_outpost_lags_input.rs

@@ -73,73 +292,290 @@
   93     93   
    "com.amazonaws.ec2.synthetic",
   94     94   
    "DescribeOutpostLagsInput",
   95     95   
);
   96     96   
static DESCRIBEOUTPOSTLAGSINPUT_MEMBER_OUTPOST_LAG_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   97     97   
    ::aws_smithy_schema::ShapeId::from_static(
   98     98   
        "com.amazonaws.ec2.synthetic#DescribeOutpostLagsInput$OutpostLagIds",
   99     99   
        "com.amazonaws.ec2.synthetic",
  100    100   
        "DescribeOutpostLagsInput",
  101    101   
    ),
  102    102   
    ::aws_smithy_schema::ShapeType::List,
  103         -
    "outpost_lag_ids",
         103  +
    "OutpostLagIds",
  104    104   
    0,
  105    105   
)
  106    106   
.with_xml_name("OutpostLagId");
  107    107   
static DESCRIBEOUTPOSTLAGSINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  108    108   
    ::aws_smithy_schema::ShapeId::from_static(
  109    109   
        "com.amazonaws.ec2.synthetic#DescribeOutpostLagsInput$Filters",
  110    110   
        "com.amazonaws.ec2.synthetic",
  111    111   
        "DescribeOutpostLagsInput",
  112    112   
    ),
  113    113   
    ::aws_smithy_schema::ShapeType::List,
  114         -
    "filters",
         114  +
    "Filters",
  115    115   
    1,
  116    116   
)
  117    117   
.with_xml_name("Filter");
  118    118   
static DESCRIBEOUTPOSTLAGSINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  119    119   
    ::aws_smithy_schema::ShapeId::from_static(
  120    120   
        "com.amazonaws.ec2.synthetic#DescribeOutpostLagsInput$MaxResults",
  121    121   
        "com.amazonaws.ec2.synthetic",
  122    122   
        "DescribeOutpostLagsInput",
  123    123   
    ),
  124    124   
    ::aws_smithy_schema::ShapeType::Integer,
  125         -
    "max_results",
         125  +
    "MaxResults",
  126    126   
    2,
  127    127   
);
  128    128   
static DESCRIBEOUTPOSTLAGSINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  129    129   
    ::aws_smithy_schema::ShapeId::from_static(
  130    130   
        "com.amazonaws.ec2.synthetic#DescribeOutpostLagsInput$NextToken",
  131    131   
        "com.amazonaws.ec2.synthetic",
  132    132   
        "DescribeOutpostLagsInput",
  133    133   
    ),
  134    134   
    ::aws_smithy_schema::ShapeType::String,
  135         -
    "next_token",
         135  +
    "NextToken",
  136    136   
    3,
  137    137   
);
  138    138   
static DESCRIBEOUTPOSTLAGSINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  139    139   
    ::aws_smithy_schema::ShapeId::from_static(
  140    140   
        "com.amazonaws.ec2.synthetic#DescribeOutpostLagsInput$DryRun",
  141    141   
        "com.amazonaws.ec2.synthetic",
  142    142   
        "DescribeOutpostLagsInput",
  143    143   
    ),
  144    144   
    ::aws_smithy_schema::ShapeType::Boolean,
  145         -
    "dry_run",
         145  +
    "DryRun",
  146    146   
    4,
  147    147   
);
  148    148   
static DESCRIBEOUTPOSTLAGSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  149    149   
    DESCRIBEOUTPOSTLAGSINPUT_SCHEMA_ID,
  150    150   
    ::aws_smithy_schema::ShapeType::Structure,
  151    151   
    &[
  152    152   
        &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_OUTPOST_LAG_IDS,
  153    153   
        &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_FILTERS,
  154    154   
        &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_MAX_RESULTS,
  155    155   
        &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_NEXT_TOKEN,
  156    156   
        &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_DRY_RUN,
  157    157   
    ],
  158    158   
);
  159    159   
impl DescribeOutpostLagsInput {
  160    160   
    /// The schema for this shape.
  161    161   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DESCRIBEOUTPOSTLAGSINPUT_SCHEMA;
  162    162   
}
  163    163   
impl ::aws_smithy_schema::serde::SerializableStruct for DescribeOutpostLagsInput {
  164    164   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  165    165   
    fn serialize_members(
  166    166   
        &self,
  167    167   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  168    168   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  169    169   
        if let Some(ref val) = self.outpost_lag_ids {
  170    170   
            ser.write_list(
  171    171   
                &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_OUTPOST_LAG_IDS,
  172    172   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  173    173   
                    for item in val {
  174    174   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  175    175   
                    }
  176    176   
                    Ok(())
  177    177   
                },
  178    178   
            )?;
  179    179   
        }
  180    180   
        if let Some(ref val) = self.filters {
  181    181   
            ser.write_list(
  182    182   
                &DESCRIBEOUTPOSTLAGSINPUT_MEMBER_FILTERS,
  183    183   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  184    184   
                    for item in val {
  185    185   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  186    186   
                    }
  187    187   
                    Ok(())
  188    188   
                },
  189    189   
            )?;
  190    190   
        }
  191    191   
        if let Some(ref val) = self.max_results {
  192    192   
            ser.write_integer(&DESCRIBEOUTPOSTLAGSINPUT_MEMBER_MAX_RESULTS, *val)?;
  193    193   
        }
  194    194   
        if let Some(ref val) = self.next_token {
  195    195   
            ser.write_string(&DESCRIBEOUTPOSTLAGSINPUT_MEMBER_NEXT_TOKEN, val)?;
  196    196   
        }
  197    197   
        if let Some(ref val) = self.dry_run {
  198    198   
            ser.write_boolean(&DESCRIBEOUTPOSTLAGSINPUT_MEMBER_DRY_RUN, *val)?;
  199    199   
        }
  200    200   
        Ok(())
  201    201   
    }
  202    202   
}
  203    203   
impl DescribeOutpostLagsInput {
  204    204   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  205         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  206         -
        deserializer: &mut D,
         205  +
    pub fn deserialize(
         206  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  207    207   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  208    208   
        #[allow(unused_variables, unused_mut)]
  209    209   
        let mut builder = Self::builder();
  210    210   
        #[allow(
  211    211   
            unused_variables,
  212    212   
            unreachable_code,
  213    213   
            clippy::single_match,
  214    214   
            clippy::match_single_binding,
  215    215   
            clippy::diverging_sub_expression
  216    216   
        )]
  217         -
        deserializer.read_struct(&DESCRIBEOUTPOSTLAGSINPUT_SCHEMA, (), |_, member, deser| {
         217  +
        deserializer.read_struct(&DESCRIBEOUTPOSTLAGSINPUT_SCHEMA, &mut |member, deser| {
  218    218   
            match member.member_index() {
  219    219   
                Some(0) => {
  220         -
                    builder.outpost_lag_ids = Some({
  221         -
                        let container = if let Some(cap) = deser.container_size() {
  222         -
                            Vec::with_capacity(cap)
  223         -
                        } else {
  224         -
                            Vec::new()
  225         -
                        };
  226         -
                        deser.read_list(member, container, |mut list, deser| {
  227         -
                            list.push(deser.read_string(member)?);
  228         -
                            Ok(list)
  229         -
                        })?
  230         -
                    });
         220  +
                    builder.outpost_lag_ids = Some(deser.read_string_list(member)?);
  231    221   
                }
  232    222   
                Some(1) => {
  233    223   
                    builder.filters = Some({
  234         -
                        let container = if let Some(cap) = deser.container_size() {
  235         -
                            Vec::with_capacity(cap)
  236         -
                        } else {
  237         -
                            Vec::new()
  238         -
                        };
  239         -
                        deser.read_list(member, container, |mut list, deser| {
  240         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  241         -
                            Ok(list)
  242         -
                        })?
         224  +
                        let mut container = Vec::new();
         225  +
                        deser.read_list(member, &mut |deser| {
         226  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         227  +
                            Ok(())
         228  +
                        })?;
         229  +
                        container
  243    230   
                    });
  244    231   
                }
  245    232   
                Some(2) => {
  246    233   
                    builder.max_results = Some(deser.read_integer(member)?);
  247    234   
                }
  248    235   
                Some(3) => {
  249    236   
                    builder.next_token = Some(deser.read_string(member)?);
  250    237   
                }
  251    238   
                Some(4) => {
  252    239   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  253    240   
                }
  254    241   
                _ => {}
  255    242   
            }
  256    243   
            Ok(())
  257    244   
        })?;
  258    245   
        builder
  259    246   
            .build()
  260    247   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  261    248   
    }
  262    249   
}
         250  +
impl DescribeOutpostLagsInput {
         251  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         252  +
    pub fn deserialize_with_response(
         253  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         254  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         255  +
        _status: u16,
         256  +
        _body: &[u8],
         257  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         258  +
        Self::deserialize(deserializer)
         259  +
    }
         260  +
}
  263    261   
impl DescribeOutpostLagsInput {
  264    262   
    /// Creates a new builder-style object to manufacture [`DescribeOutpostLagsInput`](crate::operation::describe_outpost_lags::DescribeOutpostLagsInput).
  265    263   
    pub fn builder() -> crate::operation::describe_outpost_lags::builders::DescribeOutpostLagsInputBuilder {
  266    264   
        crate::operation::describe_outpost_lags::builders::DescribeOutpostLagsInputBuilder::default()
  267    265   
    }
  268    266   
}
  269    267   
  270    268   
/// A builder for [`DescribeOutpostLagsInput`](crate::operation::describe_outpost_lags::DescribeOutpostLagsInput).
  271    269   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  272    270   
#[non_exhaustive]