pub fn ser_create_endpoint_input_input(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::create_endpoint::CreateEndpointInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.endpoint_identifier {
object.key("EndpointIdentifier").string(var_1.as_str());
}
if let Some(var_2) = &input.endpoint_type {
object.key("EndpointType").string(var_2.as_str());
}
if let Some(var_3) = &input.engine_name {
object.key("EngineName").string(var_3.as_str());
}
if let Some(var_4) = &input.username {
object.key("Username").string(var_4.as_str());
}
if let Some(var_5) = &input.password {
object.key("Password").string(var_5.as_str());
}
if let Some(var_6) = &input.server_name {
object.key("ServerName").string(var_6.as_str());
}
if let Some(var_7) = &input.port {
object.key("Port").number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_7).into()),
);
}
if let Some(var_8) = &input.database_name {
object.key("DatabaseName").string(var_8.as_str());
}
if let Some(var_9) = &input.extra_connection_attributes {
object.key("ExtraConnectionAttributes").string(var_9.as_str());
}
if let Some(var_10) = &input.kms_key_id {
object.key("KmsKeyId").string(var_10.as_str());
}
if let Some(var_11) = &input.tags {
let mut array_12 = object.key("Tags").start_array();
for item_13 in var_11 {
{
#[allow(unused_mut)]
let mut object_14 = array_12.value().start_object();
crate::protocol_serde::shape_tag::ser_tag(&mut object_14, item_13)?;
object_14.finish();
}
}
array_12.finish();
}
if let Some(var_15) = &input.certificate_arn {
object.key("CertificateArn").string(var_15.as_str());
}
if let Some(var_16) = &input.ssl_mode {
object.key("SslMode").string(var_16.as_str());
}
if let Some(var_17) = &input.service_access_role_arn {
object.key("ServiceAccessRoleArn").string(var_17.as_str());
}
if let Some(var_18) = &input.external_table_definition {
object.key("ExternalTableDefinition").string(var_18.as_str());
}
if let Some(var_19) = &input.dynamo_db_settings {
#[allow(unused_mut)]
let mut object_20 = object.key("DynamoDbSettings").start_object();
crate::protocol_serde::shape_dynamo_db_settings::ser_dynamo_db_settings(&mut object_20, var_19)?;
object_20.finish();
}
if let Some(var_21) = &input.s3_settings {
#[allow(unused_mut)]
let mut object_22 = object.key("S3Settings").start_object();
crate::protocol_serde::shape_s3_settings::ser_s3_settings(&mut object_22, var_21)?;
object_22.finish();
}
if let Some(var_23) = &input.dms_transfer_settings {
#[allow(unused_mut)]
let mut object_24 = object.key("DmsTransferSettings").start_object();
crate::protocol_serde::shape_dms_transfer_settings::ser_dms_transfer_settings(&mut object_24, var_23)?;
object_24.finish();
}
if let Some(var_25) = &input.mongo_db_settings {
#[allow(unused_mut)]
let mut object_26 = object.key("MongoDbSettings").start_object();
crate::protocol_serde::shape_mongo_db_settings::ser_mongo_db_settings(&mut object_26, var_25)?;
object_26.finish();
}
if let Some(var_27) = &input.kinesis_settings {
#[allow(unused_mut)]
let mut object_28 = object.key("KinesisSettings").start_object();
crate::protocol_serde::shape_kinesis_settings::ser_kinesis_settings(&mut object_28, var_27)?;
object_28.finish();
}
if let Some(var_29) = &input.kafka_settings {
#[allow(unused_mut)]
let mut object_30 = object.key("KafkaSettings").start_object();
crate::protocol_serde::shape_kafka_settings::ser_kafka_settings(&mut object_30, var_29)?;
object_30.finish();
}
if let Some(var_31) = &input.elasticsearch_settings {
#[allow(unused_mut)]
let mut object_32 = object.key("ElasticsearchSettings").start_object();
crate::protocol_serde::shape_elasticsearch_settings::ser_elasticsearch_settings(&mut object_32, var_31)?;
object_32.finish();
}
if let Some(var_33) = &input.neptune_settings {
#[allow(unused_mut)]
let mut object_34 = object.key("NeptuneSettings").start_object();
crate::protocol_serde::shape_neptune_settings::ser_neptune_settings(&mut object_34, var_33)?;
object_34.finish();
}
if let Some(var_35) = &input.redshift_settings {
#[allow(unused_mut)]
let mut object_36 = object.key("RedshiftSettings").start_object();
crate::protocol_serde::shape_redshift_settings::ser_redshift_settings(&mut object_36, var_35)?;
object_36.finish();
}
if let Some(var_37) = &input.postgre_sql_settings {
#[allow(unused_mut)]
let mut object_38 = object.key("PostgreSQLSettings").start_object();
crate::protocol_serde::shape_postgre_sql_settings::ser_postgre_sql_settings(&mut object_38, var_37)?;
object_38.finish();
}
if let Some(var_39) = &input.my_sql_settings {
#[allow(unused_mut)]
let mut object_40 = object.key("MySQLSettings").start_object();
crate::protocol_serde::shape_my_sql_settings::ser_my_sql_settings(&mut object_40, var_39)?;
object_40.finish();
}
if let Some(var_41) = &input.oracle_settings {
#[allow(unused_mut)]
let mut object_42 = object.key("OracleSettings").start_object();
crate::protocol_serde::shape_oracle_settings::ser_oracle_settings(&mut object_42, var_41)?;
object_42.finish();
}
if let Some(var_43) = &input.sybase_settings {
#[allow(unused_mut)]
let mut object_44 = object.key("SybaseSettings").start_object();
crate::protocol_serde::shape_sybase_settings::ser_sybase_settings(&mut object_44, var_43)?;
object_44.finish();
}
if let Some(var_45) = &input.microsoft_sql_server_settings {
#[allow(unused_mut)]
let mut object_46 = object.key("MicrosoftSQLServerSettings").start_object();
crate::protocol_serde::shape_microsoft_sql_server_settings::ser_microsoft_sql_server_settings(&mut object_46, var_45)?;
object_46.finish();
}
if let Some(var_47) = &input.ibm_db2_settings {
#[allow(unused_mut)]
let mut object_48 = object.key("IBMDb2Settings").start_object();
crate::protocol_serde::shape_ibm_db2_settings::ser_ibm_db2_settings(&mut object_48, var_47)?;
object_48.finish();
}
if let Some(var_49) = &input.resource_identifier {
object.key("ResourceIdentifier").string(var_49.as_str());
}
if let Some(var_50) = &input.doc_db_settings {
#[allow(unused_mut)]
let mut object_51 = object.key("DocDbSettings").start_object();
crate::protocol_serde::shape_doc_db_settings::ser_doc_db_settings(&mut object_51, var_50)?;
object_51.finish();
}
if let Some(var_52) = &input.redis_settings {
#[allow(unused_mut)]
let mut object_53 = object.key("RedisSettings").start_object();
crate::protocol_serde::shape_redis_settings::ser_redis_settings(&mut object_53, var_52)?;
object_53.finish();
}
if let Some(var_54) = &input.gcp_my_sql_settings {
#[allow(unused_mut)]
let mut object_55 = object.key("GcpMySQLSettings").start_object();
crate::protocol_serde::shape_gcp_my_sql_settings::ser_gcp_my_sql_settings(&mut object_55, var_54)?;
object_55.finish();
}
if let Some(var_56) = &input.timestream_settings {
#[allow(unused_mut)]
let mut object_57 = object.key("TimestreamSettings").start_object();
crate::protocol_serde::shape_timestream_settings::ser_timestream_settings(&mut object_57, var_56)?;
object_57.finish();
}
Ok(())
}