aws_sdk_ec2/protocol_serde/
shape_create_verified_access_endpoint_input.rs1pub fn ser_create_verified_access_endpoint_input_input_input(
3 input: &crate::operation::create_verified_access_endpoint::CreateVerifiedAccessEndpointInput,
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, "CreateVerifiedAccessEndpoint", "2016-11-15");
8 #[allow(unused_mut)]
9 let mut scope_1 = writer.prefix("VerifiedAccessGroupId");
10 if let Some(var_2) = &input.verified_access_group_id {
11 scope_1.string(var_2);
12 }
13 #[allow(unused_mut)]
14 let mut scope_3 = writer.prefix("EndpointType");
15 if let Some(var_4) = &input.endpoint_type {
16 scope_3.string(var_4.as_str());
17 }
18 #[allow(unused_mut)]
19 let mut scope_5 = writer.prefix("AttachmentType");
20 if let Some(var_6) = &input.attachment_type {
21 scope_5.string(var_6.as_str());
22 }
23 #[allow(unused_mut)]
24 let mut scope_7 = writer.prefix("DomainCertificateArn");
25 if let Some(var_8) = &input.domain_certificate_arn {
26 scope_7.string(var_8);
27 }
28 #[allow(unused_mut)]
29 let mut scope_9 = writer.prefix("ApplicationDomain");
30 if let Some(var_10) = &input.application_domain {
31 scope_9.string(var_10);
32 }
33 #[allow(unused_mut)]
34 let mut scope_11 = writer.prefix("EndpointDomainPrefix");
35 if let Some(var_12) = &input.endpoint_domain_prefix {
36 scope_11.string(var_12);
37 }
38 #[allow(unused_mut)]
39 let mut scope_13 = writer.prefix("SecurityGroupId");
40 if let Some(var_14) = &input.security_group_ids {
41 if !var_14.is_empty() {
42 let mut list_16 = scope_13.start_list(true, Some("item"));
43 for item_15 in var_14 {
44 #[allow(unused_mut)]
45 let mut entry_17 = list_16.entry();
46 entry_17.string(item_15);
47 }
48 list_16.finish();
49 }
50 }
51 #[allow(unused_mut)]
52 let mut scope_18 = writer.prefix("LoadBalancerOptions");
53 if let Some(var_19) = &input.load_balancer_options {
54 crate::protocol_serde::shape_create_verified_access_endpoint_load_balancer_options::ser_create_verified_access_endpoint_load_balancer_options(scope_18, var_19)?;
55 }
56 #[allow(unused_mut)]
57 let mut scope_20 = writer.prefix("NetworkInterfaceOptions");
58 if let Some(var_21) = &input.network_interface_options {
59 crate::protocol_serde::shape_create_verified_access_endpoint_eni_options::ser_create_verified_access_endpoint_eni_options(scope_20, var_21)?;
60 }
61 #[allow(unused_mut)]
62 let mut scope_22 = writer.prefix("Description");
63 if let Some(var_23) = &input.description {
64 scope_22.string(var_23);
65 }
66 #[allow(unused_mut)]
67 let mut scope_24 = writer.prefix("PolicyDocument");
68 if let Some(var_25) = &input.policy_document {
69 scope_24.string(var_25);
70 }
71 #[allow(unused_mut)]
72 let mut scope_26 = writer.prefix("TagSpecification");
73 if let Some(var_27) = &input.tag_specifications {
74 if !var_27.is_empty() {
75 let mut list_29 = scope_26.start_list(true, Some("item"));
76 for item_28 in var_27 {
77 #[allow(unused_mut)]
78 let mut entry_30 = list_29.entry();
79 crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_30, item_28)?;
80 }
81 list_29.finish();
82 }
83 }
84 #[allow(unused_mut)]
85 let mut scope_31 = writer.prefix("ClientToken");
86 if let Some(var_32) = &input.client_token {
87 scope_31.string(var_32);
88 }
89 #[allow(unused_mut)]
90 let mut scope_33 = writer.prefix("DryRun");
91 if let Some(var_34) = &input.dry_run {
92 scope_33.boolean(*var_34);
93 }
94 #[allow(unused_mut)]
95 let mut scope_35 = writer.prefix("SseSpecification");
96 if let Some(var_36) = &input.sse_specification {
97 crate::protocol_serde::shape_verified_access_sse_specification_request::ser_verified_access_sse_specification_request(scope_35, var_36)?;
98 }
99 #[allow(unused_mut)]
100 let mut scope_37 = writer.prefix("RdsOptions");
101 if let Some(var_38) = &input.rds_options {
102 crate::protocol_serde::shape_create_verified_access_endpoint_rds_options::ser_create_verified_access_endpoint_rds_options(scope_37, var_38)?;
103 }
104 #[allow(unused_mut)]
105 let mut scope_39 = writer.prefix("CidrOptions");
106 if let Some(var_40) = &input.cidr_options {
107 crate::protocol_serde::shape_create_verified_access_endpoint_cidr_options::ser_create_verified_access_endpoint_cidr_options(
108 scope_39, var_40,
109 )?;
110 }
111 writer.finish();
112 Ok(::aws_smithy_types::body::SdkBody::from(out))
113}