aws-sdk-codedeploy 1.100.0

AWS SDK for AWS CodeDeploy
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub fn ser_create_deployment_group_input_input(
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::operation::create_deployment_group::CreateDeploymentGroupInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
    if let Some(var_1) = &input.application_name {
        object.key("applicationName").string(var_1.as_str());
    }
    if let Some(var_2) = &input.deployment_group_name {
        object.key("deploymentGroupName").string(var_2.as_str());
    }
    if let Some(var_3) = &input.deployment_config_name {
        object.key("deploymentConfigName").string(var_3.as_str());
    }
    if let Some(var_4) = &input.ec2_tag_filters {
        let mut array_5 = object.key("ec2TagFilters").start_array();
        for item_6 in var_4 {
            {
                #[allow(unused_mut)]
                let mut object_7 = array_5.value().start_object();
                crate::protocol_serde::shape_ec2_tag_filter::ser_ec2_tag_filter(&mut object_7, item_6)?;
                object_7.finish();
            }
        }
        array_5.finish();
    }
    if let Some(var_8) = &input.on_premises_instance_tag_filters {
        let mut array_9 = object.key("onPremisesInstanceTagFilters").start_array();
        for item_10 in var_8 {
            {
                #[allow(unused_mut)]
                let mut object_11 = array_9.value().start_object();
                crate::protocol_serde::shape_tag_filter::ser_tag_filter(&mut object_11, item_10)?;
                object_11.finish();
            }
        }
        array_9.finish();
    }
    if let Some(var_12) = &input.auto_scaling_groups {
        let mut array_13 = object.key("autoScalingGroups").start_array();
        for item_14 in var_12 {
            {
                array_13.value().string(item_14.as_str());
            }
        }
        array_13.finish();
    }
    if let Some(var_15) = &input.service_role_arn {
        object.key("serviceRoleArn").string(var_15.as_str());
    }
    if let Some(var_16) = &input.trigger_configurations {
        let mut array_17 = object.key("triggerConfigurations").start_array();
        for item_18 in var_16 {
            {
                #[allow(unused_mut)]
                let mut object_19 = array_17.value().start_object();
                crate::protocol_serde::shape_trigger_config::ser_trigger_config(&mut object_19, item_18)?;
                object_19.finish();
            }
        }
        array_17.finish();
    }
    if let Some(var_20) = &input.alarm_configuration {
        #[allow(unused_mut)]
        let mut object_21 = object.key("alarmConfiguration").start_object();
        crate::protocol_serde::shape_alarm_configuration::ser_alarm_configuration(&mut object_21, var_20)?;
        object_21.finish();
    }
    if let Some(var_22) = &input.auto_rollback_configuration {
        #[allow(unused_mut)]
        let mut object_23 = object.key("autoRollbackConfiguration").start_object();
        crate::protocol_serde::shape_auto_rollback_configuration::ser_auto_rollback_configuration(&mut object_23, var_22)?;
        object_23.finish();
    }
    if let Some(var_24) = &input.outdated_instances_strategy {
        object.key("outdatedInstancesStrategy").string(var_24.as_str());
    }
    if let Some(var_25) = &input.deployment_style {
        #[allow(unused_mut)]
        let mut object_26 = object.key("deploymentStyle").start_object();
        crate::protocol_serde::shape_deployment_style::ser_deployment_style(&mut object_26, var_25)?;
        object_26.finish();
    }
    if let Some(var_27) = &input.blue_green_deployment_configuration {
        #[allow(unused_mut)]
        let mut object_28 = object.key("blueGreenDeploymentConfiguration").start_object();
        crate::protocol_serde::shape_blue_green_deployment_configuration::ser_blue_green_deployment_configuration(&mut object_28, var_27)?;
        object_28.finish();
    }
    if let Some(var_29) = &input.load_balancer_info {
        #[allow(unused_mut)]
        let mut object_30 = object.key("loadBalancerInfo").start_object();
        crate::protocol_serde::shape_load_balancer_info::ser_load_balancer_info(&mut object_30, var_29)?;
        object_30.finish();
    }
    if let Some(var_31) = &input.ec2_tag_set {
        #[allow(unused_mut)]
        let mut object_32 = object.key("ec2TagSet").start_object();
        crate::protocol_serde::shape_ec2_tag_set::ser_ec2_tag_set(&mut object_32, var_31)?;
        object_32.finish();
    }
    if let Some(var_33) = &input.ecs_services {
        let mut array_34 = object.key("ecsServices").start_array();
        for item_35 in var_33 {
            {
                #[allow(unused_mut)]
                let mut object_36 = array_34.value().start_object();
                crate::protocol_serde::shape_ecs_service::ser_ecs_service(&mut object_36, item_35)?;
                object_36.finish();
            }
        }
        array_34.finish();
    }
    if let Some(var_37) = &input.on_premises_tag_set {
        #[allow(unused_mut)]
        let mut object_38 = object.key("onPremisesTagSet").start_object();
        crate::protocol_serde::shape_on_premises_tag_set::ser_on_premises_tag_set(&mut object_38, var_37)?;
        object_38.finish();
    }
    if let Some(var_39) = &input.tags {
        let mut array_40 = object.key("tags").start_array();
        for item_41 in var_39 {
            {
                #[allow(unused_mut)]
                let mut object_42 = array_40.value().start_object();
                crate::protocol_serde::shape_tag::ser_tag(&mut object_42, item_41)?;
                object_42.finish();
            }
        }
        array_40.finish();
    }
    if let Some(var_43) = &input.termination_hook_enabled {
        object.key("terminationHookEnabled").boolean(*var_43);
    }
    Ok(())
}