/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace ElastiCache { namespace Model { /** *

A list of the replication groups

See Also:

AWS * API Reference

*/ class RegionalConfiguration { public: AWS_ELASTICACHE_API RegionalConfiguration(); AWS_ELASTICACHE_API RegionalConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICACHE_API RegionalConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The name of the secondary cluster

*/ inline const Aws::String& GetReplicationGroupId() const{ return m_replicationGroupId; } /** *

The name of the secondary cluster

*/ inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; } /** *

The name of the secondary cluster

*/ inline void SetReplicationGroupId(const Aws::String& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = value; } /** *

The name of the secondary cluster

*/ inline void SetReplicationGroupId(Aws::String&& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = std::move(value); } /** *

The name of the secondary cluster

*/ inline void SetReplicationGroupId(const char* value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId.assign(value); } /** *

The name of the secondary cluster

*/ inline RegionalConfiguration& WithReplicationGroupId(const Aws::String& value) { SetReplicationGroupId(value); return *this;} /** *

The name of the secondary cluster

*/ inline RegionalConfiguration& WithReplicationGroupId(Aws::String&& value) { SetReplicationGroupId(std::move(value)); return *this;} /** *

The name of the secondary cluster

*/ inline RegionalConfiguration& WithReplicationGroupId(const char* value) { SetReplicationGroupId(value); return *this;} /** *

The Amazon region where the cluster is stored

*/ inline const Aws::String& GetReplicationGroupRegion() const{ return m_replicationGroupRegion; } /** *

The Amazon region where the cluster is stored

*/ inline bool ReplicationGroupRegionHasBeenSet() const { return m_replicationGroupRegionHasBeenSet; } /** *

The Amazon region where the cluster is stored

*/ inline void SetReplicationGroupRegion(const Aws::String& value) { m_replicationGroupRegionHasBeenSet = true; m_replicationGroupRegion = value; } /** *

The Amazon region where the cluster is stored

*/ inline void SetReplicationGroupRegion(Aws::String&& value) { m_replicationGroupRegionHasBeenSet = true; m_replicationGroupRegion = std::move(value); } /** *

The Amazon region where the cluster is stored

*/ inline void SetReplicationGroupRegion(const char* value) { m_replicationGroupRegionHasBeenSet = true; m_replicationGroupRegion.assign(value); } /** *

The Amazon region where the cluster is stored

*/ inline RegionalConfiguration& WithReplicationGroupRegion(const Aws::String& value) { SetReplicationGroupRegion(value); return *this;} /** *

The Amazon region where the cluster is stored

*/ inline RegionalConfiguration& WithReplicationGroupRegion(Aws::String&& value) { SetReplicationGroupRegion(std::move(value)); return *this;} /** *

The Amazon region where the cluster is stored

*/ inline RegionalConfiguration& WithReplicationGroupRegion(const char* value) { SetReplicationGroupRegion(value); return *this;} /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline const Aws::Vector& GetReshardingConfiguration() const{ return m_reshardingConfiguration; } /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline bool ReshardingConfigurationHasBeenSet() const { return m_reshardingConfigurationHasBeenSet; } /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline void SetReshardingConfiguration(const Aws::Vector& value) { m_reshardingConfigurationHasBeenSet = true; m_reshardingConfiguration = value; } /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline void SetReshardingConfiguration(Aws::Vector&& value) { m_reshardingConfigurationHasBeenSet = true; m_reshardingConfiguration = std::move(value); } /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline RegionalConfiguration& WithReshardingConfiguration(const Aws::Vector& value) { SetReshardingConfiguration(value); return *this;} /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline RegionalConfiguration& WithReshardingConfiguration(Aws::Vector&& value) { SetReshardingConfiguration(std::move(value)); return *this;} /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline RegionalConfiguration& AddReshardingConfiguration(const ReshardingConfiguration& value) { m_reshardingConfigurationHasBeenSet = true; m_reshardingConfiguration.push_back(value); return *this; } /** *

A list of PreferredAvailabilityZones objects that specifies the * configuration of a node group in the resharded cluster.

*/ inline RegionalConfiguration& AddReshardingConfiguration(ReshardingConfiguration&& value) { m_reshardingConfigurationHasBeenSet = true; m_reshardingConfiguration.push_back(std::move(value)); return *this; } private: Aws::String m_replicationGroupId; bool m_replicationGroupIdHasBeenSet = false; Aws::String m_replicationGroupRegion; bool m_replicationGroupRegionHasBeenSet = false; Aws::Vector m_reshardingConfiguration; bool m_reshardingConfigurationHasBeenSet = false; }; } // namespace Model } // namespace ElastiCache } // namespace Aws