aws_sdk_elasticloadbalancingv2/protocol_serde/
shape_create_load_balancer_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub fn ser_create_load_balancer_input_input_input(
3    input: &crate::operation::create_load_balancer::CreateLoadBalancerInput,
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, "CreateLoadBalancer", "2015-12-01");
8    #[allow(unused_mut)]
9    let mut scope_1 = writer.prefix("Name");
10    if let Some(var_2) = &input.name {
11        scope_1.string(var_2);
12    }
13    #[allow(unused_mut)]
14    let mut scope_3 = writer.prefix("Subnets");
15    if let Some(var_4) = &input.subnets {
16        let mut list_6 = scope_3.start_list(false, None);
17        for item_5 in var_4 {
18            #[allow(unused_mut)]
19            let mut entry_7 = list_6.entry();
20            entry_7.string(item_5);
21        }
22        list_6.finish();
23    }
24    #[allow(unused_mut)]
25    let mut scope_8 = writer.prefix("SubnetMappings");
26    if let Some(var_9) = &input.subnet_mappings {
27        let mut list_11 = scope_8.start_list(false, None);
28        for item_10 in var_9 {
29            #[allow(unused_mut)]
30            let mut entry_12 = list_11.entry();
31            crate::protocol_serde::shape_subnet_mapping::ser_subnet_mapping(entry_12, item_10)?;
32        }
33        list_11.finish();
34    }
35    #[allow(unused_mut)]
36    let mut scope_13 = writer.prefix("SecurityGroups");
37    if let Some(var_14) = &input.security_groups {
38        let mut list_16 = scope_13.start_list(false, None);
39        for item_15 in var_14 {
40            #[allow(unused_mut)]
41            let mut entry_17 = list_16.entry();
42            entry_17.string(item_15);
43        }
44        list_16.finish();
45    }
46    #[allow(unused_mut)]
47    let mut scope_18 = writer.prefix("Scheme");
48    if let Some(var_19) = &input.scheme {
49        scope_18.string(var_19.as_str());
50    }
51    #[allow(unused_mut)]
52    let mut scope_20 = writer.prefix("Tags");
53    if let Some(var_21) = &input.tags {
54        let mut list_23 = scope_20.start_list(false, None);
55        for item_22 in var_21 {
56            #[allow(unused_mut)]
57            let mut entry_24 = list_23.entry();
58            crate::protocol_serde::shape_tag::ser_tag(entry_24, item_22)?;
59        }
60        list_23.finish();
61    }
62    #[allow(unused_mut)]
63    let mut scope_25 = writer.prefix("Type");
64    if let Some(var_26) = &input.r#type {
65        scope_25.string(var_26.as_str());
66    }
67    #[allow(unused_mut)]
68    let mut scope_27 = writer.prefix("IpAddressType");
69    if let Some(var_28) = &input.ip_address_type {
70        scope_27.string(var_28.as_str());
71    }
72    #[allow(unused_mut)]
73    let mut scope_29 = writer.prefix("CustomerOwnedIpv4Pool");
74    if let Some(var_30) = &input.customer_owned_ipv4_pool {
75        scope_29.string(var_30);
76    }
77    #[allow(unused_mut)]
78    let mut scope_31 = writer.prefix("EnablePrefixForIpv6SourceNat");
79    if let Some(var_32) = &input.enable_prefix_for_ipv6_source_nat {
80        scope_31.string(var_32.as_str());
81    }
82    #[allow(unused_mut)]
83    let mut scope_33 = writer.prefix("IpamPools");
84    if let Some(var_34) = &input.ipam_pools {
85        crate::protocol_serde::shape_ipam_pools::ser_ipam_pools(scope_33, var_34)?;
86    }
87    writer.finish();
88    Ok(::aws_smithy_types::body::SdkBody::from(out))
89}