pub fn ser_add_output_request(
object: &mut aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::types::AddOutputRequest,
) -> Result<(), aws_smithy_http::operation::error::SerializationError> {
if let Some(var_1) = &input.cidr_allow_list {
let mut array_2 = object.key("cidrAllowList").start_array();
for item_3 in var_1 {
{
array_2.value().string(item_3.as_str());
}
}
array_2.finish();
}
if let Some(var_4) = &input.description {
object.key("description").string(var_4.as_str());
}
if let Some(var_5) = &input.destination {
object.key("destination").string(var_5.as_str());
}
if let Some(var_6) = &input.encryption {
#[allow(unused_mut)]
let mut object_7 = object.key("encryption").start_object();
crate::protocol_serde::shape_encryption::ser_encryption(&mut object_7, var_6)?;
object_7.finish();
}
if input.max_latency != 0 {
object.key("maxLatency").number(
#[allow(clippy::useless_conversion)]
aws_smithy_types::Number::NegInt((input.max_latency).into()),
);
}
if let Some(var_8) = &input.media_stream_output_configurations {
let mut array_9 = object.key("mediaStreamOutputConfigurations").start_array();
for item_10 in var_8 {
{
#[allow(unused_mut)]
let mut object_11 = array_9.value().start_object();
crate::protocol_serde::shape_media_stream_output_configuration_request::ser_media_stream_output_configuration_request(&mut object_11, item_10)?;
object_11.finish();
}
}
array_9.finish();
}
if input.min_latency != 0 {
object.key("minLatency").number(
#[allow(clippy::useless_conversion)]
aws_smithy_types::Number::NegInt((input.min_latency).into()),
);
}
if let Some(var_12) = &input.name {
object.key("name").string(var_12.as_str());
}
if input.port != 0 {
object.key("port").number(
#[allow(clippy::useless_conversion)]
aws_smithy_types::Number::NegInt((input.port).into()),
);
}
if let Some(var_13) = &input.protocol {
object.key("protocol").string(var_13.as_str());
}
if let Some(var_14) = &input.remote_id {
object.key("remoteId").string(var_14.as_str());
}
if input.sender_control_port != 0 {
object.key("senderControlPort").number(
#[allow(clippy::useless_conversion)]
aws_smithy_types::Number::NegInt((input.sender_control_port).into()),
);
}
if input.smoothing_latency != 0 {
object.key("smoothingLatency").number(
#[allow(clippy::useless_conversion)]
aws_smithy_types::Number::NegInt((input.smoothing_latency).into()),
);
}
if let Some(var_15) = &input.stream_id {
object.key("streamId").string(var_15.as_str());
}
if let Some(var_16) = &input.vpc_interface_attachment {
#[allow(unused_mut)]
let mut object_17 = object.key("vpcInterfaceAttachment").start_object();
crate::protocol_serde::shape_vpc_interface_attachment::ser_vpc_interface_attachment(
&mut object_17,
var_16,
)?;
object_17.finish();
}
Ok(())
}