AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ReplicationGroup.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/GlobalReplicationGroupInfo.h>
11#include <aws/elasticache/model/ReplicationGroupPendingModifiedValues.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/elasticache/model/AutomaticFailoverStatus.h>
14#include <aws/elasticache/model/MultiAZStatus.h>
15#include <aws/elasticache/model/Endpoint.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/elasticache/model/DataTieringStatus.h>
18#include <aws/elasticache/model/NetworkType.h>
19#include <aws/elasticache/model/IpDiscovery.h>
20#include <aws/elasticache/model/TransitEncryptionMode.h>
21#include <aws/elasticache/model/ClusterMode.h>
22#include <aws/elasticache/model/NodeGroup.h>
23#include <aws/elasticache/model/LogDeliveryConfiguration.h>
24#include <utility>
25
26namespace Aws
27{
28namespace Utils
29{
30namespace Xml
31{
32 class XmlNode;
33} // namespace Xml
34} // namespace Utils
35namespace ElastiCache
36{
37namespace Model
38{
39
47 {
48 public:
49 AWS_ELASTICACHE_API ReplicationGroup() = default;
50 AWS_ELASTICACHE_API ReplicationGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
51 AWS_ELASTICACHE_API ReplicationGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
52
53 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
54 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
55
56
58
61 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
62 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
63 template<typename ReplicationGroupIdT = Aws::String>
64 void SetReplicationGroupId(ReplicationGroupIdT&& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = std::forward<ReplicationGroupIdT>(value); }
65 template<typename ReplicationGroupIdT = Aws::String>
66 ReplicationGroup& WithReplicationGroupId(ReplicationGroupIdT&& value) { SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value)); return *this;}
68
70
73 inline const Aws::String& GetDescription() const { return m_description; }
74 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
75 template<typename DescriptionT = Aws::String>
76 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
77 template<typename DescriptionT = Aws::String>
78 ReplicationGroup& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
80
82
86 inline const GlobalReplicationGroupInfo& GetGlobalReplicationGroupInfo() const { return m_globalReplicationGroupInfo; }
87 inline bool GlobalReplicationGroupInfoHasBeenSet() const { return m_globalReplicationGroupInfoHasBeenSet; }
88 template<typename GlobalReplicationGroupInfoT = GlobalReplicationGroupInfo>
89 void SetGlobalReplicationGroupInfo(GlobalReplicationGroupInfoT&& value) { m_globalReplicationGroupInfoHasBeenSet = true; m_globalReplicationGroupInfo = std::forward<GlobalReplicationGroupInfoT>(value); }
90 template<typename GlobalReplicationGroupInfoT = GlobalReplicationGroupInfo>
91 ReplicationGroup& WithGlobalReplicationGroupInfo(GlobalReplicationGroupInfoT&& value) { SetGlobalReplicationGroupInfo(std::forward<GlobalReplicationGroupInfoT>(value)); return *this;}
93
95
100 inline const Aws::String& GetStatus() const { return m_status; }
101 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
102 template<typename StatusT = Aws::String>
103 void SetStatus(StatusT&& value) { m_statusHasBeenSet = true; m_status = std::forward<StatusT>(value); }
104 template<typename StatusT = Aws::String>
105 ReplicationGroup& WithStatus(StatusT&& value) { SetStatus(std::forward<StatusT>(value)); return *this;}
107
109
113 inline const ReplicationGroupPendingModifiedValues& GetPendingModifiedValues() const { return m_pendingModifiedValues; }
114 inline bool PendingModifiedValuesHasBeenSet() const { return m_pendingModifiedValuesHasBeenSet; }
115 template<typename PendingModifiedValuesT = ReplicationGroupPendingModifiedValues>
116 void SetPendingModifiedValues(PendingModifiedValuesT&& value) { m_pendingModifiedValuesHasBeenSet = true; m_pendingModifiedValues = std::forward<PendingModifiedValuesT>(value); }
117 template<typename PendingModifiedValuesT = ReplicationGroupPendingModifiedValues>
118 ReplicationGroup& WithPendingModifiedValues(PendingModifiedValuesT&& value) { SetPendingModifiedValues(std::forward<PendingModifiedValuesT>(value)); return *this;}
120
122
126 inline const Aws::Vector<Aws::String>& GetMemberClusters() const { return m_memberClusters; }
127 inline bool MemberClustersHasBeenSet() const { return m_memberClustersHasBeenSet; }
128 template<typename MemberClustersT = Aws::Vector<Aws::String>>
129 void SetMemberClusters(MemberClustersT&& value) { m_memberClustersHasBeenSet = true; m_memberClusters = std::forward<MemberClustersT>(value); }
130 template<typename MemberClustersT = Aws::Vector<Aws::String>>
131 ReplicationGroup& WithMemberClusters(MemberClustersT&& value) { SetMemberClusters(std::forward<MemberClustersT>(value)); return *this;}
132 template<typename MemberClustersT = Aws::String>
133 ReplicationGroup& AddMemberClusters(MemberClustersT&& value) { m_memberClustersHasBeenSet = true; m_memberClusters.emplace_back(std::forward<MemberClustersT>(value)); return *this; }
135
137
143 inline const Aws::Vector<NodeGroup>& GetNodeGroups() const { return m_nodeGroups; }
144 inline bool NodeGroupsHasBeenSet() const { return m_nodeGroupsHasBeenSet; }
145 template<typename NodeGroupsT = Aws::Vector<NodeGroup>>
146 void SetNodeGroups(NodeGroupsT&& value) { m_nodeGroupsHasBeenSet = true; m_nodeGroups = std::forward<NodeGroupsT>(value); }
147 template<typename NodeGroupsT = Aws::Vector<NodeGroup>>
148 ReplicationGroup& WithNodeGroups(NodeGroupsT&& value) { SetNodeGroups(std::forward<NodeGroupsT>(value)); return *this;}
149 template<typename NodeGroupsT = NodeGroup>
150 ReplicationGroup& AddNodeGroups(NodeGroupsT&& value) { m_nodeGroupsHasBeenSet = true; m_nodeGroups.emplace_back(std::forward<NodeGroupsT>(value)); return *this; }
152
154
158 inline const Aws::String& GetSnapshottingClusterId() const { return m_snapshottingClusterId; }
159 inline bool SnapshottingClusterIdHasBeenSet() const { return m_snapshottingClusterIdHasBeenSet; }
160 template<typename SnapshottingClusterIdT = Aws::String>
161 void SetSnapshottingClusterId(SnapshottingClusterIdT&& value) { m_snapshottingClusterIdHasBeenSet = true; m_snapshottingClusterId = std::forward<SnapshottingClusterIdT>(value); }
162 template<typename SnapshottingClusterIdT = Aws::String>
163 ReplicationGroup& WithSnapshottingClusterId(SnapshottingClusterIdT&& value) { SetSnapshottingClusterId(std::forward<SnapshottingClusterIdT>(value)); return *this;}
165
167
171 inline AutomaticFailoverStatus GetAutomaticFailover() const { return m_automaticFailover; }
172 inline bool AutomaticFailoverHasBeenSet() const { return m_automaticFailoverHasBeenSet; }
173 inline void SetAutomaticFailover(AutomaticFailoverStatus value) { m_automaticFailoverHasBeenSet = true; m_automaticFailover = value; }
176
178
184 inline MultiAZStatus GetMultiAZ() const { return m_multiAZ; }
185 inline bool MultiAZHasBeenSet() const { return m_multiAZHasBeenSet; }
186 inline void SetMultiAZ(MultiAZStatus value) { m_multiAZHasBeenSet = true; m_multiAZ = value; }
187 inline ReplicationGroup& WithMultiAZ(MultiAZStatus value) { SetMultiAZ(value); return *this;}
189
191
195 inline const Endpoint& GetConfigurationEndpoint() const { return m_configurationEndpoint; }
196 inline bool ConfigurationEndpointHasBeenSet() const { return m_configurationEndpointHasBeenSet; }
197 template<typename ConfigurationEndpointT = Endpoint>
198 void SetConfigurationEndpoint(ConfigurationEndpointT&& value) { m_configurationEndpointHasBeenSet = true; m_configurationEndpoint = std::forward<ConfigurationEndpointT>(value); }
199 template<typename ConfigurationEndpointT = Endpoint>
200 ReplicationGroup& WithConfigurationEndpoint(ConfigurationEndpointT&& value) { SetConfigurationEndpoint(std::forward<ConfigurationEndpointT>(value)); return *this;}
202
204
212 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
213 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
214 inline void SetSnapshotRetentionLimit(int value) { m_snapshotRetentionLimitHasBeenSet = true; m_snapshotRetentionLimit = value; }
217
219
226 inline const Aws::String& GetSnapshotWindow() const { return m_snapshotWindow; }
227 inline bool SnapshotWindowHasBeenSet() const { return m_snapshotWindowHasBeenSet; }
228 template<typename SnapshotWindowT = Aws::String>
229 void SetSnapshotWindow(SnapshotWindowT&& value) { m_snapshotWindowHasBeenSet = true; m_snapshotWindow = std::forward<SnapshotWindowT>(value); }
230 template<typename SnapshotWindowT = Aws::String>
231 ReplicationGroup& WithSnapshotWindow(SnapshotWindowT&& value) { SetSnapshotWindow(std::forward<SnapshotWindowT>(value)); return *this;}
233
235
240 inline bool GetClusterEnabled() const { return m_clusterEnabled; }
241 inline bool ClusterEnabledHasBeenSet() const { return m_clusterEnabledHasBeenSet; }
242 inline void SetClusterEnabled(bool value) { m_clusterEnabledHasBeenSet = true; m_clusterEnabled = value; }
243 inline ReplicationGroup& WithClusterEnabled(bool value) { SetClusterEnabled(value); return *this;}
245
247
251 inline const Aws::String& GetCacheNodeType() const { return m_cacheNodeType; }
252 inline bool CacheNodeTypeHasBeenSet() const { return m_cacheNodeTypeHasBeenSet; }
253 template<typename CacheNodeTypeT = Aws::String>
254 void SetCacheNodeType(CacheNodeTypeT&& value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType = std::forward<CacheNodeTypeT>(value); }
255 template<typename CacheNodeTypeT = Aws::String>
256 ReplicationGroup& WithCacheNodeType(CacheNodeTypeT&& value) { SetCacheNodeType(std::forward<CacheNodeTypeT>(value)); return *this;}
258
260
264 inline bool GetAuthTokenEnabled() const { return m_authTokenEnabled; }
265 inline bool AuthTokenEnabledHasBeenSet() const { return m_authTokenEnabledHasBeenSet; }
266 inline void SetAuthTokenEnabled(bool value) { m_authTokenEnabledHasBeenSet = true; m_authTokenEnabled = value; }
267 inline ReplicationGroup& WithAuthTokenEnabled(bool value) { SetAuthTokenEnabled(value); return *this;}
269
271
274 inline const Aws::Utils::DateTime& GetAuthTokenLastModifiedDate() const { return m_authTokenLastModifiedDate; }
275 inline bool AuthTokenLastModifiedDateHasBeenSet() const { return m_authTokenLastModifiedDateHasBeenSet; }
276 template<typename AuthTokenLastModifiedDateT = Aws::Utils::DateTime>
277 void SetAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT&& value) { m_authTokenLastModifiedDateHasBeenSet = true; m_authTokenLastModifiedDate = std::forward<AuthTokenLastModifiedDateT>(value); }
278 template<typename AuthTokenLastModifiedDateT = Aws::Utils::DateTime>
279 ReplicationGroup& WithAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT&& value) { SetAuthTokenLastModifiedDate(std::forward<AuthTokenLastModifiedDateT>(value)); return *this;}
281
283
289 inline bool GetTransitEncryptionEnabled() const { return m_transitEncryptionEnabled; }
290 inline bool TransitEncryptionEnabledHasBeenSet() const { return m_transitEncryptionEnabledHasBeenSet; }
291 inline void SetTransitEncryptionEnabled(bool value) { m_transitEncryptionEnabledHasBeenSet = true; m_transitEncryptionEnabled = value; }
294
296
305 inline bool GetAtRestEncryptionEnabled() const { return m_atRestEncryptionEnabled; }
306 inline bool AtRestEncryptionEnabledHasBeenSet() const { return m_atRestEncryptionEnabledHasBeenSet; }
307 inline void SetAtRestEncryptionEnabled(bool value) { m_atRestEncryptionEnabledHasBeenSet = true; m_atRestEncryptionEnabled = value; }
310
312
315 inline const Aws::Vector<Aws::String>& GetMemberClustersOutpostArns() const { return m_memberClustersOutpostArns; }
316 inline bool MemberClustersOutpostArnsHasBeenSet() const { return m_memberClustersOutpostArnsHasBeenSet; }
317 template<typename MemberClustersOutpostArnsT = Aws::Vector<Aws::String>>
318 void SetMemberClustersOutpostArns(MemberClustersOutpostArnsT&& value) { m_memberClustersOutpostArnsHasBeenSet = true; m_memberClustersOutpostArns = std::forward<MemberClustersOutpostArnsT>(value); }
319 template<typename MemberClustersOutpostArnsT = Aws::Vector<Aws::String>>
320 ReplicationGroup& WithMemberClustersOutpostArns(MemberClustersOutpostArnsT&& value) { SetMemberClustersOutpostArns(std::forward<MemberClustersOutpostArnsT>(value)); return *this;}
321 template<typename MemberClustersOutpostArnsT = Aws::String>
322 ReplicationGroup& AddMemberClustersOutpostArns(MemberClustersOutpostArnsT&& value) { m_memberClustersOutpostArnsHasBeenSet = true; m_memberClustersOutpostArns.emplace_back(std::forward<MemberClustersOutpostArnsT>(value)); return *this; }
324
326
329 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
330 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
331 template<typename KmsKeyIdT = Aws::String>
332 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
333 template<typename KmsKeyIdT = Aws::String>
334 ReplicationGroup& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
336
338
341 inline const Aws::String& GetARN() const { return m_aRN; }
342 inline bool ARNHasBeenSet() const { return m_aRNHasBeenSet; }
343 template<typename ARNT = Aws::String>
344 void SetARN(ARNT&& value) { m_aRNHasBeenSet = true; m_aRN = std::forward<ARNT>(value); }
345 template<typename ARNT = Aws::String>
346 ReplicationGroup& WithARN(ARNT&& value) { SetARN(std::forward<ARNT>(value)); return *this;}
348
350
353 inline const Aws::Vector<Aws::String>& GetUserGroupIds() const { return m_userGroupIds; }
354 inline bool UserGroupIdsHasBeenSet() const { return m_userGroupIdsHasBeenSet; }
355 template<typename UserGroupIdsT = Aws::Vector<Aws::String>>
356 void SetUserGroupIds(UserGroupIdsT&& value) { m_userGroupIdsHasBeenSet = true; m_userGroupIds = std::forward<UserGroupIdsT>(value); }
357 template<typename UserGroupIdsT = Aws::Vector<Aws::String>>
358 ReplicationGroup& WithUserGroupIds(UserGroupIdsT&& value) { SetUserGroupIds(std::forward<UserGroupIdsT>(value)); return *this;}
359 template<typename UserGroupIdsT = Aws::String>
360 ReplicationGroup& AddUserGroupIds(UserGroupIdsT&& value) { m_userGroupIdsHasBeenSet = true; m_userGroupIds.emplace_back(std::forward<UserGroupIdsT>(value)); return *this; }
362
364
367 inline const Aws::Vector<LogDeliveryConfiguration>& GetLogDeliveryConfigurations() const { return m_logDeliveryConfigurations; }
368 inline bool LogDeliveryConfigurationsHasBeenSet() const { return m_logDeliveryConfigurationsHasBeenSet; }
369 template<typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfiguration>>
370 void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { m_logDeliveryConfigurationsHasBeenSet = true; m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value); }
371 template<typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfiguration>>
372 ReplicationGroup& WithLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { SetLogDeliveryConfigurations(std::forward<LogDeliveryConfigurationsT>(value)); return *this;}
373 template<typename LogDeliveryConfigurationsT = LogDeliveryConfiguration>
374 ReplicationGroup& AddLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { m_logDeliveryConfigurationsHasBeenSet = true; m_logDeliveryConfigurations.emplace_back(std::forward<LogDeliveryConfigurationsT>(value)); return *this; }
376
378
381 inline const Aws::Utils::DateTime& GetReplicationGroupCreateTime() const { return m_replicationGroupCreateTime; }
382 inline bool ReplicationGroupCreateTimeHasBeenSet() const { return m_replicationGroupCreateTimeHasBeenSet; }
383 template<typename ReplicationGroupCreateTimeT = Aws::Utils::DateTime>
384 void SetReplicationGroupCreateTime(ReplicationGroupCreateTimeT&& value) { m_replicationGroupCreateTimeHasBeenSet = true; m_replicationGroupCreateTime = std::forward<ReplicationGroupCreateTimeT>(value); }
385 template<typename ReplicationGroupCreateTimeT = Aws::Utils::DateTime>
386 ReplicationGroup& WithReplicationGroupCreateTime(ReplicationGroupCreateTimeT&& value) { SetReplicationGroupCreateTime(std::forward<ReplicationGroupCreateTimeT>(value)); return *this;}
388
390
397 inline DataTieringStatus GetDataTiering() const { return m_dataTiering; }
398 inline bool DataTieringHasBeenSet() const { return m_dataTieringHasBeenSet; }
399 inline void SetDataTiering(DataTieringStatus value) { m_dataTieringHasBeenSet = true; m_dataTiering = value; }
400 inline ReplicationGroup& WithDataTiering(DataTieringStatus value) { SetDataTiering(value); return *this;}
402
404
409 inline bool GetAutoMinorVersionUpgrade() const { return m_autoMinorVersionUpgrade; }
410 inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; }
411 inline void SetAutoMinorVersionUpgrade(bool value) { m_autoMinorVersionUpgradeHasBeenSet = true; m_autoMinorVersionUpgrade = value; }
414
416
423 inline NetworkType GetNetworkType() const { return m_networkType; }
424 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
425 inline void SetNetworkType(NetworkType value) { m_networkTypeHasBeenSet = true; m_networkType = value; }
426 inline ReplicationGroup& WithNetworkType(NetworkType value) { SetNetworkType(value); return *this;}
428
430
437 inline IpDiscovery GetIpDiscovery() const { return m_ipDiscovery; }
438 inline bool IpDiscoveryHasBeenSet() const { return m_ipDiscoveryHasBeenSet; }
439 inline void SetIpDiscovery(IpDiscovery value) { m_ipDiscoveryHasBeenSet = true; m_ipDiscovery = value; }
440 inline ReplicationGroup& WithIpDiscovery(IpDiscovery value) { SetIpDiscovery(value); return *this;}
442
444
448 inline TransitEncryptionMode GetTransitEncryptionMode() const { return m_transitEncryptionMode; }
449 inline bool TransitEncryptionModeHasBeenSet() const { return m_transitEncryptionModeHasBeenSet; }
450 inline void SetTransitEncryptionMode(TransitEncryptionMode value) { m_transitEncryptionModeHasBeenSet = true; m_transitEncryptionMode = value; }
453
455
463 inline ClusterMode GetClusterMode() const { return m_clusterMode; }
464 inline bool ClusterModeHasBeenSet() const { return m_clusterModeHasBeenSet; }
465 inline void SetClusterMode(ClusterMode value) { m_clusterModeHasBeenSet = true; m_clusterMode = value; }
466 inline ReplicationGroup& WithClusterMode(ClusterMode value) { SetClusterMode(value); return *this;}
468
470
474 inline const Aws::String& GetEngine() const { return m_engine; }
475 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
476 template<typename EngineT = Aws::String>
477 void SetEngine(EngineT&& value) { m_engineHasBeenSet = true; m_engine = std::forward<EngineT>(value); }
478 template<typename EngineT = Aws::String>
479 ReplicationGroup& WithEngine(EngineT&& value) { SetEngine(std::forward<EngineT>(value)); return *this;}
481 private:
482
483 Aws::String m_replicationGroupId;
484 bool m_replicationGroupIdHasBeenSet = false;
485
486 Aws::String m_description;
487 bool m_descriptionHasBeenSet = false;
488
489 GlobalReplicationGroupInfo m_globalReplicationGroupInfo;
490 bool m_globalReplicationGroupInfoHasBeenSet = false;
491
492 Aws::String m_status;
493 bool m_statusHasBeenSet = false;
494
495 ReplicationGroupPendingModifiedValues m_pendingModifiedValues;
496 bool m_pendingModifiedValuesHasBeenSet = false;
497
498 Aws::Vector<Aws::String> m_memberClusters;
499 bool m_memberClustersHasBeenSet = false;
500
501 Aws::Vector<NodeGroup> m_nodeGroups;
502 bool m_nodeGroupsHasBeenSet = false;
503
504 Aws::String m_snapshottingClusterId;
505 bool m_snapshottingClusterIdHasBeenSet = false;
506
508 bool m_automaticFailoverHasBeenSet = false;
509
511 bool m_multiAZHasBeenSet = false;
512
513 Endpoint m_configurationEndpoint;
514 bool m_configurationEndpointHasBeenSet = false;
515
516 int m_snapshotRetentionLimit{0};
517 bool m_snapshotRetentionLimitHasBeenSet = false;
518
519 Aws::String m_snapshotWindow;
520 bool m_snapshotWindowHasBeenSet = false;
521
522 bool m_clusterEnabled{false};
523 bool m_clusterEnabledHasBeenSet = false;
524
525 Aws::String m_cacheNodeType;
526 bool m_cacheNodeTypeHasBeenSet = false;
527
528 bool m_authTokenEnabled{false};
529 bool m_authTokenEnabledHasBeenSet = false;
530
531 Aws::Utils::DateTime m_authTokenLastModifiedDate{};
532 bool m_authTokenLastModifiedDateHasBeenSet = false;
533
534 bool m_transitEncryptionEnabled{false};
535 bool m_transitEncryptionEnabledHasBeenSet = false;
536
537 bool m_atRestEncryptionEnabled{false};
538 bool m_atRestEncryptionEnabledHasBeenSet = false;
539
540 Aws::Vector<Aws::String> m_memberClustersOutpostArns;
541 bool m_memberClustersOutpostArnsHasBeenSet = false;
542
543 Aws::String m_kmsKeyId;
544 bool m_kmsKeyIdHasBeenSet = false;
545
546 Aws::String m_aRN;
547 bool m_aRNHasBeenSet = false;
548
549 Aws::Vector<Aws::String> m_userGroupIds;
550 bool m_userGroupIdsHasBeenSet = false;
551
552 Aws::Vector<LogDeliveryConfiguration> m_logDeliveryConfigurations;
553 bool m_logDeliveryConfigurationsHasBeenSet = false;
554
555 Aws::Utils::DateTime m_replicationGroupCreateTime{};
556 bool m_replicationGroupCreateTimeHasBeenSet = false;
557
559 bool m_dataTieringHasBeenSet = false;
560
561 bool m_autoMinorVersionUpgrade{false};
562 bool m_autoMinorVersionUpgradeHasBeenSet = false;
563
564 NetworkType m_networkType{NetworkType::NOT_SET};
565 bool m_networkTypeHasBeenSet = false;
566
567 IpDiscovery m_ipDiscovery{IpDiscovery::NOT_SET};
568 bool m_ipDiscoveryHasBeenSet = false;
569
571 bool m_transitEncryptionModeHasBeenSet = false;
572
573 ClusterMode m_clusterMode{ClusterMode::NOT_SET};
574 bool m_clusterModeHasBeenSet = false;
575
576 Aws::String m_engine;
577 bool m_engineHasBeenSet = false;
578 };
579
580} // namespace Model
581} // namespace ElastiCache
582} // namespace Aws
ReplicationGroup & AddMemberClusters(MemberClustersT &&value)
void SetAutomaticFailover(AutomaticFailoverStatus value)
const Aws::String & GetReplicationGroupId() const
void SetCacheNodeType(CacheNodeTypeT &&value)
ReplicationGroup & WithTransitEncryptionEnabled(bool value)
ReplicationGroup & WithDescription(DescriptionT &&value)
const Aws::Vector< LogDeliveryConfiguration > & GetLogDeliveryConfigurations() const
void SetPendingModifiedValues(PendingModifiedValuesT &&value)
void SetMemberClusters(MemberClustersT &&value)
void SetReplicationGroupId(ReplicationGroupIdT &&value)
ReplicationGroup & WithSnapshotWindow(SnapshotWindowT &&value)
AWS_ELASTICACHE_API ReplicationGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
ReplicationGroup & WithMultiAZ(MultiAZStatus value)
ReplicationGroup & WithAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT &&value)
const GlobalReplicationGroupInfo & GetGlobalReplicationGroupInfo() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ReplicationGroup & WithConfigurationEndpoint(ConfigurationEndpointT &&value)
ReplicationGroup & WithClusterMode(ClusterMode value)
ReplicationGroup & WithPendingModifiedValues(PendingModifiedValuesT &&value)
ReplicationGroup & WithReplicationGroupCreateTime(ReplicationGroupCreateTimeT &&value)
ReplicationGroup & WithClusterEnabled(bool value)
ReplicationGroup & WithAutoMinorVersionUpgrade(bool value)
AutomaticFailoverStatus GetAutomaticFailover() const
void SetAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT &&value)
const Aws::String & GetSnapshotWindow() const
const Aws::String & GetDescription() const
ReplicationGroup & AddNodeGroups(NodeGroupsT &&value)
ReplicationGroup & WithAutomaticFailover(AutomaticFailoverStatus value)
const Aws::Vector< Aws::String > & GetMemberClusters() const
void SetReplicationGroupCreateTime(ReplicationGroupCreateTimeT &&value)
ReplicationGroup & WithIpDiscovery(IpDiscovery value)
AWS_ELASTICACHE_API ReplicationGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ReplicationGroup & WithTransitEncryptionMode(TransitEncryptionMode value)
ReplicationGroup & WithSnapshotRetentionLimit(int value)
ReplicationGroup & WithNetworkType(NetworkType value)
const Aws::Vector< Aws::String > & GetUserGroupIds() const
const Aws::String & GetSnapshottingClusterId() const
ReplicationGroup & WithMemberClustersOutpostArns(MemberClustersOutpostArnsT &&value)
ReplicationGroup & WithMemberClusters(MemberClustersT &&value)
ReplicationGroup & WithDataTiering(DataTieringStatus value)
ReplicationGroup & WithSnapshottingClusterId(SnapshottingClusterIdT &&value)
void SetTransitEncryptionMode(TransitEncryptionMode value)
void SetGlobalReplicationGroupInfo(GlobalReplicationGroupInfoT &&value)
ReplicationGroup & WithEngine(EngineT &&value)
ReplicationGroup & WithStatus(StatusT &&value)
void SetDataTiering(DataTieringStatus value)
void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
ReplicationGroup & WithLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
const Aws::Utils::DateTime & GetAuthTokenLastModifiedDate() const
void SetMemberClustersOutpostArns(MemberClustersOutpostArnsT &&value)
ReplicationGroup & WithARN(ARNT &&value)
void SetConfigurationEndpoint(ConfigurationEndpointT &&value)
ReplicationGroup & AddUserGroupIds(UserGroupIdsT &&value)
ReplicationGroup & WithNodeGroups(NodeGroupsT &&value)
ReplicationGroup & WithKmsKeyId(KmsKeyIdT &&value)
void SetDescription(DescriptionT &&value)
ReplicationGroup & WithReplicationGroupId(ReplicationGroupIdT &&value)
const Aws::Vector< Aws::String > & GetMemberClustersOutpostArns() const
ReplicationGroup & AddMemberClustersOutpostArns(MemberClustersOutpostArnsT &&value)
const Aws::String & GetCacheNodeType() const
AWS_ELASTICACHE_API ReplicationGroup()=default
ReplicationGroup & WithCacheNodeType(CacheNodeTypeT &&value)
ReplicationGroup & AddLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
void SetUserGroupIds(UserGroupIdsT &&value)
const Endpoint & GetConfigurationEndpoint() const
const Aws::Vector< NodeGroup > & GetNodeGroups() const
void SetSnapshottingClusterId(SnapshottingClusterIdT &&value)
ReplicationGroup & WithAuthTokenEnabled(bool value)
const Aws::Utils::DateTime & GetReplicationGroupCreateTime() const
void SetSnapshotWindow(SnapshotWindowT &&value)
TransitEncryptionMode GetTransitEncryptionMode() const
const ReplicationGroupPendingModifiedValues & GetPendingModifiedValues() const
ReplicationGroup & WithAtRestEncryptionEnabled(bool value)
ReplicationGroup & WithUserGroupIds(UserGroupIdsT &&value)
ReplicationGroup & WithGlobalReplicationGroupInfo(GlobalReplicationGroupInfoT &&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