pub fn ser_update_proxy_input_input(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::update_proxy::UpdateProxyInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.nat_gateway_id {
object.key("NatGatewayId").string(var_1.as_str());
}
if let Some(var_2) = &input.proxy_name {
object.key("ProxyName").string(var_2.as_str());
}
if let Some(var_3) = &input.proxy_arn {
object.key("ProxyArn").string(var_3.as_str());
}
if let Some(var_4) = &input.listener_properties_to_add {
let mut array_5 = object.key("ListenerPropertiesToAdd").start_array();
for item_6 in var_4 {
{
#[allow(unused_mut)]
let mut object_7 = array_5.value().start_object();
crate::protocol_serde::shape_listener_property_request::ser_listener_property_request(&mut object_7, item_6)?;
object_7.finish();
}
}
array_5.finish();
}
if let Some(var_8) = &input.listener_properties_to_remove {
let mut array_9 = object.key("ListenerPropertiesToRemove").start_array();
for item_10 in var_8 {
{
#[allow(unused_mut)]
let mut object_11 = array_9.value().start_object();
crate::protocol_serde::shape_listener_property_request::ser_listener_property_request(&mut object_11, item_10)?;
object_11.finish();
}
}
array_9.finish();
}
if let Some(var_12) = &input.tls_intercept_properties {
#[allow(unused_mut)]
let mut object_13 = object.key("TlsInterceptProperties").start_object();
crate::protocol_serde::shape_tls_intercept_properties_request::ser_tls_intercept_properties_request(&mut object_13, var_12)?;
object_13.finish();
}
if let Some(var_14) = &input.update_token {
object.key("UpdateToken").string(var_14.as_str());
}
Ok(())
}