pub fn ser_start_game_session_placement_input(
object: &mut aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::start_game_session_placement::StartGameSessionPlacementInput,
) -> Result<(), aws_smithy_http::operation::error::SerializationError> {
if let Some(var_1) = &input.placement_id {
object.key("PlacementId").string(var_1.as_str());
}
if let Some(var_2) = &input.game_session_queue_name {
object.key("GameSessionQueueName").string(var_2.as_str());
}
if let Some(var_3) = &input.game_properties {
let mut array_4 = object.key("GameProperties").start_array();
for item_5 in var_3 {
{
#[allow(unused_mut)]
let mut object_6 = array_4.value().start_object();
crate::protocol_serde::shape_game_property::ser_game_property(
&mut object_6,
item_5,
)?;
object_6.finish();
}
}
array_4.finish();
}
if let Some(var_7) = &input.maximum_player_session_count {
object.key("MaximumPlayerSessionCount").number(
#[allow(clippy::useless_conversion)]
aws_smithy_types::Number::NegInt((*var_7).into()),
);
}
if let Some(var_8) = &input.game_session_name {
object.key("GameSessionName").string(var_8.as_str());
}
if let Some(var_9) = &input.player_latencies {
let mut array_10 = object.key("PlayerLatencies").start_array();
for item_11 in var_9 {
{
#[allow(unused_mut)]
let mut object_12 = array_10.value().start_object();
crate::protocol_serde::shape_player_latency::ser_player_latency(
&mut object_12,
item_11,
)?;
object_12.finish();
}
}
array_10.finish();
}
if let Some(var_13) = &input.desired_player_sessions {
let mut array_14 = object.key("DesiredPlayerSessions").start_array();
for item_15 in var_13 {
{
#[allow(unused_mut)]
let mut object_16 = array_14.value().start_object();
crate::protocol_serde::shape_desired_player_session::ser_desired_player_session(
&mut object_16,
item_15,
)?;
object_16.finish();
}
}
array_14.finish();
}
if let Some(var_17) = &input.game_session_data {
object.key("GameSessionData").string(var_17.as_str());
}
Ok(())
}