aws_sdk_ec2/protocol_serde/
shape_import_image_input.rs1pub fn ser_import_image_input_input_input(
3 input: &crate::operation::import_image::ImportImageInput,
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, "ImportImage", "2016-11-15");
8 #[allow(unused_mut)]
9 let mut scope_1 = writer.prefix("Architecture");
10 if let Some(var_2) = &input.architecture {
11 scope_1.string(var_2);
12 }
13 #[allow(unused_mut)]
14 let mut scope_3 = writer.prefix("ClientData");
15 if let Some(var_4) = &input.client_data {
16 crate::protocol_serde::shape_client_data::ser_client_data(scope_3, var_4)?;
17 }
18 #[allow(unused_mut)]
19 let mut scope_5 = writer.prefix("ClientToken");
20 if let Some(var_6) = &input.client_token {
21 scope_5.string(var_6);
22 }
23 #[allow(unused_mut)]
24 let mut scope_7 = writer.prefix("Description");
25 if let Some(var_8) = &input.description {
26 scope_7.string(var_8);
27 }
28 #[allow(unused_mut)]
29 let mut scope_9 = writer.prefix("DiskContainer");
30 if let Some(var_10) = &input.disk_containers {
31 if !var_10.is_empty() {
32 let mut list_12 = scope_9.start_list(true, Some("item"));
33 for item_11 in var_10 {
34 #[allow(unused_mut)]
35 let mut entry_13 = list_12.entry();
36 crate::protocol_serde::shape_image_disk_container::ser_image_disk_container(entry_13, item_11)?;
37 }
38 list_12.finish();
39 }
40 }
41 #[allow(unused_mut)]
42 let mut scope_14 = writer.prefix("DryRun");
43 if let Some(var_15) = &input.dry_run {
44 scope_14.boolean(*var_15);
45 }
46 #[allow(unused_mut)]
47 let mut scope_16 = writer.prefix("Encrypted");
48 if let Some(var_17) = &input.encrypted {
49 scope_16.boolean(*var_17);
50 }
51 #[allow(unused_mut)]
52 let mut scope_18 = writer.prefix("Hypervisor");
53 if let Some(var_19) = &input.hypervisor {
54 scope_18.string(var_19);
55 }
56 #[allow(unused_mut)]
57 let mut scope_20 = writer.prefix("KmsKeyId");
58 if let Some(var_21) = &input.kms_key_id {
59 scope_20.string(var_21);
60 }
61 #[allow(unused_mut)]
62 let mut scope_22 = writer.prefix("LicenseType");
63 if let Some(var_23) = &input.license_type {
64 scope_22.string(var_23);
65 }
66 #[allow(unused_mut)]
67 let mut scope_24 = writer.prefix("Platform");
68 if let Some(var_25) = &input.platform {
69 scope_24.string(var_25);
70 }
71 #[allow(unused_mut)]
72 let mut scope_26 = writer.prefix("RoleName");
73 if let Some(var_27) = &input.role_name {
74 scope_26.string(var_27);
75 }
76 #[allow(unused_mut)]
77 let mut scope_28 = writer.prefix("LicenseSpecifications");
78 if let Some(var_29) = &input.license_specifications {
79 if !var_29.is_empty() {
80 let mut list_31 = scope_28.start_list(true, Some("item"));
81 for item_30 in var_29 {
82 #[allow(unused_mut)]
83 let mut entry_32 = list_31.entry();
84 crate::protocol_serde::shape_import_image_license_configuration_request::ser_import_image_license_configuration_request(
85 entry_32, item_30,
86 )?;
87 }
88 list_31.finish();
89 }
90 }
91 #[allow(unused_mut)]
92 let mut scope_33 = writer.prefix("TagSpecification");
93 if let Some(var_34) = &input.tag_specifications {
94 if !var_34.is_empty() {
95 let mut list_36 = scope_33.start_list(true, Some("item"));
96 for item_35 in var_34 {
97 #[allow(unused_mut)]
98 let mut entry_37 = list_36.entry();
99 crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_37, item_35)?;
100 }
101 list_36.finish();
102 }
103 }
104 #[allow(unused_mut)]
105 let mut scope_38 = writer.prefix("UsageOperation");
106 if let Some(var_39) = &input.usage_operation {
107 scope_38.string(var_39);
108 }
109 #[allow(unused_mut)]
110 let mut scope_40 = writer.prefix("BootMode");
111 if let Some(var_41) = &input.boot_mode {
112 scope_40.string(var_41.as_str());
113 }
114 writer.finish();
115 Ok(::aws_smithy_types::body::SdkBody::from(out))
116}