pub fn ser_create_db_instance_input_input_input(
input: &crate::operation::create_db_instance::CreateDbInstanceInput,
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
let mut out = String::new();
#[allow(unused_mut)]
let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "CreateDBInstance", "2014-10-31");
#[allow(unused_mut)]
let mut scope_1 = writer.prefix("DBName");
if let Some(var_2) = &input.db_name {
scope_1.string(var_2);
}
#[allow(unused_mut)]
let mut scope_3 = writer.prefix("DBInstanceIdentifier");
if let Some(var_4) = &input.db_instance_identifier {
scope_3.string(var_4);
}
#[allow(unused_mut)]
let mut scope_5 = writer.prefix("AllocatedStorage");
if let Some(var_6) = &input.allocated_storage {
scope_5.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_6).into()),
);
}
#[allow(unused_mut)]
let mut scope_7 = writer.prefix("DBInstanceClass");
if let Some(var_8) = &input.db_instance_class {
scope_7.string(var_8);
}
#[allow(unused_mut)]
let mut scope_9 = writer.prefix("Engine");
if let Some(var_10) = &input.engine {
scope_9.string(var_10);
}
#[allow(unused_mut)]
let mut scope_11 = writer.prefix("MasterUsername");
if let Some(var_12) = &input.master_username {
scope_11.string(var_12);
}
#[allow(unused_mut)]
let mut scope_13 = writer.prefix("MasterUserPassword");
if let Some(var_14) = &input.master_user_password {
scope_13.string(var_14);
}
#[allow(unused_mut)]
let mut scope_15 = writer.prefix("DBSecurityGroups");
if let Some(var_16) = &input.db_security_groups {
let mut list_18 = scope_15.start_list(false, Some("DBSecurityGroupName"));
for item_17 in var_16 {
#[allow(unused_mut)]
let mut entry_19 = list_18.entry();
entry_19.string(item_17);
}
list_18.finish();
}
#[allow(unused_mut)]
let mut scope_20 = writer.prefix("VpcSecurityGroupIds");
if let Some(var_21) = &input.vpc_security_group_ids {
let mut list_23 = scope_20.start_list(false, Some("VpcSecurityGroupId"));
for item_22 in var_21 {
#[allow(unused_mut)]
let mut entry_24 = list_23.entry();
entry_24.string(item_22);
}
list_23.finish();
}
#[allow(unused_mut)]
let mut scope_25 = writer.prefix("AvailabilityZone");
if let Some(var_26) = &input.availability_zone {
scope_25.string(var_26);
}
#[allow(unused_mut)]
let mut scope_27 = writer.prefix("DBSubnetGroupName");
if let Some(var_28) = &input.db_subnet_group_name {
scope_27.string(var_28);
}
#[allow(unused_mut)]
let mut scope_29 = writer.prefix("PreferredMaintenanceWindow");
if let Some(var_30) = &input.preferred_maintenance_window {
scope_29.string(var_30);
}
#[allow(unused_mut)]
let mut scope_31 = writer.prefix("DBParameterGroupName");
if let Some(var_32) = &input.db_parameter_group_name {
scope_31.string(var_32);
}
#[allow(unused_mut)]
let mut scope_33 = writer.prefix("BackupRetentionPeriod");
if let Some(var_34) = &input.backup_retention_period {
scope_33.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_34).into()),
);
}
#[allow(unused_mut)]
let mut scope_35 = writer.prefix("PreferredBackupWindow");
if let Some(var_36) = &input.preferred_backup_window {
scope_35.string(var_36);
}
#[allow(unused_mut)]
let mut scope_37 = writer.prefix("Port");
if let Some(var_38) = &input.port {
scope_37.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_38).into()),
);
}
#[allow(unused_mut)]
let mut scope_39 = writer.prefix("MultiAZ");
if let Some(var_40) = &input.multi_az {
scope_39.boolean(*var_40);
}
#[allow(unused_mut)]
let mut scope_41 = writer.prefix("EngineVersion");
if let Some(var_42) = &input.engine_version {
scope_41.string(var_42);
}
#[allow(unused_mut)]
let mut scope_43 = writer.prefix("AutoMinorVersionUpgrade");
if let Some(var_44) = &input.auto_minor_version_upgrade {
scope_43.boolean(*var_44);
}
#[allow(unused_mut)]
let mut scope_45 = writer.prefix("LicenseModel");
if let Some(var_46) = &input.license_model {
scope_45.string(var_46);
}
#[allow(unused_mut)]
let mut scope_47 = writer.prefix("Iops");
if let Some(var_48) = &input.iops {
scope_47.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_48).into()),
);
}
#[allow(unused_mut)]
let mut scope_49 = writer.prefix("StorageThroughput");
if let Some(var_50) = &input.storage_throughput {
scope_49.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_50).into()),
);
}
#[allow(unused_mut)]
let mut scope_51 = writer.prefix("OptionGroupName");
if let Some(var_52) = &input.option_group_name {
scope_51.string(var_52);
}
#[allow(unused_mut)]
let mut scope_53 = writer.prefix("CharacterSetName");
if let Some(var_54) = &input.character_set_name {
scope_53.string(var_54);
}
#[allow(unused_mut)]
let mut scope_55 = writer.prefix("NcharCharacterSetName");
if let Some(var_56) = &input.nchar_character_set_name {
scope_55.string(var_56);
}
#[allow(unused_mut)]
let mut scope_57 = writer.prefix("PubliclyAccessible");
if let Some(var_58) = &input.publicly_accessible {
scope_57.boolean(*var_58);
}
#[allow(unused_mut)]
let mut scope_59 = writer.prefix("Tags");
if let Some(var_60) = &input.tags {
let mut list_62 = scope_59.start_list(false, Some("Tag"));
for item_61 in var_60 {
#[allow(unused_mut)]
let mut entry_63 = list_62.entry();
crate::protocol_serde::shape_tag::ser_tag(entry_63, item_61)?;
}
list_62.finish();
}
#[allow(unused_mut)]
let mut scope_64 = writer.prefix("DBClusterIdentifier");
if let Some(var_65) = &input.db_cluster_identifier {
scope_64.string(var_65);
}
#[allow(unused_mut)]
let mut scope_66 = writer.prefix("StorageType");
if let Some(var_67) = &input.storage_type {
scope_66.string(var_67);
}
#[allow(unused_mut)]
let mut scope_68 = writer.prefix("TdeCredentialArn");
if let Some(var_69) = &input.tde_credential_arn {
scope_68.string(var_69);
}
#[allow(unused_mut)]
let mut scope_70 = writer.prefix("TdeCredentialPassword");
if let Some(var_71) = &input.tde_credential_password {
scope_70.string(var_71);
}
#[allow(unused_mut)]
let mut scope_72 = writer.prefix("StorageEncrypted");
if let Some(var_73) = &input.storage_encrypted {
scope_72.boolean(*var_73);
}
#[allow(unused_mut)]
let mut scope_74 = writer.prefix("KmsKeyId");
if let Some(var_75) = &input.kms_key_id {
scope_74.string(var_75);
}
#[allow(unused_mut)]
let mut scope_76 = writer.prefix("Domain");
if let Some(var_77) = &input.domain {
scope_76.string(var_77);
}
#[allow(unused_mut)]
let mut scope_78 = writer.prefix("DomainFqdn");
if let Some(var_79) = &input.domain_fqdn {
scope_78.string(var_79);
}
#[allow(unused_mut)]
let mut scope_80 = writer.prefix("DomainOu");
if let Some(var_81) = &input.domain_ou {
scope_80.string(var_81);
}
#[allow(unused_mut)]
let mut scope_82 = writer.prefix("DomainAuthSecretArn");
if let Some(var_83) = &input.domain_auth_secret_arn {
scope_82.string(var_83);
}
#[allow(unused_mut)]
let mut scope_84 = writer.prefix("DomainDnsIps");
if let Some(var_85) = &input.domain_dns_ips {
let mut list_87 = scope_84.start_list(false, None);
for item_86 in var_85 {
#[allow(unused_mut)]
let mut entry_88 = list_87.entry();
entry_88.string(item_86);
}
list_87.finish();
}
#[allow(unused_mut)]
let mut scope_89 = writer.prefix("CopyTagsToSnapshot");
if let Some(var_90) = &input.copy_tags_to_snapshot {
scope_89.boolean(*var_90);
}
#[allow(unused_mut)]
let mut scope_91 = writer.prefix("MonitoringInterval");
if let Some(var_92) = &input.monitoring_interval {
scope_91.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_92).into()),
);
}
#[allow(unused_mut)]
let mut scope_93 = writer.prefix("MonitoringRoleArn");
if let Some(var_94) = &input.monitoring_role_arn {
scope_93.string(var_94);
}
#[allow(unused_mut)]
let mut scope_95 = writer.prefix("DomainIAMRoleName");
if let Some(var_96) = &input.domain_iam_role_name {
scope_95.string(var_96);
}
#[allow(unused_mut)]
let mut scope_97 = writer.prefix("PromotionTier");
if let Some(var_98) = &input.promotion_tier {
scope_97.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_98).into()),
);
}
#[allow(unused_mut)]
let mut scope_99 = writer.prefix("Timezone");
if let Some(var_100) = &input.timezone {
scope_99.string(var_100);
}
#[allow(unused_mut)]
let mut scope_101 = writer.prefix("EnableIAMDatabaseAuthentication");
if let Some(var_102) = &input.enable_iam_database_authentication {
scope_101.boolean(*var_102);
}
#[allow(unused_mut)]
let mut scope_103 = writer.prefix("DatabaseInsightsMode");
if let Some(var_104) = &input.database_insights_mode {
scope_103.string(var_104.as_str());
}
#[allow(unused_mut)]
let mut scope_105 = writer.prefix("EnablePerformanceInsights");
if let Some(var_106) = &input.enable_performance_insights {
scope_105.boolean(*var_106);
}
#[allow(unused_mut)]
let mut scope_107 = writer.prefix("PerformanceInsightsKMSKeyId");
if let Some(var_108) = &input.performance_insights_kms_key_id {
scope_107.string(var_108);
}
#[allow(unused_mut)]
let mut scope_109 = writer.prefix("PerformanceInsightsRetentionPeriod");
if let Some(var_110) = &input.performance_insights_retention_period {
scope_109.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_110).into()),
);
}
#[allow(unused_mut)]
let mut scope_111 = writer.prefix("EnableCloudwatchLogsExports");
if let Some(var_112) = &input.enable_cloudwatch_logs_exports {
let mut list_114 = scope_111.start_list(false, None);
for item_113 in var_112 {
#[allow(unused_mut)]
let mut entry_115 = list_114.entry();
entry_115.string(item_113);
}
list_114.finish();
}
#[allow(unused_mut)]
let mut scope_116 = writer.prefix("ProcessorFeatures");
if let Some(var_117) = &input.processor_features {
let mut list_119 = scope_116.start_list(false, Some("ProcessorFeature"));
for item_118 in var_117 {
#[allow(unused_mut)]
let mut entry_120 = list_119.entry();
crate::protocol_serde::shape_processor_feature::ser_processor_feature(entry_120, item_118)?;
}
list_119.finish();
}
#[allow(unused_mut)]
let mut scope_121 = writer.prefix("DeletionProtection");
if let Some(var_122) = &input.deletion_protection {
scope_121.boolean(*var_122);
}
#[allow(unused_mut)]
let mut scope_123 = writer.prefix("MaxAllocatedStorage");
if let Some(var_124) = &input.max_allocated_storage {
scope_123.number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_124).into()),
);
}
#[allow(unused_mut)]
let mut scope_125 = writer.prefix("EnableCustomerOwnedIp");
if let Some(var_126) = &input.enable_customer_owned_ip {
scope_125.boolean(*var_126);
}
#[allow(unused_mut)]
let mut scope_127 = writer.prefix("NetworkType");
if let Some(var_128) = &input.network_type {
scope_127.string(var_128);
}
#[allow(unused_mut)]
let mut scope_129 = writer.prefix("BackupTarget");
if let Some(var_130) = &input.backup_target {
scope_129.string(var_130);
}
#[allow(unused_mut)]
let mut scope_131 = writer.prefix("CustomIamInstanceProfile");
if let Some(var_132) = &input.custom_iam_instance_profile {
scope_131.string(var_132);
}
#[allow(unused_mut)]
let mut scope_133 = writer.prefix("DBSystemId");
if let Some(var_134) = &input.db_system_id {
scope_133.string(var_134);
}
#[allow(unused_mut)]
let mut scope_135 = writer.prefix("CACertificateIdentifier");
if let Some(var_136) = &input.ca_certificate_identifier {
scope_135.string(var_136);
}
#[allow(unused_mut)]
let mut scope_137 = writer.prefix("ManageMasterUserPassword");
if let Some(var_138) = &input.manage_master_user_password {
scope_137.boolean(*var_138);
}
#[allow(unused_mut)]
let mut scope_139 = writer.prefix("MasterUserSecretKmsKeyId");
if let Some(var_140) = &input.master_user_secret_kms_key_id {
scope_139.string(var_140);
}
#[allow(unused_mut)]
let mut scope_141 = writer.prefix("MultiTenant");
if let Some(var_142) = &input.multi_tenant {
scope_141.boolean(*var_142);
}
#[allow(unused_mut)]
let mut scope_143 = writer.prefix("DedicatedLogVolume");
if let Some(var_144) = &input.dedicated_log_volume {
scope_143.boolean(*var_144);
}
#[allow(unused_mut)]
let mut scope_145 = writer.prefix("EngineLifecycleSupport");
if let Some(var_146) = &input.engine_lifecycle_support {
scope_145.string(var_146);
}
#[allow(unused_mut)]
let mut scope_147 = writer.prefix("AdditionalStorageVolumes");
if let Some(var_148) = &input.additional_storage_volumes {
let mut list_150 = scope_147.start_list(false, None);
for item_149 in var_148 {
#[allow(unused_mut)]
let mut entry_151 = list_150.entry();
crate::protocol_serde::shape_additional_storage_volume::ser_additional_storage_volume(entry_151, item_149)?;
}
list_150.finish();
}
#[allow(unused_mut)]
let mut scope_152 = writer.prefix("TagSpecifications");
if let Some(var_153) = &input.tag_specifications {
let mut list_155 = scope_152.start_list(false, Some("item"));
for item_154 in var_153 {
#[allow(unused_mut)]
let mut entry_156 = list_155.entry();
crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_156, item_154)?;
}
list_155.finish();
}
#[allow(unused_mut)]
let mut scope_157 = writer.prefix("MasterUserAuthenticationType");
if let Some(var_158) = &input.master_user_authentication_type {
scope_157.string(var_158.as_str());
}
writer.finish();
Ok(::aws_smithy_types::body::SdkBody::from(out))
}