pub fn ser_create_crawler_input_input(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::create_crawler::CreateCrawlerInput,
) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.name {
object.key("Name").string(var_1.as_str());
}
if let Some(var_2) = &input.role {
object.key("Role").string(var_2.as_str());
}
if let Some(var_3) = &input.database_name {
object.key("DatabaseName").string(var_3.as_str());
}
if let Some(var_4) = &input.description {
object.key("Description").string(var_4.as_str());
}
if let Some(var_5) = &input.targets {
#[allow(unused_mut)]
let mut object_6 = object.key("Targets").start_object();
crate::protocol_serde::shape_crawler_targets::ser_crawler_targets(&mut object_6, var_5)?;
object_6.finish();
}
if let Some(var_7) = &input.schedule {
object.key("Schedule").string(var_7.as_str());
}
if let Some(var_8) = &input.classifiers {
let mut array_9 = object.key("Classifiers").start_array();
for item_10 in var_8 {
{
array_9.value().string(item_10.as_str());
}
}
array_9.finish();
}
if let Some(var_11) = &input.table_prefix {
object.key("TablePrefix").string(var_11.as_str());
}
if let Some(var_12) = &input.schema_change_policy {
#[allow(unused_mut)]
let mut object_13 = object.key("SchemaChangePolicy").start_object();
crate::protocol_serde::shape_schema_change_policy::ser_schema_change_policy(&mut object_13, var_12)?;
object_13.finish();
}
if let Some(var_14) = &input.recrawl_policy {
#[allow(unused_mut)]
let mut object_15 = object.key("RecrawlPolicy").start_object();
crate::protocol_serde::shape_recrawl_policy::ser_recrawl_policy(&mut object_15, var_14)?;
object_15.finish();
}
if let Some(var_16) = &input.lineage_configuration {
#[allow(unused_mut)]
let mut object_17 = object.key("LineageConfiguration").start_object();
crate::protocol_serde::shape_lineage_configuration::ser_lineage_configuration(&mut object_17, var_16)?;
object_17.finish();
}
if let Some(var_18) = &input.lake_formation_configuration {
#[allow(unused_mut)]
let mut object_19 = object.key("LakeFormationConfiguration").start_object();
crate::protocol_serde::shape_lake_formation_configuration::ser_lake_formation_configuration(&mut object_19, var_18)?;
object_19.finish();
}
if let Some(var_20) = &input.configuration {
object.key("Configuration").string(var_20.as_str());
}
if let Some(var_21) = &input.crawler_security_configuration {
object.key("CrawlerSecurityConfiguration").string(var_21.as_str());
}
if let Some(var_22) = &input.tags {
#[allow(unused_mut)]
let mut object_23 = object.key("Tags").start_object();
for (key_24, value_25) in var_22 {
{
object_23.key(key_24.as_str()).string(value_25.as_str());
}
}
object_23.finish();
}
Ok(())
}