pub fn ser_restore_table_input_input(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::restore_table::RestoreTableInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.source_keyspace_name {
object.key("sourceKeyspaceName").string(var_1.as_str());
}
if let Some(var_2) = &input.source_table_name {
object.key("sourceTableName").string(var_2.as_str());
}
if let Some(var_3) = &input.target_keyspace_name {
object.key("targetKeyspaceName").string(var_3.as_str());
}
if let Some(var_4) = &input.target_table_name {
object.key("targetTableName").string(var_4.as_str());
}
if let Some(var_5) = &input.restore_timestamp {
object
.key("restoreTimestamp")
.date_time(var_5, ::aws_smithy_types::date_time::Format::EpochSeconds)?;
}
if let Some(var_6) = &input.capacity_specification_override {
#[allow(unused_mut)]
let mut object_7 = object.key("capacitySpecificationOverride").start_object();
crate::protocol_serde::shape_capacity_specification::ser_capacity_specification(&mut object_7, var_6)?;
object_7.finish();
}
if let Some(var_8) = &input.encryption_specification_override {
#[allow(unused_mut)]
let mut object_9 = object.key("encryptionSpecificationOverride").start_object();
crate::protocol_serde::shape_encryption_specification::ser_encryption_specification(&mut object_9, var_8)?;
object_9.finish();
}
if let Some(var_10) = &input.point_in_time_recovery_override {
#[allow(unused_mut)]
let mut object_11 = object.key("pointInTimeRecoveryOverride").start_object();
crate::protocol_serde::shape_point_in_time_recovery::ser_point_in_time_recovery(&mut object_11, var_10)?;
object_11.finish();
}
if let Some(var_12) = &input.tags_override {
let mut array_13 = object.key("tagsOverride").start_array();
for item_14 in var_12 {
{
#[allow(unused_mut)]
let mut object_15 = array_13.value().start_object();
crate::protocol_serde::shape_tag::ser_tag(&mut object_15, item_14)?;
object_15.finish();
}
}
array_13.finish();
}
if let Some(var_16) = &input.auto_scaling_specification {
#[allow(unused_mut)]
let mut object_17 = object.key("autoScalingSpecification").start_object();
crate::protocol_serde::shape_auto_scaling_specification::ser_auto_scaling_specification(&mut object_17, var_16)?;
object_17.finish();
}
if let Some(var_18) = &input.replica_specifications {
let mut array_19 = object.key("replicaSpecifications").start_array();
for item_20 in var_18 {
{
#[allow(unused_mut)]
let mut object_21 = array_19.value().start_object();
crate::protocol_serde::shape_replica_specification::ser_replica_specification(&mut object_21, item_20)?;
object_21.finish();
}
}
array_19.finish();
}
Ok(())
}