AWS SDK for C++

AWS SDK for C++ Version 1.11.827

Loading...
Searching...
No Matches
ReplicationGroup.h
1
6#pragma once
7#include <aws/core/utils/DateTime.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 <aws/elasticache/ElastiCache_EXPORTS.h>
12#include <aws/elasticache/model/AutomaticFailoverStatus.h>
13#include <aws/elasticache/model/ClusterMode.h>
14#include <aws/elasticache/model/DataTieringStatus.h>
15#include <aws/elasticache/model/Durability.h>
16#include <aws/elasticache/model/EffectiveDurability.h>
17#include <aws/elasticache/model/Endpoint.h>
18#include <aws/elasticache/model/GlobalReplicationGroupInfo.h>
19#include <aws/elasticache/model/IpDiscovery.h>
20#include <aws/elasticache/model/LogDeliveryConfiguration.h>
21#include <aws/elasticache/model/MultiAZStatus.h>
22#include <aws/elasticache/model/NetworkType.h>
23#include <aws/elasticache/model/NodeGroup.h>
24#include <aws/elasticache/model/ReplicationGroupPendingModifiedValues.h>
25#include <aws/elasticache/model/StorageEncryptionType.h>
26#include <aws/elasticache/model/TransitEncryptionMode.h>
27
28#include <utility>
29
30namespace Aws {
31namespace Utils {
32namespace Xml {
33class XmlNode;
34} // namespace Xml
35} // namespace Utils
36namespace ElastiCache {
37namespace Model {
38
46 public:
47 AWS_ELASTICACHE_API ReplicationGroup() = default;
48 AWS_ELASTICACHE_API ReplicationGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
49 AWS_ELASTICACHE_API ReplicationGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
50
51 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
52 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
53
55
58 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
59 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
60 template <typename ReplicationGroupIdT = Aws::String>
61 void SetReplicationGroupId(ReplicationGroupIdT&& value) {
62 m_replicationGroupIdHasBeenSet = true;
63 m_replicationGroupId = std::forward<ReplicationGroupIdT>(value);
64 }
65 template <typename ReplicationGroupIdT = Aws::String>
66 ReplicationGroup& WithReplicationGroupId(ReplicationGroupIdT&& value) {
67 SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::String& GetDescription() const { return m_description; }
77 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
78 template <typename DescriptionT = Aws::String>
79 void SetDescription(DescriptionT&& value) {
80 m_descriptionHasBeenSet = true;
81 m_description = std::forward<DescriptionT>(value);
82 }
83 template <typename DescriptionT = Aws::String>
84 ReplicationGroup& WithDescription(DescriptionT&& value) {
85 SetDescription(std::forward<DescriptionT>(value));
86 return *this;
87 }
89
91
95 inline const GlobalReplicationGroupInfo& GetGlobalReplicationGroupInfo() const { return m_globalReplicationGroupInfo; }
96 inline bool GlobalReplicationGroupInfoHasBeenSet() const { return m_globalReplicationGroupInfoHasBeenSet; }
97 template <typename GlobalReplicationGroupInfoT = GlobalReplicationGroupInfo>
98 void SetGlobalReplicationGroupInfo(GlobalReplicationGroupInfoT&& value) {
99 m_globalReplicationGroupInfoHasBeenSet = true;
100 m_globalReplicationGroupInfo = std::forward<GlobalReplicationGroupInfoT>(value);
101 }
102 template <typename GlobalReplicationGroupInfoT = GlobalReplicationGroupInfo>
103 ReplicationGroup& WithGlobalReplicationGroupInfo(GlobalReplicationGroupInfoT&& value) {
104 SetGlobalReplicationGroupInfo(std::forward<GlobalReplicationGroupInfoT>(value));
105 return *this;
106 }
108
110
115 inline const Aws::String& GetStatus() const { return m_status; }
116 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
117 template <typename StatusT = Aws::String>
118 void SetStatus(StatusT&& value) {
119 m_statusHasBeenSet = true;
120 m_status = std::forward<StatusT>(value);
121 }
122 template <typename StatusT = Aws::String>
123 ReplicationGroup& WithStatus(StatusT&& value) {
124 SetStatus(std::forward<StatusT>(value));
125 return *this;
126 }
128
130
134 inline const ReplicationGroupPendingModifiedValues& GetPendingModifiedValues() const { return m_pendingModifiedValues; }
135 inline bool PendingModifiedValuesHasBeenSet() const { return m_pendingModifiedValuesHasBeenSet; }
136 template <typename PendingModifiedValuesT = ReplicationGroupPendingModifiedValues>
137 void SetPendingModifiedValues(PendingModifiedValuesT&& value) {
138 m_pendingModifiedValuesHasBeenSet = true;
139 m_pendingModifiedValues = std::forward<PendingModifiedValuesT>(value);
140 }
141 template <typename PendingModifiedValuesT = ReplicationGroupPendingModifiedValues>
142 ReplicationGroup& WithPendingModifiedValues(PendingModifiedValuesT&& value) {
143 SetPendingModifiedValues(std::forward<PendingModifiedValuesT>(value));
144 return *this;
145 }
147
149
153 inline const Aws::Vector<Aws::String>& GetMemberClusters() const { return m_memberClusters; }
154 inline bool MemberClustersHasBeenSet() const { return m_memberClustersHasBeenSet; }
155 template <typename MemberClustersT = Aws::Vector<Aws::String>>
156 void SetMemberClusters(MemberClustersT&& value) {
157 m_memberClustersHasBeenSet = true;
158 m_memberClusters = std::forward<MemberClustersT>(value);
159 }
160 template <typename MemberClustersT = Aws::Vector<Aws::String>>
161 ReplicationGroup& WithMemberClusters(MemberClustersT&& value) {
162 SetMemberClusters(std::forward<MemberClustersT>(value));
163 return *this;
164 }
165 template <typename MemberClustersT = Aws::String>
166 ReplicationGroup& AddMemberClusters(MemberClustersT&& value) {
167 m_memberClustersHasBeenSet = true;
168 m_memberClusters.emplace_back(std::forward<MemberClustersT>(value));
169 return *this;
170 }
172
174
180 inline const Aws::Vector<NodeGroup>& GetNodeGroups() const { return m_nodeGroups; }
181 inline bool NodeGroupsHasBeenSet() const { return m_nodeGroupsHasBeenSet; }
182 template <typename NodeGroupsT = Aws::Vector<NodeGroup>>
183 void SetNodeGroups(NodeGroupsT&& value) {
184 m_nodeGroupsHasBeenSet = true;
185 m_nodeGroups = std::forward<NodeGroupsT>(value);
186 }
187 template <typename NodeGroupsT = Aws::Vector<NodeGroup>>
188 ReplicationGroup& WithNodeGroups(NodeGroupsT&& value) {
189 SetNodeGroups(std::forward<NodeGroupsT>(value));
190 return *this;
191 }
192 template <typename NodeGroupsT = NodeGroup>
193 ReplicationGroup& AddNodeGroups(NodeGroupsT&& value) {
194 m_nodeGroupsHasBeenSet = true;
195 m_nodeGroups.emplace_back(std::forward<NodeGroupsT>(value));
196 return *this;
197 }
199
201
205 inline const Aws::String& GetSnapshottingClusterId() const { return m_snapshottingClusterId; }
206 inline bool SnapshottingClusterIdHasBeenSet() const { return m_snapshottingClusterIdHasBeenSet; }
207 template <typename SnapshottingClusterIdT = Aws::String>
208 void SetSnapshottingClusterId(SnapshottingClusterIdT&& value) {
209 m_snapshottingClusterIdHasBeenSet = true;
210 m_snapshottingClusterId = std::forward<SnapshottingClusterIdT>(value);
211 }
212 template <typename SnapshottingClusterIdT = Aws::String>
213 ReplicationGroup& WithSnapshottingClusterId(SnapshottingClusterIdT&& value) {
214 SetSnapshottingClusterId(std::forward<SnapshottingClusterIdT>(value));
215 return *this;
216 }
218
220
224 inline AutomaticFailoverStatus GetAutomaticFailover() const { return m_automaticFailover; }
225 inline bool AutomaticFailoverHasBeenSet() const { return m_automaticFailoverHasBeenSet; }
227 m_automaticFailoverHasBeenSet = true;
228 m_automaticFailover = value;
229 }
232 return *this;
233 }
235
237
243 inline MultiAZStatus GetMultiAZ() const { return m_multiAZ; }
244 inline bool MultiAZHasBeenSet() const { return m_multiAZHasBeenSet; }
245 inline void SetMultiAZ(MultiAZStatus value) {
246 m_multiAZHasBeenSet = true;
247 m_multiAZ = value;
248 }
250 SetMultiAZ(value);
251 return *this;
252 }
254
256
260 inline const Endpoint& GetConfigurationEndpoint() const { return m_configurationEndpoint; }
261 inline bool ConfigurationEndpointHasBeenSet() const { return m_configurationEndpointHasBeenSet; }
262 template <typename ConfigurationEndpointT = Endpoint>
263 void SetConfigurationEndpoint(ConfigurationEndpointT&& value) {
264 m_configurationEndpointHasBeenSet = true;
265 m_configurationEndpoint = std::forward<ConfigurationEndpointT>(value);
266 }
267 template <typename ConfigurationEndpointT = Endpoint>
268 ReplicationGroup& WithConfigurationEndpoint(ConfigurationEndpointT&& value) {
269 SetConfigurationEndpoint(std::forward<ConfigurationEndpointT>(value));
270 return *this;
271 }
273
275
283 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
284 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
285 inline void SetSnapshotRetentionLimit(int value) {
286 m_snapshotRetentionLimitHasBeenSet = true;
287 m_snapshotRetentionLimit = value;
288 }
291 return *this;
292 }
294
296
303 inline const Aws::String& GetSnapshotWindow() const { return m_snapshotWindow; }
304 inline bool SnapshotWindowHasBeenSet() const { return m_snapshotWindowHasBeenSet; }
305 template <typename SnapshotWindowT = Aws::String>
306 void SetSnapshotWindow(SnapshotWindowT&& value) {
307 m_snapshotWindowHasBeenSet = true;
308 m_snapshotWindow = std::forward<SnapshotWindowT>(value);
309 }
310 template <typename SnapshotWindowT = Aws::String>
311 ReplicationGroup& WithSnapshotWindow(SnapshotWindowT&& value) {
312 SetSnapshotWindow(std::forward<SnapshotWindowT>(value));
313 return *this;
314 }
316
318
323 inline bool GetClusterEnabled() const { return m_clusterEnabled; }
324 inline bool ClusterEnabledHasBeenSet() const { return m_clusterEnabledHasBeenSet; }
325 inline void SetClusterEnabled(bool value) {
326 m_clusterEnabledHasBeenSet = true;
327 m_clusterEnabled = value;
328 }
330 SetClusterEnabled(value);
331 return *this;
332 }
334
336
340 inline const Aws::String& GetCacheNodeType() const { return m_cacheNodeType; }
341 inline bool CacheNodeTypeHasBeenSet() const { return m_cacheNodeTypeHasBeenSet; }
342 template <typename CacheNodeTypeT = Aws::String>
343 void SetCacheNodeType(CacheNodeTypeT&& value) {
344 m_cacheNodeTypeHasBeenSet = true;
345 m_cacheNodeType = std::forward<CacheNodeTypeT>(value);
346 }
347 template <typename CacheNodeTypeT = Aws::String>
348 ReplicationGroup& WithCacheNodeType(CacheNodeTypeT&& value) {
349 SetCacheNodeType(std::forward<CacheNodeTypeT>(value));
350 return *this;
351 }
353
355
359 inline bool GetAuthTokenEnabled() const { return m_authTokenEnabled; }
360 inline bool AuthTokenEnabledHasBeenSet() const { return m_authTokenEnabledHasBeenSet; }
361 inline void SetAuthTokenEnabled(bool value) {
362 m_authTokenEnabledHasBeenSet = true;
363 m_authTokenEnabled = value;
364 }
366 SetAuthTokenEnabled(value);
367 return *this;
368 }
370
372
375 inline const Aws::Utils::DateTime& GetAuthTokenLastModifiedDate() const { return m_authTokenLastModifiedDate; }
376 inline bool AuthTokenLastModifiedDateHasBeenSet() const { return m_authTokenLastModifiedDateHasBeenSet; }
377 template <typename AuthTokenLastModifiedDateT = Aws::Utils::DateTime>
378 void SetAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT&& value) {
379 m_authTokenLastModifiedDateHasBeenSet = true;
380 m_authTokenLastModifiedDate = std::forward<AuthTokenLastModifiedDateT>(value);
381 }
382 template <typename AuthTokenLastModifiedDateT = Aws::Utils::DateTime>
383 ReplicationGroup& WithAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT&& value) {
384 SetAuthTokenLastModifiedDate(std::forward<AuthTokenLastModifiedDateT>(value));
385 return *this;
386 }
388
390
396 inline bool GetTransitEncryptionEnabled() const { return m_transitEncryptionEnabled; }
397 inline bool TransitEncryptionEnabledHasBeenSet() const { return m_transitEncryptionEnabledHasBeenSet; }
398 inline void SetTransitEncryptionEnabled(bool value) {
399 m_transitEncryptionEnabledHasBeenSet = true;
400 m_transitEncryptionEnabled = value;
401 }
404 return *this;
405 }
407
409
418 inline bool GetAtRestEncryptionEnabled() const { return m_atRestEncryptionEnabled; }
419 inline bool AtRestEncryptionEnabledHasBeenSet() const { return m_atRestEncryptionEnabledHasBeenSet; }
420 inline void SetAtRestEncryptionEnabled(bool value) {
421 m_atRestEncryptionEnabledHasBeenSet = true;
422 m_atRestEncryptionEnabled = value;
423 }
426 return *this;
427 }
429
431
434 inline const Aws::Vector<Aws::String>& GetMemberClustersOutpostArns() const { return m_memberClustersOutpostArns; }
435 inline bool MemberClustersOutpostArnsHasBeenSet() const { return m_memberClustersOutpostArnsHasBeenSet; }
436 template <typename MemberClustersOutpostArnsT = Aws::Vector<Aws::String>>
437 void SetMemberClustersOutpostArns(MemberClustersOutpostArnsT&& value) {
438 m_memberClustersOutpostArnsHasBeenSet = true;
439 m_memberClustersOutpostArns = std::forward<MemberClustersOutpostArnsT>(value);
440 }
441 template <typename MemberClustersOutpostArnsT = Aws::Vector<Aws::String>>
442 ReplicationGroup& WithMemberClustersOutpostArns(MemberClustersOutpostArnsT&& value) {
443 SetMemberClustersOutpostArns(std::forward<MemberClustersOutpostArnsT>(value));
444 return *this;
445 }
446 template <typename MemberClustersOutpostArnsT = Aws::String>
447 ReplicationGroup& AddMemberClustersOutpostArns(MemberClustersOutpostArnsT&& value) {
448 m_memberClustersOutpostArnsHasBeenSet = true;
449 m_memberClustersOutpostArns.emplace_back(std::forward<MemberClustersOutpostArnsT>(value));
450 return *this;
451 }
453
455
458 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
459 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
460 template <typename KmsKeyIdT = Aws::String>
461 void SetKmsKeyId(KmsKeyIdT&& value) {
462 m_kmsKeyIdHasBeenSet = true;
463 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
464 }
465 template <typename KmsKeyIdT = Aws::String>
466 ReplicationGroup& WithKmsKeyId(KmsKeyIdT&& value) {
467 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
468 return *this;
469 }
471
473
479 inline StorageEncryptionType GetStorageEncryptionType() const { return m_storageEncryptionType; }
480 inline bool StorageEncryptionTypeHasBeenSet() const { return m_storageEncryptionTypeHasBeenSet; }
482 m_storageEncryptionTypeHasBeenSet = true;
483 m_storageEncryptionType = value;
484 }
487 return *this;
488 }
490
492
495 inline const Aws::String& GetARN() const { return m_aRN; }
496 inline bool ARNHasBeenSet() const { return m_aRNHasBeenSet; }
497 template <typename ARNT = Aws::String>
498 void SetARN(ARNT&& value) {
499 m_aRNHasBeenSet = true;
500 m_aRN = std::forward<ARNT>(value);
501 }
502 template <typename ARNT = Aws::String>
503 ReplicationGroup& WithARN(ARNT&& value) {
504 SetARN(std::forward<ARNT>(value));
505 return *this;
506 }
508
510
513 inline const Aws::Vector<Aws::String>& GetUserGroupIds() const { return m_userGroupIds; }
514 inline bool UserGroupIdsHasBeenSet() const { return m_userGroupIdsHasBeenSet; }
515 template <typename UserGroupIdsT = Aws::Vector<Aws::String>>
516 void SetUserGroupIds(UserGroupIdsT&& value) {
517 m_userGroupIdsHasBeenSet = true;
518 m_userGroupIds = std::forward<UserGroupIdsT>(value);
519 }
520 template <typename UserGroupIdsT = Aws::Vector<Aws::String>>
521 ReplicationGroup& WithUserGroupIds(UserGroupIdsT&& value) {
522 SetUserGroupIds(std::forward<UserGroupIdsT>(value));
523 return *this;
524 }
525 template <typename UserGroupIdsT = Aws::String>
526 ReplicationGroup& AddUserGroupIds(UserGroupIdsT&& value) {
527 m_userGroupIdsHasBeenSet = true;
528 m_userGroupIds.emplace_back(std::forward<UserGroupIdsT>(value));
529 return *this;
530 }
532
534
537 inline const Aws::Vector<LogDeliveryConfiguration>& GetLogDeliveryConfigurations() const { return m_logDeliveryConfigurations; }
538 inline bool LogDeliveryConfigurationsHasBeenSet() const { return m_logDeliveryConfigurationsHasBeenSet; }
539 template <typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfiguration>>
540 void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
541 m_logDeliveryConfigurationsHasBeenSet = true;
542 m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value);
543 }
544 template <typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfiguration>>
545 ReplicationGroup& WithLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
546 SetLogDeliveryConfigurations(std::forward<LogDeliveryConfigurationsT>(value));
547 return *this;
548 }
549 template <typename LogDeliveryConfigurationsT = LogDeliveryConfiguration>
550 ReplicationGroup& AddLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
551 m_logDeliveryConfigurationsHasBeenSet = true;
552 m_logDeliveryConfigurations.emplace_back(std::forward<LogDeliveryConfigurationsT>(value));
553 return *this;
554 }
556
558
561 inline const Aws::Utils::DateTime& GetReplicationGroupCreateTime() const { return m_replicationGroupCreateTime; }
562 inline bool ReplicationGroupCreateTimeHasBeenSet() const { return m_replicationGroupCreateTimeHasBeenSet; }
563 template <typename ReplicationGroupCreateTimeT = Aws::Utils::DateTime>
564 void SetReplicationGroupCreateTime(ReplicationGroupCreateTimeT&& value) {
565 m_replicationGroupCreateTimeHasBeenSet = true;
566 m_replicationGroupCreateTime = std::forward<ReplicationGroupCreateTimeT>(value);
567 }
568 template <typename ReplicationGroupCreateTimeT = Aws::Utils::DateTime>
569 ReplicationGroup& WithReplicationGroupCreateTime(ReplicationGroupCreateTimeT&& value) {
570 SetReplicationGroupCreateTime(std::forward<ReplicationGroupCreateTimeT>(value));
571 return *this;
572 }
574
576
583 inline DataTieringStatus GetDataTiering() const { return m_dataTiering; }
584 inline bool DataTieringHasBeenSet() const { return m_dataTieringHasBeenSet; }
586 m_dataTieringHasBeenSet = true;
587 m_dataTiering = value;
588 }
590 SetDataTiering(value);
591 return *this;
592 }
594
596
601 inline bool GetAutoMinorVersionUpgrade() const { return m_autoMinorVersionUpgrade; }
602 inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; }
603 inline void SetAutoMinorVersionUpgrade(bool value) {
604 m_autoMinorVersionUpgradeHasBeenSet = true;
605 m_autoMinorVersionUpgrade = value;
606 }
609 return *this;
610 }
612
614
621 inline NetworkType GetNetworkType() const { return m_networkType; }
622 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
623 inline void SetNetworkType(NetworkType value) {
624 m_networkTypeHasBeenSet = true;
625 m_networkType = value;
626 }
628 SetNetworkType(value);
629 return *this;
630 }
632
634
641 inline IpDiscovery GetIpDiscovery() const { return m_ipDiscovery; }
642 inline bool IpDiscoveryHasBeenSet() const { return m_ipDiscoveryHasBeenSet; }
643 inline void SetIpDiscovery(IpDiscovery value) {
644 m_ipDiscoveryHasBeenSet = true;
645 m_ipDiscovery = value;
646 }
648 SetIpDiscovery(value);
649 return *this;
650 }
652
654
658 inline TransitEncryptionMode GetTransitEncryptionMode() const { return m_transitEncryptionMode; }
659 inline bool TransitEncryptionModeHasBeenSet() const { return m_transitEncryptionModeHasBeenSet; }
661 m_transitEncryptionModeHasBeenSet = true;
662 m_transitEncryptionMode = value;
663 }
666 return *this;
667 }
669
671
679 inline ClusterMode GetClusterMode() const { return m_clusterMode; }
680 inline bool ClusterModeHasBeenSet() const { return m_clusterModeHasBeenSet; }
681 inline void SetClusterMode(ClusterMode value) {
682 m_clusterModeHasBeenSet = true;
683 m_clusterMode = value;
684 }
686 SetClusterMode(value);
687 return *this;
688 }
690
692
696 inline const Aws::String& GetEngine() const { return m_engine; }
697 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
698 template <typename EngineT = Aws::String>
699 void SetEngine(EngineT&& value) {
700 m_engineHasBeenSet = true;
701 m_engine = std::forward<EngineT>(value);
702 }
703 template <typename EngineT = Aws::String>
704 ReplicationGroup& WithEngine(EngineT&& value) {
705 SetEngine(std::forward<EngineT>(value));
706 return *this;
707 }
709
711
715 inline Durability GetDurability() const { return m_durability; }
716 inline bool DurabilityHasBeenSet() const { return m_durabilityHasBeenSet; }
717 inline void SetDurability(Durability value) {
718 m_durabilityHasBeenSet = true;
719 m_durability = value;
720 }
722 SetDurability(value);
723 return *this;
724 }
726
728
736 inline EffectiveDurability GetEffectiveDurability() const { return m_effectiveDurability; }
737 inline bool EffectiveDurabilityHasBeenSet() const { return m_effectiveDurabilityHasBeenSet; }
739 m_effectiveDurabilityHasBeenSet = true;
740 m_effectiveDurability = value;
741 }
744 return *this;
745 }
747 private:
748 Aws::String m_replicationGroupId;
749
750 Aws::String m_description;
751
752 GlobalReplicationGroupInfo m_globalReplicationGroupInfo;
753
754 Aws::String m_status;
755
756 ReplicationGroupPendingModifiedValues m_pendingModifiedValues;
757
758 Aws::Vector<Aws::String> m_memberClusters;
759
760 Aws::Vector<NodeGroup> m_nodeGroups;
761
762 Aws::String m_snapshottingClusterId;
763
765
767
768 Endpoint m_configurationEndpoint;
769
770 int m_snapshotRetentionLimit{0};
771
772 Aws::String m_snapshotWindow;
773
774 bool m_clusterEnabled{false};
775
776 Aws::String m_cacheNodeType;
777
778 bool m_authTokenEnabled{false};
779
780 Aws::Utils::DateTime m_authTokenLastModifiedDate{};
781
782 bool m_transitEncryptionEnabled{false};
783
784 bool m_atRestEncryptionEnabled{false};
785
786 Aws::Vector<Aws::String> m_memberClustersOutpostArns;
787
788 Aws::String m_kmsKeyId;
789
791
792 Aws::String m_aRN;
793
794 Aws::Vector<Aws::String> m_userGroupIds;
795
796 Aws::Vector<LogDeliveryConfiguration> m_logDeliveryConfigurations;
797
798 Aws::Utils::DateTime m_replicationGroupCreateTime{};
799
801
802 bool m_autoMinorVersionUpgrade{false};
803
804 NetworkType m_networkType{NetworkType::NOT_SET};
805
806 IpDiscovery m_ipDiscovery{IpDiscovery::NOT_SET};
807
809
810 ClusterMode m_clusterMode{ClusterMode::NOT_SET};
811
812 Aws::String m_engine;
813
814 Durability m_durability{Durability::NOT_SET};
815
817 bool m_replicationGroupIdHasBeenSet = false;
818 bool m_descriptionHasBeenSet = false;
819 bool m_globalReplicationGroupInfoHasBeenSet = false;
820 bool m_statusHasBeenSet = false;
821 bool m_pendingModifiedValuesHasBeenSet = false;
822 bool m_memberClustersHasBeenSet = false;
823 bool m_nodeGroupsHasBeenSet = false;
824 bool m_snapshottingClusterIdHasBeenSet = false;
825 bool m_automaticFailoverHasBeenSet = false;
826 bool m_multiAZHasBeenSet = false;
827 bool m_configurationEndpointHasBeenSet = false;
828 bool m_snapshotRetentionLimitHasBeenSet = false;
829 bool m_snapshotWindowHasBeenSet = false;
830 bool m_clusterEnabledHasBeenSet = false;
831 bool m_cacheNodeTypeHasBeenSet = false;
832 bool m_authTokenEnabledHasBeenSet = false;
833 bool m_authTokenLastModifiedDateHasBeenSet = false;
834 bool m_transitEncryptionEnabledHasBeenSet = false;
835 bool m_atRestEncryptionEnabledHasBeenSet = false;
836 bool m_memberClustersOutpostArnsHasBeenSet = false;
837 bool m_kmsKeyIdHasBeenSet = false;
838 bool m_storageEncryptionTypeHasBeenSet = false;
839 bool m_aRNHasBeenSet = false;
840 bool m_userGroupIdsHasBeenSet = false;
841 bool m_logDeliveryConfigurationsHasBeenSet = false;
842 bool m_replicationGroupCreateTimeHasBeenSet = false;
843 bool m_dataTieringHasBeenSet = false;
844 bool m_autoMinorVersionUpgradeHasBeenSet = false;
845 bool m_networkTypeHasBeenSet = false;
846 bool m_ipDiscoveryHasBeenSet = false;
847 bool m_transitEncryptionModeHasBeenSet = false;
848 bool m_clusterModeHasBeenSet = false;
849 bool m_engineHasBeenSet = false;
850 bool m_durabilityHasBeenSet = false;
851 bool m_effectiveDurabilityHasBeenSet = false;
852};
853
854} // namespace Model
855} // namespace ElastiCache
856} // 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)
void SetStorageEncryptionType(StorageEncryptionType value)
AWS_ELASTICACHE_API ReplicationGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
ReplicationGroup & WithStorageEncryptionType(StorageEncryptionType value)
ReplicationGroup & WithMultiAZ(MultiAZStatus value)
ReplicationGroup & WithAuthTokenLastModifiedDate(AuthTokenLastModifiedDateT &&value)
const GlobalReplicationGroupInfo & GetGlobalReplicationGroupInfo() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
StorageEncryptionType GetStorageEncryptionType() 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)
void SetEffectiveDurability(EffectiveDurability 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)
EffectiveDurability GetEffectiveDurability() const
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
ReplicationGroup & WithDurability(Durability value)
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 & WithEffectiveDurability(EffectiveDurability 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