aws_sdk_ec2/protocol_serde/
shape_create_volume_input.rs1pub fn ser_create_volume_input_input_input(
3 input: &crate::operation::create_volume::CreateVolumeInput,
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, "CreateVolume", "2016-11-15");
8 #[allow(unused_mut)]
9 let mut scope_1 = writer.prefix("AvailabilityZone");
10 if let Some(var_2) = &input.availability_zone {
11 scope_1.string(var_2);
12 }
13 #[allow(unused_mut)]
14 let mut scope_3 = writer.prefix("AvailabilityZoneId");
15 if let Some(var_4) = &input.availability_zone_id {
16 scope_3.string(var_4);
17 }
18 #[allow(unused_mut)]
19 let mut scope_5 = writer.prefix("Encrypted");
20 if let Some(var_6) = &input.encrypted {
21 scope_5.boolean(*var_6);
22 }
23 #[allow(unused_mut)]
24 let mut scope_7 = writer.prefix("Iops");
25 if let Some(var_8) = &input.iops {
26 scope_7.number(
27 #[allow(clippy::useless_conversion)]
28 ::aws_smithy_types::Number::NegInt((*var_8).into()),
29 );
30 }
31 #[allow(unused_mut)]
32 let mut scope_9 = writer.prefix("KmsKeyId");
33 if let Some(var_10) = &input.kms_key_id {
34 scope_9.string(var_10);
35 }
36 #[allow(unused_mut)]
37 let mut scope_11 = writer.prefix("OutpostArn");
38 if let Some(var_12) = &input.outpost_arn {
39 scope_11.string(var_12);
40 }
41 #[allow(unused_mut)]
42 let mut scope_13 = writer.prefix("Size");
43 if let Some(var_14) = &input.size {
44 scope_13.number(
45 #[allow(clippy::useless_conversion)]
46 ::aws_smithy_types::Number::NegInt((*var_14).into()),
47 );
48 }
49 #[allow(unused_mut)]
50 let mut scope_15 = writer.prefix("SnapshotId");
51 if let Some(var_16) = &input.snapshot_id {
52 scope_15.string(var_16);
53 }
54 #[allow(unused_mut)]
55 let mut scope_17 = writer.prefix("VolumeType");
56 if let Some(var_18) = &input.volume_type {
57 scope_17.string(var_18.as_str());
58 }
59 #[allow(unused_mut)]
60 let mut scope_19 = writer.prefix("TagSpecification");
61 if let Some(var_20) = &input.tag_specifications {
62 if !var_20.is_empty() {
63 let mut list_22 = scope_19.start_list(true, Some("item"));
64 for item_21 in var_20 {
65 #[allow(unused_mut)]
66 let mut entry_23 = list_22.entry();
67 crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_23, item_21)?;
68 }
69 list_22.finish();
70 }
71 }
72 #[allow(unused_mut)]
73 let mut scope_24 = writer.prefix("MultiAttachEnabled");
74 if let Some(var_25) = &input.multi_attach_enabled {
75 scope_24.boolean(*var_25);
76 }
77 #[allow(unused_mut)]
78 let mut scope_26 = writer.prefix("Throughput");
79 if let Some(var_27) = &input.throughput {
80 scope_26.number(
81 #[allow(clippy::useless_conversion)]
82 ::aws_smithy_types::Number::NegInt((*var_27).into()),
83 );
84 }
85 #[allow(unused_mut)]
86 let mut scope_28 = writer.prefix("ClientToken");
87 if let Some(var_29) = &input.client_token {
88 scope_28.string(var_29);
89 }
90 #[allow(unused_mut)]
91 let mut scope_30 = writer.prefix("VolumeInitializationRate");
92 if let Some(var_31) = &input.volume_initialization_rate {
93 scope_30.number(
94 #[allow(clippy::useless_conversion)]
95 ::aws_smithy_types::Number::NegInt((*var_31).into()),
96 );
97 }
98 #[allow(unused_mut)]
99 let mut scope_32 = writer.prefix("Operator");
100 if let Some(var_33) = &input.operator {
101 crate::protocol_serde::shape_operator_request::ser_operator_request(scope_32, var_33)?;
102 }
103 #[allow(unused_mut)]
104 let mut scope_34 = writer.prefix("DryRun");
105 if let Some(var_35) = &input.dry_run {
106 scope_34.boolean(*var_35);
107 }
108 writer.finish();
109 Ok(::aws_smithy_types::body::SdkBody::from(out))
110}