7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/elasticache/ElastiCache_EXPORTS.h>
20namespace ElastiCache {
47 template <
typename NodeGroupIdT = Aws::String>
49 m_nodeGroupIdHasBeenSet =
true;
50 m_nodeGroupId = std::forward<NodeGroupIdT>(value);
52 template <
typename NodeGroupIdT = Aws::String>
67 template <
typename SlotsT = Aws::String>
69 m_slotsHasBeenSet =
true;
70 m_slots = std::forward<SlotsT>(value);
72 template <
typename SlotsT = Aws::String>
74 SetSlots(std::forward<SlotsT>(value));
86 m_replicaCountHasBeenSet =
true;
87 m_replicaCount = value;
102 template <
typename PrimaryAvailabilityZoneT = Aws::String>
104 m_primaryAvailabilityZoneHasBeenSet =
true;
105 m_primaryAvailabilityZone = std::forward<PrimaryAvailabilityZoneT>(value);
107 template <
typename PrimaryAvailabilityZoneT = Aws::String>
123 template <
typename ReplicaAvailabilityZonesT = Aws::Vector<Aws::String>>
125 m_replicaAvailabilityZonesHasBeenSet =
true;
126 m_replicaAvailabilityZones = std::forward<ReplicaAvailabilityZonesT>(value);
128 template <
typename ReplicaAvailabilityZonesT = Aws::Vector<Aws::String>>
133 template <
typename ReplicaAvailabilityZonesT = Aws::String>
135 m_replicaAvailabilityZonesHasBeenSet =
true;
136 m_replicaAvailabilityZones.emplace_back(std::forward<ReplicaAvailabilityZonesT>(value));
147 template <
typename PrimaryOutpostArnT = Aws::String>
149 m_primaryOutpostArnHasBeenSet =
true;
150 m_primaryOutpostArn = std::forward<PrimaryOutpostArnT>(value);
152 template <
typename PrimaryOutpostArnT = Aws::String>
165 template <
typename ReplicaOutpostArnsT = Aws::Vector<Aws::String>>
167 m_replicaOutpostArnsHasBeenSet =
true;
168 m_replicaOutpostArns = std::forward<ReplicaOutpostArnsT>(value);
170 template <
typename ReplicaOutpostArnsT = Aws::Vector<Aws::String>>
175 template <
typename ReplicaOutpostArnsT = Aws::String>
177 m_replicaOutpostArnsHasBeenSet =
true;
178 m_replicaOutpostArns.emplace_back(std::forward<ReplicaOutpostArnsT>(value));
187 int m_replicaCount{0};
196 bool m_nodeGroupIdHasBeenSet =
false;
197 bool m_slotsHasBeenSet =
false;
198 bool m_replicaCountHasBeenSet =
false;
199 bool m_primaryAvailabilityZoneHasBeenSet =
false;
200 bool m_replicaAvailabilityZonesHasBeenSet =
false;
201 bool m_primaryOutpostArnHasBeenSet =
false;
202 bool m_replicaOutpostArnsHasBeenSet =
false;
void SetSlots(SlotsT &&value)
NodeGroupConfiguration & WithReplicaAvailabilityZones(ReplicaAvailabilityZonesT &&value)
AWS_ELASTICACHE_API NodeGroupConfiguration()=default
bool PrimaryOutpostArnHasBeenSet() const
bool PrimaryAvailabilityZoneHasBeenSet() const
NodeGroupConfiguration & WithPrimaryOutpostArn(PrimaryOutpostArnT &&value)
const Aws::Vector< Aws::String > & GetReplicaAvailabilityZones() const
NodeGroupConfiguration & WithSlots(SlotsT &&value)
int GetReplicaCount() const
AWS_ELASTICACHE_API NodeGroupConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetPrimaryOutpostArn() const
const Aws::String & GetSlots() const
const Aws::String & GetPrimaryAvailabilityZone() const
void SetReplicaAvailabilityZones(ReplicaAvailabilityZonesT &&value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool NodeGroupIdHasBeenSet() const
NodeGroupConfiguration & WithNodeGroupId(NodeGroupIdT &&value)
void SetPrimaryAvailabilityZone(PrimaryAvailabilityZoneT &&value)
void SetReplicaOutpostArns(ReplicaOutpostArnsT &&value)
const Aws::String & GetNodeGroupId() const
bool SlotsHasBeenSet() const
NodeGroupConfiguration & WithPrimaryAvailabilityZone(PrimaryAvailabilityZoneT &&value)
NodeGroupConfiguration & AddReplicaOutpostArns(ReplicaOutpostArnsT &&value)
NodeGroupConfiguration & WithReplicaOutpostArns(ReplicaOutpostArnsT &&value)
AWS_ELASTICACHE_API NodeGroupConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetReplicaCount(int value)
void SetNodeGroupId(NodeGroupIdT &&value)
bool ReplicaOutpostArnsHasBeenSet() const
bool ReplicaCountHasBeenSet() const
void SetPrimaryOutpostArn(PrimaryOutpostArnT &&value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
NodeGroupConfiguration & WithReplicaCount(int value)
bool ReplicaAvailabilityZonesHasBeenSet() const
const Aws::Vector< Aws::String > & GetReplicaOutpostArns() const
NodeGroupConfiguration & AddReplicaAvailabilityZones(ReplicaAvailabilityZonesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream