AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
NodeGroupConfiguration.h
1
6#pragma once
7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace ElastiCache
23{
24namespace Model
25{
26
36 {
37 public:
38 AWS_ELASTICACHE_API NodeGroupConfiguration() = default;
39 AWS_ELASTICACHE_API NodeGroupConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
40 AWS_ELASTICACHE_API NodeGroupConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
41
42 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
44
45
47
51 inline const Aws::String& GetNodeGroupId() const { return m_nodeGroupId; }
52 inline bool NodeGroupIdHasBeenSet() const { return m_nodeGroupIdHasBeenSet; }
53 template<typename NodeGroupIdT = Aws::String>
54 void SetNodeGroupId(NodeGroupIdT&& value) { m_nodeGroupIdHasBeenSet = true; m_nodeGroupId = std::forward<NodeGroupIdT>(value); }
55 template<typename NodeGroupIdT = Aws::String>
56 NodeGroupConfiguration& WithNodeGroupId(NodeGroupIdT&& value) { SetNodeGroupId(std::forward<NodeGroupIdT>(value)); return *this;}
58
60
65 inline const Aws::String& GetSlots() const { return m_slots; }
66 inline bool SlotsHasBeenSet() const { return m_slotsHasBeenSet; }
67 template<typename SlotsT = Aws::String>
68 void SetSlots(SlotsT&& value) { m_slotsHasBeenSet = true; m_slots = std::forward<SlotsT>(value); }
69 template<typename SlotsT = Aws::String>
70 NodeGroupConfiguration& WithSlots(SlotsT&& value) { SetSlots(std::forward<SlotsT>(value)); return *this;}
72
74
77 inline int GetReplicaCount() const { return m_replicaCount; }
78 inline bool ReplicaCountHasBeenSet() const { return m_replicaCountHasBeenSet; }
79 inline void SetReplicaCount(int value) { m_replicaCountHasBeenSet = true; m_replicaCount = value; }
80 inline NodeGroupConfiguration& WithReplicaCount(int value) { SetReplicaCount(value); return *this;}
82
84
88 inline const Aws::String& GetPrimaryAvailabilityZone() const { return m_primaryAvailabilityZone; }
89 inline bool PrimaryAvailabilityZoneHasBeenSet() const { return m_primaryAvailabilityZoneHasBeenSet; }
90 template<typename PrimaryAvailabilityZoneT = Aws::String>
91 void SetPrimaryAvailabilityZone(PrimaryAvailabilityZoneT&& value) { m_primaryAvailabilityZoneHasBeenSet = true; m_primaryAvailabilityZone = std::forward<PrimaryAvailabilityZoneT>(value); }
92 template<typename PrimaryAvailabilityZoneT = Aws::String>
93 NodeGroupConfiguration& WithPrimaryAvailabilityZone(PrimaryAvailabilityZoneT&& value) { SetPrimaryAvailabilityZone(std::forward<PrimaryAvailabilityZoneT>(value)); return *this;}
95
97
103 inline const Aws::Vector<Aws::String>& GetReplicaAvailabilityZones() const { return m_replicaAvailabilityZones; }
104 inline bool ReplicaAvailabilityZonesHasBeenSet() const { return m_replicaAvailabilityZonesHasBeenSet; }
105 template<typename ReplicaAvailabilityZonesT = Aws::Vector<Aws::String>>
106 void SetReplicaAvailabilityZones(ReplicaAvailabilityZonesT&& value) { m_replicaAvailabilityZonesHasBeenSet = true; m_replicaAvailabilityZones = std::forward<ReplicaAvailabilityZonesT>(value); }
107 template<typename ReplicaAvailabilityZonesT = Aws::Vector<Aws::String>>
108 NodeGroupConfiguration& WithReplicaAvailabilityZones(ReplicaAvailabilityZonesT&& value) { SetReplicaAvailabilityZones(std::forward<ReplicaAvailabilityZonesT>(value)); return *this;}
109 template<typename ReplicaAvailabilityZonesT = Aws::String>
110 NodeGroupConfiguration& AddReplicaAvailabilityZones(ReplicaAvailabilityZonesT&& value) { m_replicaAvailabilityZonesHasBeenSet = true; m_replicaAvailabilityZones.emplace_back(std::forward<ReplicaAvailabilityZonesT>(value)); return *this; }
112
114
117 inline const Aws::String& GetPrimaryOutpostArn() const { return m_primaryOutpostArn; }
118 inline bool PrimaryOutpostArnHasBeenSet() const { return m_primaryOutpostArnHasBeenSet; }
119 template<typename PrimaryOutpostArnT = Aws::String>
120 void SetPrimaryOutpostArn(PrimaryOutpostArnT&& value) { m_primaryOutpostArnHasBeenSet = true; m_primaryOutpostArn = std::forward<PrimaryOutpostArnT>(value); }
121 template<typename PrimaryOutpostArnT = Aws::String>
122 NodeGroupConfiguration& WithPrimaryOutpostArn(PrimaryOutpostArnT&& value) { SetPrimaryOutpostArn(std::forward<PrimaryOutpostArnT>(value)); return *this;}
124
126
129 inline const Aws::Vector<Aws::String>& GetReplicaOutpostArns() const { return m_replicaOutpostArns; }
130 inline bool ReplicaOutpostArnsHasBeenSet() const { return m_replicaOutpostArnsHasBeenSet; }
131 template<typename ReplicaOutpostArnsT = Aws::Vector<Aws::String>>
132 void SetReplicaOutpostArns(ReplicaOutpostArnsT&& value) { m_replicaOutpostArnsHasBeenSet = true; m_replicaOutpostArns = std::forward<ReplicaOutpostArnsT>(value); }
133 template<typename ReplicaOutpostArnsT = Aws::Vector<Aws::String>>
134 NodeGroupConfiguration& WithReplicaOutpostArns(ReplicaOutpostArnsT&& value) { SetReplicaOutpostArns(std::forward<ReplicaOutpostArnsT>(value)); return *this;}
135 template<typename ReplicaOutpostArnsT = Aws::String>
136 NodeGroupConfiguration& AddReplicaOutpostArns(ReplicaOutpostArnsT&& value) { m_replicaOutpostArnsHasBeenSet = true; m_replicaOutpostArns.emplace_back(std::forward<ReplicaOutpostArnsT>(value)); return *this; }
138 private:
139
140 Aws::String m_nodeGroupId;
141 bool m_nodeGroupIdHasBeenSet = false;
142
143 Aws::String m_slots;
144 bool m_slotsHasBeenSet = false;
145
146 int m_replicaCount{0};
147 bool m_replicaCountHasBeenSet = false;
148
149 Aws::String m_primaryAvailabilityZone;
150 bool m_primaryAvailabilityZoneHasBeenSet = false;
151
152 Aws::Vector<Aws::String> m_replicaAvailabilityZones;
153 bool m_replicaAvailabilityZonesHasBeenSet = false;
154
155 Aws::String m_primaryOutpostArn;
156 bool m_primaryOutpostArnHasBeenSet = false;
157
158 Aws::Vector<Aws::String> m_replicaOutpostArns;
159 bool m_replicaOutpostArnsHasBeenSet = false;
160 };
161
162} // namespace Model
163} // namespace ElastiCache
164} // namespace Aws
NodeGroupConfiguration & WithReplicaAvailabilityZones(ReplicaAvailabilityZonesT &&value)
AWS_ELASTICACHE_API NodeGroupConfiguration()=default
NodeGroupConfiguration & WithPrimaryOutpostArn(PrimaryOutpostArnT &&value)
const Aws::Vector< Aws::String > & GetReplicaAvailabilityZones() const
NodeGroupConfiguration & WithSlots(SlotsT &&value)
AWS_ELASTICACHE_API NodeGroupConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetReplicaAvailabilityZones(ReplicaAvailabilityZonesT &&value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
NodeGroupConfiguration & WithNodeGroupId(NodeGroupIdT &&value)
void SetPrimaryAvailabilityZone(PrimaryAvailabilityZoneT &&value)
void SetReplicaOutpostArns(ReplicaOutpostArnsT &&value)
NodeGroupConfiguration & WithPrimaryAvailabilityZone(PrimaryAvailabilityZoneT &&value)
NodeGroupConfiguration & AddReplicaOutpostArns(ReplicaOutpostArnsT &&value)
NodeGroupConfiguration & WithReplicaOutpostArns(ReplicaOutpostArnsT &&value)
AWS_ELASTICACHE_API NodeGroupConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
NodeGroupConfiguration & WithReplicaCount(int value)
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