#[non_exhaustive]
pub struct NodeGroupConfiguration { /* private fields */ }
Expand description

Node group (shard) configuration options. Each node group (shard) configuration has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones, ReplicaCount.

Implementations§

Either the ElastiCache for Redis supplied 4-digit id or a user supplied id for the node group these configuration values apply to.

A string that specifies the keyspace for a particular node group. Keyspaces range from 0 to 16,383. The string is in the format startkey-endkey.

Example: "0-3999"

The number of read replica nodes in this node group (shard).

The Availability Zone where the primary node of this node group (shard) is launched.

A list of Availability Zones to be used for the read replicas. The number of Availability Zones in this list must match the value of ReplicaCount or ReplicasPerNodeGroup if not specified.

The outpost ARN of the primary node.

The outpost ARN of the node replicas.

Creates a new builder-style object to manufacture NodeGroupConfiguration.

Examples found in repository?
src/xml_deser.rs (line 11612)
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
pub fn deser_structure_crate_model_node_group_configuration(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::NodeGroupConfiguration, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::NodeGroupConfiguration::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NodeGroupId") /* NodeGroupId com.amazonaws.elasticache#NodeGroupConfiguration$NodeGroupId */ =>  {
                let var_498 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_node_group_id(var_498);
            }
            ,
            s if s.matches("Slots") /* Slots com.amazonaws.elasticache#NodeGroupConfiguration$Slots */ =>  {
                let var_499 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_slots(var_499);
            }
            ,
            s if s.matches("ReplicaCount") /* ReplicaCount com.amazonaws.elasticache#NodeGroupConfiguration$ReplicaCount */ =>  {
                let var_500 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.elasticache#IntegerOptional`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_replica_count(var_500);
            }
            ,
            s if s.matches("PrimaryAvailabilityZone") /* PrimaryAvailabilityZone com.amazonaws.elasticache#NodeGroupConfiguration$PrimaryAvailabilityZone */ =>  {
                let var_501 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_primary_availability_zone(var_501);
            }
            ,
            s if s.matches("ReplicaAvailabilityZones") /* ReplicaAvailabilityZones com.amazonaws.elasticache#NodeGroupConfiguration$ReplicaAvailabilityZones */ =>  {
                let var_502 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_elasticache_availability_zones_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_replica_availability_zones(var_502);
            }
            ,
            s if s.matches("PrimaryOutpostArn") /* PrimaryOutpostArn com.amazonaws.elasticache#NodeGroupConfiguration$PrimaryOutpostArn */ =>  {
                let var_503 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_primary_outpost_arn(var_503);
            }
            ,
            s if s.matches("ReplicaOutpostArns") /* ReplicaOutpostArns com.amazonaws.elasticache#NodeGroupConfiguration$ReplicaOutpostArns */ =>  {
                let var_504 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_elasticache_outpost_arns_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_replica_outpost_arns(var_504);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more