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>
11#include <aws/elasticache/model/GlobalNodeGroup.h>
12#include <aws/elasticache/model/GlobalReplicationGroupMember.h>
22namespace ElastiCache {
50 template <
typename GlobalReplicationGroupIdT = Aws::String>
52 m_globalReplicationGroupIdHasBeenSet =
true;
53 m_globalReplicationGroupId = std::forward<GlobalReplicationGroupIdT>(value);
55 template <
typename GlobalReplicationGroupIdT = Aws::String>
68 template <
typename GlobalReplicationGroupDescriptionT = Aws::String>
70 m_globalReplicationGroupDescriptionHasBeenSet =
true;
71 m_globalReplicationGroupDescription = std::forward<GlobalReplicationGroupDescriptionT>(value);
73 template <
typename GlobalReplicationGroupDescriptionT = Aws::String>
86 template <
typename StatusT = Aws::String>
88 m_statusHasBeenSet =
true;
89 m_status = std::forward<StatusT>(value);
91 template <
typename StatusT = Aws::String>
104 template <
typename CacheNodeTypeT = Aws::String>
106 m_cacheNodeTypeHasBeenSet =
true;
107 m_cacheNodeType = std::forward<CacheNodeTypeT>(value);
109 template <
typename CacheNodeTypeT = Aws::String>
122 template <
typename EngineT = Aws::String>
124 m_engineHasBeenSet =
true;
125 m_engine = std::forward<EngineT>(value);
127 template <
typename EngineT = Aws::String>
140 template <
typename EngineVersionT = Aws::String>
142 m_engineVersionHasBeenSet =
true;
143 m_engineVersion = std::forward<EngineVersionT>(value);
145 template <
typename EngineVersionT = Aws::String>
158 template <
typename MembersT = Aws::Vector<GlobalReplicationGroupMember>>
160 m_membersHasBeenSet =
true;
161 m_members = std::forward<MembersT>(value);
163 template <
typename MembersT = Aws::Vector<GlobalReplicationGroupMember>>
168 template <
typename MembersT = GlobalReplicationGroupMember>
170 m_membersHasBeenSet =
true;
171 m_members.emplace_back(std::forward<MembersT>(value));
183 m_clusterEnabledHasBeenSet =
true;
184 m_clusterEnabled = value;
199 template <
typename GlobalNodeGroupsT = Aws::Vector<GlobalNodeGroup>>
201 m_globalNodeGroupsHasBeenSet =
true;
202 m_globalNodeGroups = std::forward<GlobalNodeGroupsT>(value);
204 template <
typename GlobalNodeGroupsT = Aws::Vector<GlobalNodeGroup>>
209 template <
typename GlobalNodeGroupsT = GlobalNodeGroup>
211 m_globalNodeGroupsHasBeenSet =
true;
212 m_globalNodeGroups.emplace_back(std::forward<GlobalNodeGroupsT>(value));
225 m_authTokenEnabledHasBeenSet =
true;
226 m_authTokenEnabled = value;
243 m_transitEncryptionEnabledHasBeenSet =
true;
244 m_transitEncryptionEnabled = value;
265 m_atRestEncryptionEnabledHasBeenSet =
true;
266 m_atRestEncryptionEnabled = value;
280 template <
typename ARNT = Aws::String>
282 m_aRNHasBeenSet =
true;
283 m_aRN = std::forward<ARNT>(value);
285 template <
typename ARNT = Aws::String>
287 SetARN(std::forward<ARNT>(value));
306 bool m_clusterEnabled{
false};
310 bool m_authTokenEnabled{
false};
312 bool m_transitEncryptionEnabled{
false};
314 bool m_atRestEncryptionEnabled{
false};
317 bool m_globalReplicationGroupIdHasBeenSet =
false;
318 bool m_globalReplicationGroupDescriptionHasBeenSet =
false;
319 bool m_statusHasBeenSet =
false;
320 bool m_cacheNodeTypeHasBeenSet =
false;
321 bool m_engineHasBeenSet =
false;
322 bool m_engineVersionHasBeenSet =
false;
323 bool m_membersHasBeenSet =
false;
324 bool m_clusterEnabledHasBeenSet =
false;
325 bool m_globalNodeGroupsHasBeenSet =
false;
326 bool m_authTokenEnabledHasBeenSet =
false;
327 bool m_transitEncryptionEnabledHasBeenSet =
false;
328 bool m_atRestEncryptionEnabledHasBeenSet =
false;
329 bool m_aRNHasBeenSet =
false;
GlobalReplicationGroup & WithGlobalReplicationGroupId(GlobalReplicationGroupIdT &&value)
void SetAuthTokenEnabled(bool value)
void SetGlobalReplicationGroupId(GlobalReplicationGroupIdT &&value)
AWS_ELASTICACHE_API GlobalReplicationGroup()=default
GlobalReplicationGroup & WithGlobalNodeGroups(GlobalNodeGroupsT &&value)
GlobalReplicationGroup & WithAuthTokenEnabled(bool value)
bool GlobalReplicationGroupIdHasBeenSet() const
void SetAtRestEncryptionEnabled(bool value)
void SetTransitEncryptionEnabled(bool value)
void SetARN(ARNT &&value)
void SetMembers(MembersT &&value)
bool GetAuthTokenEnabled() const
AWS_ELASTICACHE_API GlobalReplicationGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool ClusterEnabledHasBeenSet() const
const Aws::String & GetStatus() const
const Aws::String & GetCacheNodeType() const
bool StatusHasBeenSet() const
GlobalReplicationGroup & AddMembers(MembersT &&value)
bool TransitEncryptionEnabledHasBeenSet() const
void SetEngineVersion(EngineVersionT &&value)
GlobalReplicationGroup & WithMembers(MembersT &&value)
const Aws::String & GetGlobalReplicationGroupId() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetClusterEnabled(bool value)
bool GetClusterEnabled() const
void SetGlobalNodeGroups(GlobalNodeGroupsT &&value)
AWS_ELASTICACHE_API GlobalReplicationGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< GlobalReplicationGroupMember > & GetMembers() const
GlobalReplicationGroup & WithCacheNodeType(CacheNodeTypeT &&value)
void SetCacheNodeType(CacheNodeTypeT &&value)
GlobalReplicationGroup & WithGlobalReplicationGroupDescription(GlobalReplicationGroupDescriptionT &&value)
const Aws::String & GetGlobalReplicationGroupDescription() const
bool AuthTokenEnabledHasBeenSet() const
bool GetAtRestEncryptionEnabled() const
GlobalReplicationGroup & AddGlobalNodeGroups(GlobalNodeGroupsT &&value)
void SetEngine(EngineT &&value)
GlobalReplicationGroup & WithStatus(StatusT &&value)
GlobalReplicationGroup & WithClusterEnabled(bool value)
bool EngineHasBeenSet() const
void SetStatus(StatusT &&value)
GlobalReplicationGroup & WithTransitEncryptionEnabled(bool value)
const Aws::String & GetARN() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool AtRestEncryptionEnabledHasBeenSet() const
void SetGlobalReplicationGroupDescription(GlobalReplicationGroupDescriptionT &&value)
bool CacheNodeTypeHasBeenSet() const
GlobalReplicationGroup & WithEngineVersion(EngineVersionT &&value)
const Aws::String & GetEngineVersion() const
const Aws::String & GetEngine() const
GlobalReplicationGroup & WithARN(ARNT &&value)
const Aws::Vector< GlobalNodeGroup > & GetGlobalNodeGroups() const
bool GlobalReplicationGroupDescriptionHasBeenSet() const
bool GlobalNodeGroupsHasBeenSet() const
bool MembersHasBeenSet() const
GlobalReplicationGroup & WithAtRestEncryptionEnabled(bool value)
bool EngineVersionHasBeenSet() const
bool GetTransitEncryptionEnabled() const
GlobalReplicationGroup & WithEngine(EngineT &&value)
bool ARNHasBeenSet() const
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