aws_sdk_neptune/protocol_serde/
shape_restore_db_cluster_from_snapshot_input.rs1pub fn ser_restore_db_cluster_from_snapshot_input_input_input(
3 input: &crate::operation::restore_db_cluster_from_snapshot::RestoreDbClusterFromSnapshotInput,
4) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
5 let mut out = String::new();
6 #[allow(unused_mut)]
7 let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "RestoreDBClusterFromSnapshot", "2014-10-31");
8 #[allow(unused_mut)]
9 let mut scope_1 = writer.prefix("AvailabilityZones");
10 if let Some(var_2) = &input.availability_zones {
11 let mut list_4 = scope_1.start_list(false, Some("AvailabilityZone"));
12 for item_3 in var_2 {
13 #[allow(unused_mut)]
14 let mut entry_5 = list_4.entry();
15 entry_5.string(item_3);
16 }
17 list_4.finish();
18 }
19 #[allow(unused_mut)]
20 let mut scope_6 = writer.prefix("DBClusterIdentifier");
21 if let Some(var_7) = &input.db_cluster_identifier {
22 scope_6.string(var_7);
23 }
24 #[allow(unused_mut)]
25 let mut scope_8 = writer.prefix("SnapshotIdentifier");
26 if let Some(var_9) = &input.snapshot_identifier {
27 scope_8.string(var_9);
28 }
29 #[allow(unused_mut)]
30 let mut scope_10 = writer.prefix("Engine");
31 if let Some(var_11) = &input.engine {
32 scope_10.string(var_11);
33 }
34 #[allow(unused_mut)]
35 let mut scope_12 = writer.prefix("EngineVersion");
36 if let Some(var_13) = &input.engine_version {
37 scope_12.string(var_13);
38 }
39 #[allow(unused_mut)]
40 let mut scope_14 = writer.prefix("Port");
41 if let Some(var_15) = &input.port {
42 scope_14.number(
43 #[allow(clippy::useless_conversion)]
44 ::aws_smithy_types::Number::NegInt((*var_15).into()),
45 );
46 }
47 #[allow(unused_mut)]
48 let mut scope_16 = writer.prefix("DBSubnetGroupName");
49 if let Some(var_17) = &input.db_subnet_group_name {
50 scope_16.string(var_17);
51 }
52 #[allow(unused_mut)]
53 let mut scope_18 = writer.prefix("DatabaseName");
54 if let Some(var_19) = &input.database_name {
55 scope_18.string(var_19);
56 }
57 #[allow(unused_mut)]
58 let mut scope_20 = writer.prefix("OptionGroupName");
59 if let Some(var_21) = &input.option_group_name {
60 scope_20.string(var_21);
61 }
62 #[allow(unused_mut)]
63 let mut scope_22 = writer.prefix("VpcSecurityGroupIds");
64 if let Some(var_23) = &input.vpc_security_group_ids {
65 let mut list_25 = scope_22.start_list(false, Some("VpcSecurityGroupId"));
66 for item_24 in var_23 {
67 #[allow(unused_mut)]
68 let mut entry_26 = list_25.entry();
69 entry_26.string(item_24);
70 }
71 list_25.finish();
72 }
73 #[allow(unused_mut)]
74 let mut scope_27 = writer.prefix("Tags");
75 if let Some(var_28) = &input.tags {
76 let mut list_30 = scope_27.start_list(false, Some("Tag"));
77 for item_29 in var_28 {
78 #[allow(unused_mut)]
79 let mut entry_31 = list_30.entry();
80 crate::protocol_serde::shape_tag::ser_tag(entry_31, item_29)?;
81 }
82 list_30.finish();
83 }
84 #[allow(unused_mut)]
85 let mut scope_32 = writer.prefix("KmsKeyId");
86 if let Some(var_33) = &input.kms_key_id {
87 scope_32.string(var_33);
88 }
89 #[allow(unused_mut)]
90 let mut scope_34 = writer.prefix("EnableIAMDatabaseAuthentication");
91 if let Some(var_35) = &input.enable_iam_database_authentication {
92 scope_34.boolean(*var_35);
93 }
94 #[allow(unused_mut)]
95 let mut scope_36 = writer.prefix("EnableCloudwatchLogsExports");
96 if let Some(var_37) = &input.enable_cloudwatch_logs_exports {
97 let mut list_39 = scope_36.start_list(false, None);
98 for item_38 in var_37 {
99 #[allow(unused_mut)]
100 let mut entry_40 = list_39.entry();
101 entry_40.string(item_38);
102 }
103 list_39.finish();
104 }
105 #[allow(unused_mut)]
106 let mut scope_41 = writer.prefix("DBClusterParameterGroupName");
107 if let Some(var_42) = &input.db_cluster_parameter_group_name {
108 scope_41.string(var_42);
109 }
110 #[allow(unused_mut)]
111 let mut scope_43 = writer.prefix("DeletionProtection");
112 if let Some(var_44) = &input.deletion_protection {
113 scope_43.boolean(*var_44);
114 }
115 #[allow(unused_mut)]
116 let mut scope_45 = writer.prefix("CopyTagsToSnapshot");
117 if let Some(var_46) = &input.copy_tags_to_snapshot {
118 scope_45.boolean(*var_46);
119 }
120 #[allow(unused_mut)]
121 let mut scope_47 = writer.prefix("ServerlessV2ScalingConfiguration");
122 if let Some(var_48) = &input.serverless_v2_scaling_configuration {
123 crate::protocol_serde::shape_serverless_v2_scaling_configuration::ser_serverless_v2_scaling_configuration(scope_47, var_48)?;
124 }
125 #[allow(unused_mut)]
126 let mut scope_49 = writer.prefix("StorageType");
127 if let Some(var_50) = &input.storage_type {
128 scope_49.string(var_50);
129 }
130 writer.finish();
131 Ok(::aws_smithy_types::body::SdkBody::from(out))
132}