aws-sdk-elasticache 1.110.0

AWS SDK for Amazon ElastiCache
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub fn ser_modify_replication_group_input_input_input(
    input: &crate::operation::modify_replication_group::ModifyReplicationGroupInput,
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
    let mut out = String::new();
    #[allow(unused_mut)]
    let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "ModifyReplicationGroup", "2015-02-02");
    #[allow(unused_mut)]
    let mut scope_1 = writer.prefix("ReplicationGroupId");
    if let Some(var_2) = &input.replication_group_id {
        scope_1.string(var_2);
    }
    #[allow(unused_mut)]
    let mut scope_3 = writer.prefix("ReplicationGroupDescription");
    if let Some(var_4) = &input.replication_group_description {
        scope_3.string(var_4);
    }
    #[allow(unused_mut)]
    let mut scope_5 = writer.prefix("PrimaryClusterId");
    if let Some(var_6) = &input.primary_cluster_id {
        scope_5.string(var_6);
    }
    #[allow(unused_mut)]
    let mut scope_7 = writer.prefix("SnapshottingClusterId");
    if let Some(var_8) = &input.snapshotting_cluster_id {
        scope_7.string(var_8);
    }
    #[allow(unused_mut)]
    let mut scope_9 = writer.prefix("AutomaticFailoverEnabled");
    if let Some(var_10) = &input.automatic_failover_enabled {
        scope_9.boolean(*var_10);
    }
    #[allow(unused_mut)]
    let mut scope_11 = writer.prefix("MultiAZEnabled");
    if let Some(var_12) = &input.multi_az_enabled {
        scope_11.boolean(*var_12);
    }
    #[allow(unused_mut)]
    let mut scope_13 = writer.prefix("NodeGroupId");
    if let Some(var_14) = &input.node_group_id {
        scope_13.string(var_14);
    }
    #[allow(unused_mut)]
    let mut scope_15 = writer.prefix("CacheSecurityGroupNames");
    if let Some(var_16) = &input.cache_security_group_names {
        let mut list_18 = scope_15.start_list(false, Some("CacheSecurityGroupName"));
        for item_17 in var_16 {
            #[allow(unused_mut)]
            let mut entry_19 = list_18.entry();
            entry_19.string(item_17);
        }
        list_18.finish();
    }
    #[allow(unused_mut)]
    let mut scope_20 = writer.prefix("SecurityGroupIds");
    if let Some(var_21) = &input.security_group_ids {
        let mut list_23 = scope_20.start_list(false, Some("SecurityGroupId"));
        for item_22 in var_21 {
            #[allow(unused_mut)]
            let mut entry_24 = list_23.entry();
            entry_24.string(item_22);
        }
        list_23.finish();
    }
    #[allow(unused_mut)]
    let mut scope_25 = writer.prefix("PreferredMaintenanceWindow");
    if let Some(var_26) = &input.preferred_maintenance_window {
        scope_25.string(var_26);
    }
    #[allow(unused_mut)]
    let mut scope_27 = writer.prefix("NotificationTopicArn");
    if let Some(var_28) = &input.notification_topic_arn {
        scope_27.string(var_28);
    }
    #[allow(unused_mut)]
    let mut scope_29 = writer.prefix("CacheParameterGroupName");
    if let Some(var_30) = &input.cache_parameter_group_name {
        scope_29.string(var_30);
    }
    #[allow(unused_mut)]
    let mut scope_31 = writer.prefix("NotificationTopicStatus");
    if let Some(var_32) = &input.notification_topic_status {
        scope_31.string(var_32);
    }
    #[allow(unused_mut)]
    let mut scope_33 = writer.prefix("ApplyImmediately");
    if let Some(var_34) = &input.apply_immediately {
        scope_33.boolean(*var_34);
    }
    #[allow(unused_mut)]
    let mut scope_35 = writer.prefix("Engine");
    if let Some(var_36) = &input.engine {
        scope_35.string(var_36);
    }
    #[allow(unused_mut)]
    let mut scope_37 = writer.prefix("EngineVersion");
    if let Some(var_38) = &input.engine_version {
        scope_37.string(var_38);
    }
    #[allow(unused_mut)]
    let mut scope_39 = writer.prefix("AutoMinorVersionUpgrade");
    if let Some(var_40) = &input.auto_minor_version_upgrade {
        scope_39.boolean(*var_40);
    }
    #[allow(unused_mut)]
    let mut scope_41 = writer.prefix("SnapshotRetentionLimit");
    if let Some(var_42) = &input.snapshot_retention_limit {
        scope_41.number(
            #[allow(clippy::useless_conversion)]
            ::aws_smithy_types::Number::NegInt((*var_42).into()),
        );
    }
    #[allow(unused_mut)]
    let mut scope_43 = writer.prefix("SnapshotWindow");
    if let Some(var_44) = &input.snapshot_window {
        scope_43.string(var_44);
    }
    #[allow(unused_mut)]
    let mut scope_45 = writer.prefix("CacheNodeType");
    if let Some(var_46) = &input.cache_node_type {
        scope_45.string(var_46);
    }
    #[allow(unused_mut)]
    let mut scope_47 = writer.prefix("AuthToken");
    if let Some(var_48) = &input.auth_token {
        scope_47.string(var_48);
    }
    #[allow(unused_mut)]
    let mut scope_49 = writer.prefix("AuthTokenUpdateStrategy");
    if let Some(var_50) = &input.auth_token_update_strategy {
        scope_49.string(var_50.as_str());
    }
    #[allow(unused_mut)]
    let mut scope_51 = writer.prefix("UserGroupIdsToAdd");
    if let Some(var_52) = &input.user_group_ids_to_add {
        let mut list_54 = scope_51.start_list(false, None);
        for item_53 in var_52 {
            #[allow(unused_mut)]
            let mut entry_55 = list_54.entry();
            entry_55.string(item_53);
        }
        list_54.finish();
    }
    #[allow(unused_mut)]
    let mut scope_56 = writer.prefix("UserGroupIdsToRemove");
    if let Some(var_57) = &input.user_group_ids_to_remove {
        let mut list_59 = scope_56.start_list(false, None);
        for item_58 in var_57 {
            #[allow(unused_mut)]
            let mut entry_60 = list_59.entry();
            entry_60.string(item_58);
        }
        list_59.finish();
    }
    #[allow(unused_mut)]
    let mut scope_61 = writer.prefix("RemoveUserGroups");
    if let Some(var_62) = &input.remove_user_groups {
        scope_61.boolean(*var_62);
    }
    #[allow(unused_mut)]
    let mut scope_63 = writer.prefix("LogDeliveryConfigurations");
    if let Some(var_64) = &input.log_delivery_configurations {
        let mut list_66 = scope_63.start_list(false, Some("LogDeliveryConfigurationRequest"));
        for item_65 in var_64 {
            #[allow(unused_mut)]
            let mut entry_67 = list_66.entry();
            crate::protocol_serde::shape_log_delivery_configuration_request::ser_log_delivery_configuration_request(entry_67, item_65)?;
        }
        list_66.finish();
    }
    #[allow(unused_mut)]
    let mut scope_68 = writer.prefix("IpDiscovery");
    if let Some(var_69) = &input.ip_discovery {
        scope_68.string(var_69.as_str());
    }
    #[allow(unused_mut)]
    let mut scope_70 = writer.prefix("TransitEncryptionEnabled");
    if let Some(var_71) = &input.transit_encryption_enabled {
        scope_70.boolean(*var_71);
    }
    #[allow(unused_mut)]
    let mut scope_72 = writer.prefix("TransitEncryptionMode");
    if let Some(var_73) = &input.transit_encryption_mode {
        scope_72.string(var_73.as_str());
    }
    #[allow(unused_mut)]
    let mut scope_74 = writer.prefix("ClusterMode");
    if let Some(var_75) = &input.cluster_mode {
        scope_74.string(var_75.as_str());
    }
    #[allow(unused_mut)]
    let mut scope_76 = writer.prefix("Durability");
    if let Some(var_77) = &input.durability {
        scope_76.string(var_77.as_str());
    }
    writer.finish();
    Ok(::aws_smithy_types::body::SdkBody::from(out))
}