AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
NodeGroup.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/elasticache/model/Endpoint.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/elasticache/model/NodeGroupMember.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Xml
20{
21 class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace ElastiCache
25{
26namespace Model
27{
28
37 {
38 public:
39 AWS_ELASTICACHE_API NodeGroup() = default;
40 AWS_ELASTICACHE_API NodeGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
41 AWS_ELASTICACHE_API NodeGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
42
43 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
44 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
45
46
48
55 inline const Aws::String& GetNodeGroupId() const { return m_nodeGroupId; }
56 inline bool NodeGroupIdHasBeenSet() const { return m_nodeGroupIdHasBeenSet; }
57 template<typename NodeGroupIdT = Aws::String>
58 void SetNodeGroupId(NodeGroupIdT&& value) { m_nodeGroupIdHasBeenSet = true; m_nodeGroupId = std::forward<NodeGroupIdT>(value); }
59 template<typename NodeGroupIdT = Aws::String>
60 NodeGroup& WithNodeGroupId(NodeGroupIdT&& value) { SetNodeGroupId(std::forward<NodeGroupIdT>(value)); return *this;}
62
64
68 inline const Aws::String& GetStatus() const { return m_status; }
69 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
70 template<typename StatusT = Aws::String>
71 void SetStatus(StatusT&& value) { m_statusHasBeenSet = true; m_status = std::forward<StatusT>(value); }
72 template<typename StatusT = Aws::String>
73 NodeGroup& WithStatus(StatusT&& value) { SetStatus(std::forward<StatusT>(value)); return *this;}
75
77
80 inline const Endpoint& GetPrimaryEndpoint() const { return m_primaryEndpoint; }
81 inline bool PrimaryEndpointHasBeenSet() const { return m_primaryEndpointHasBeenSet; }
82 template<typename PrimaryEndpointT = Endpoint>
83 void SetPrimaryEndpoint(PrimaryEndpointT&& value) { m_primaryEndpointHasBeenSet = true; m_primaryEndpoint = std::forward<PrimaryEndpointT>(value); }
84 template<typename PrimaryEndpointT = Endpoint>
85 NodeGroup& WithPrimaryEndpoint(PrimaryEndpointT&& value) { SetPrimaryEndpoint(std::forward<PrimaryEndpointT>(value)); return *this;}
87
89
93 inline const Endpoint& GetReaderEndpoint() const { return m_readerEndpoint; }
94 inline bool ReaderEndpointHasBeenSet() const { return m_readerEndpointHasBeenSet; }
95 template<typename ReaderEndpointT = Endpoint>
96 void SetReaderEndpoint(ReaderEndpointT&& value) { m_readerEndpointHasBeenSet = true; m_readerEndpoint = std::forward<ReaderEndpointT>(value); }
97 template<typename ReaderEndpointT = Endpoint>
98 NodeGroup& WithReaderEndpoint(ReaderEndpointT&& value) { SetReaderEndpoint(std::forward<ReaderEndpointT>(value)); return *this;}
100
102
105 inline const Aws::String& GetSlots() const { return m_slots; }
106 inline bool SlotsHasBeenSet() const { return m_slotsHasBeenSet; }
107 template<typename SlotsT = Aws::String>
108 void SetSlots(SlotsT&& value) { m_slotsHasBeenSet = true; m_slots = std::forward<SlotsT>(value); }
109 template<typename SlotsT = Aws::String>
110 NodeGroup& WithSlots(SlotsT&& value) { SetSlots(std::forward<SlotsT>(value)); return *this;}
112
114
118 inline const Aws::Vector<NodeGroupMember>& GetNodeGroupMembers() const { return m_nodeGroupMembers; }
119 inline bool NodeGroupMembersHasBeenSet() const { return m_nodeGroupMembersHasBeenSet; }
120 template<typename NodeGroupMembersT = Aws::Vector<NodeGroupMember>>
121 void SetNodeGroupMembers(NodeGroupMembersT&& value) { m_nodeGroupMembersHasBeenSet = true; m_nodeGroupMembers = std::forward<NodeGroupMembersT>(value); }
122 template<typename NodeGroupMembersT = Aws::Vector<NodeGroupMember>>
123 NodeGroup& WithNodeGroupMembers(NodeGroupMembersT&& value) { SetNodeGroupMembers(std::forward<NodeGroupMembersT>(value)); return *this;}
124 template<typename NodeGroupMembersT = NodeGroupMember>
125 NodeGroup& AddNodeGroupMembers(NodeGroupMembersT&& value) { m_nodeGroupMembersHasBeenSet = true; m_nodeGroupMembers.emplace_back(std::forward<NodeGroupMembersT>(value)); return *this; }
127 private:
128
129 Aws::String m_nodeGroupId;
130 bool m_nodeGroupIdHasBeenSet = false;
131
132 Aws::String m_status;
133 bool m_statusHasBeenSet = false;
134
135 Endpoint m_primaryEndpoint;
136 bool m_primaryEndpointHasBeenSet = false;
137
138 Endpoint m_readerEndpoint;
139 bool m_readerEndpointHasBeenSet = false;
140
141 Aws::String m_slots;
142 bool m_slotsHasBeenSet = false;
143
144 Aws::Vector<NodeGroupMember> m_nodeGroupMembers;
145 bool m_nodeGroupMembersHasBeenSet = false;
146 };
147
148} // namespace Model
149} // namespace ElastiCache
150} // namespace Aws
AWS_ELASTICACHE_API NodeGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
NodeGroup & WithStatus(StatusT &&value)
Definition NodeGroup.h:73
const Endpoint & GetPrimaryEndpoint() const
Definition NodeGroup.h:80
NodeGroup & AddNodeGroupMembers(NodeGroupMembersT &&value)
Definition NodeGroup.h:125
NodeGroup & WithSlots(SlotsT &&value)
Definition NodeGroup.h:110
const Endpoint & GetReaderEndpoint() const
Definition NodeGroup.h:93
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetPrimaryEndpoint(PrimaryEndpointT &&value)
Definition NodeGroup.h:83
const Aws::String & GetNodeGroupId() const
Definition NodeGroup.h:55
void SetStatus(StatusT &&value)
Definition NodeGroup.h:71
void SetNodeGroupId(NodeGroupIdT &&value)
Definition NodeGroup.h:58
AWS_ELASTICACHE_API NodeGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetReaderEndpoint(ReaderEndpointT &&value)
Definition NodeGroup.h:96
NodeGroup & WithPrimaryEndpoint(PrimaryEndpointT &&value)
Definition NodeGroup.h:85
AWS_ELASTICACHE_API NodeGroup()=default
void SetNodeGroupMembers(NodeGroupMembersT &&value)
Definition NodeGroup.h:121
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetSlots() const
Definition NodeGroup.h:105
const Aws::Vector< NodeGroupMember > & GetNodeGroupMembers() const
Definition NodeGroup.h:118
NodeGroup & WithNodeGroupMembers(NodeGroupMembersT &&value)
Definition NodeGroup.h:123
NodeGroup & WithNodeGroupId(NodeGroupIdT &&value)
Definition NodeGroup.h:60
const Aws::String & GetStatus() const
Definition NodeGroup.h:68
void SetSlots(SlotsT &&value)
Definition NodeGroup.h:108
NodeGroup & WithReaderEndpoint(ReaderEndpointT &&value)
Definition NodeGroup.h:98
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