AWS SDK for C++

AWS SDK for C++ Version 1.11.825

Loading...
Searching...
No Matches
CreateReplicationGroupRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/elasticache/ElastiCacheRequest.h>
10#include <aws/elasticache/ElastiCache_EXPORTS.h>
11#include <aws/elasticache/model/ClusterMode.h>
12#include <aws/elasticache/model/Durability.h>
13#include <aws/elasticache/model/IpDiscovery.h>
14#include <aws/elasticache/model/LogDeliveryConfigurationRequest.h>
15#include <aws/elasticache/model/NetworkType.h>
16#include <aws/elasticache/model/NodeGroupConfiguration.h>
17#include <aws/elasticache/model/Tag.h>
18#include <aws/elasticache/model/TransitEncryptionMode.h>
19
20#include <utility>
21
22namespace Aws {
23namespace ElastiCache {
24namespace Model {
25
33 public:
34 AWS_ELASTICACHE_API CreateReplicationGroupRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "CreateReplicationGroup"; }
41
42 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
43
44 protected:
45 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
46
47 public:
49
56 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
57 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
58 template <typename ReplicationGroupIdT = Aws::String>
59 void SetReplicationGroupId(ReplicationGroupIdT&& value) {
60 m_replicationGroupIdHasBeenSet = true;
61 m_replicationGroupId = std::forward<ReplicationGroupIdT>(value);
62 }
63 template <typename ReplicationGroupIdT = Aws::String>
65 SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value));
66 return *this;
67 }
69
71
74 inline const Aws::String& GetReplicationGroupDescription() const { return m_replicationGroupDescription; }
75 inline bool ReplicationGroupDescriptionHasBeenSet() const { return m_replicationGroupDescriptionHasBeenSet; }
76 template <typename ReplicationGroupDescriptionT = Aws::String>
77 void SetReplicationGroupDescription(ReplicationGroupDescriptionT&& value) {
78 m_replicationGroupDescriptionHasBeenSet = true;
79 m_replicationGroupDescription = std::forward<ReplicationGroupDescriptionT>(value);
80 }
81 template <typename ReplicationGroupDescriptionT = Aws::String>
82 CreateReplicationGroupRequest& WithReplicationGroupDescription(ReplicationGroupDescriptionT&& value) {
83 SetReplicationGroupDescription(std::forward<ReplicationGroupDescriptionT>(value));
84 return *this;
85 }
87
89
92 inline const Aws::String& GetGlobalReplicationGroupId() const { return m_globalReplicationGroupId; }
93 inline bool GlobalReplicationGroupIdHasBeenSet() const { return m_globalReplicationGroupIdHasBeenSet; }
94 template <typename GlobalReplicationGroupIdT = Aws::String>
95 void SetGlobalReplicationGroupId(GlobalReplicationGroupIdT&& value) {
96 m_globalReplicationGroupIdHasBeenSet = true;
97 m_globalReplicationGroupId = std::forward<GlobalReplicationGroupIdT>(value);
98 }
99 template <typename GlobalReplicationGroupIdT = Aws::String>
101 SetGlobalReplicationGroupId(std::forward<GlobalReplicationGroupIdT>(value));
102 return *this;
103 }
105
107
114 inline const Aws::String& GetPrimaryClusterId() const { return m_primaryClusterId; }
115 inline bool PrimaryClusterIdHasBeenSet() const { return m_primaryClusterIdHasBeenSet; }
116 template <typename PrimaryClusterIdT = Aws::String>
117 void SetPrimaryClusterId(PrimaryClusterIdT&& value) {
118 m_primaryClusterIdHasBeenSet = true;
119 m_primaryClusterId = std::forward<PrimaryClusterIdT>(value);
120 }
121 template <typename PrimaryClusterIdT = Aws::String>
123 SetPrimaryClusterId(std::forward<PrimaryClusterIdT>(value));
124 return *this;
125 }
127
129
135 inline bool GetAutomaticFailoverEnabled() const { return m_automaticFailoverEnabled; }
136 inline bool AutomaticFailoverEnabledHasBeenSet() const { return m_automaticFailoverEnabledHasBeenSet; }
137 inline void SetAutomaticFailoverEnabled(bool value) {
138 m_automaticFailoverEnabledHasBeenSet = true;
139 m_automaticFailoverEnabled = value;
140 }
143 return *this;
144 }
146
148
154 inline bool GetMultiAZEnabled() const { return m_multiAZEnabled; }
155 inline bool MultiAZEnabledHasBeenSet() const { return m_multiAZEnabledHasBeenSet; }
156 inline void SetMultiAZEnabled(bool value) {
157 m_multiAZEnabledHasBeenSet = true;
158 m_multiAZEnabled = value;
159 }
161 SetMultiAZEnabled(value);
162 return *this;
163 }
165
167
177 inline int GetNumCacheClusters() const { return m_numCacheClusters; }
178 inline bool NumCacheClustersHasBeenSet() const { return m_numCacheClustersHasBeenSet; }
179 inline void SetNumCacheClusters(int value) {
180 m_numCacheClustersHasBeenSet = true;
181 m_numCacheClusters = value;
182 }
184 SetNumCacheClusters(value);
185 return *this;
186 }
188
190
202 inline const Aws::Vector<Aws::String>& GetPreferredCacheClusterAZs() const { return m_preferredCacheClusterAZs; }
203 inline bool PreferredCacheClusterAZsHasBeenSet() const { return m_preferredCacheClusterAZsHasBeenSet; }
204 template <typename PreferredCacheClusterAZsT = Aws::Vector<Aws::String>>
205 void SetPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) {
206 m_preferredCacheClusterAZsHasBeenSet = true;
207 m_preferredCacheClusterAZs = std::forward<PreferredCacheClusterAZsT>(value);
208 }
209 template <typename PreferredCacheClusterAZsT = Aws::Vector<Aws::String>>
211 SetPreferredCacheClusterAZs(std::forward<PreferredCacheClusterAZsT>(value));
212 return *this;
213 }
214 template <typename PreferredCacheClusterAZsT = Aws::String>
215 CreateReplicationGroupRequest& AddPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) {
216 m_preferredCacheClusterAZsHasBeenSet = true;
217 m_preferredCacheClusterAZs.emplace_back(std::forward<PreferredCacheClusterAZsT>(value));
218 return *this;
219 }
221
223
229 inline int GetNumNodeGroups() const { return m_numNodeGroups; }
230 inline bool NumNodeGroupsHasBeenSet() const { return m_numNodeGroupsHasBeenSet; }
231 inline void SetNumNodeGroups(int value) {
232 m_numNodeGroupsHasBeenSet = true;
233 m_numNodeGroups = value;
234 }
236 SetNumNodeGroups(value);
237 return *this;
238 }
240
242
246 inline int GetReplicasPerNodeGroup() const { return m_replicasPerNodeGroup; }
247 inline bool ReplicasPerNodeGroupHasBeenSet() const { return m_replicasPerNodeGroupHasBeenSet; }
248 inline void SetReplicasPerNodeGroup(int value) {
249 m_replicasPerNodeGroupHasBeenSet = true;
250 m_replicasPerNodeGroup = value;
251 }
254 return *this;
255 }
257
259
271 inline const Aws::Vector<NodeGroupConfiguration>& GetNodeGroupConfiguration() const { return m_nodeGroupConfiguration; }
272 inline bool NodeGroupConfigurationHasBeenSet() const { return m_nodeGroupConfigurationHasBeenSet; }
273 template <typename NodeGroupConfigurationT = Aws::Vector<NodeGroupConfiguration>>
274 void SetNodeGroupConfiguration(NodeGroupConfigurationT&& value) {
275 m_nodeGroupConfigurationHasBeenSet = true;
276 m_nodeGroupConfiguration = std::forward<NodeGroupConfigurationT>(value);
277 }
278 template <typename NodeGroupConfigurationT = Aws::Vector<NodeGroupConfiguration>>
280 SetNodeGroupConfiguration(std::forward<NodeGroupConfigurationT>(value));
281 return *this;
282 }
283 template <typename NodeGroupConfigurationT = NodeGroupConfiguration>
285 m_nodeGroupConfigurationHasBeenSet = true;
286 m_nodeGroupConfiguration.emplace_back(std::forward<NodeGroupConfigurationT>(value));
287 return *this;
288 }
290
292
367 inline const Aws::String& GetCacheNodeType() const { return m_cacheNodeType; }
368 inline bool CacheNodeTypeHasBeenSet() const { return m_cacheNodeTypeHasBeenSet; }
369 template <typename CacheNodeTypeT = Aws::String>
370 void SetCacheNodeType(CacheNodeTypeT&& value) {
371 m_cacheNodeTypeHasBeenSet = true;
372 m_cacheNodeType = std::forward<CacheNodeTypeT>(value);
373 }
374 template <typename CacheNodeTypeT = Aws::String>
376 SetCacheNodeType(std::forward<CacheNodeTypeT>(value));
377 return *this;
378 }
380
382
386 inline const Aws::String& GetEngine() const { return m_engine; }
387 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
388 template <typename EngineT = Aws::String>
389 void SetEngine(EngineT&& value) {
390 m_engineHasBeenSet = true;
391 m_engine = std::forward<EngineT>(value);
392 }
393 template <typename EngineT = Aws::String>
395 SetEngine(std::forward<EngineT>(value));
396 return *this;
397 }
399
401
412 inline const Aws::String& GetEngineVersion() const { return m_engineVersion; }
413 inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; }
414 template <typename EngineVersionT = Aws::String>
415 void SetEngineVersion(EngineVersionT&& value) {
416 m_engineVersionHasBeenSet = true;
417 m_engineVersion = std::forward<EngineVersionT>(value);
418 }
419 template <typename EngineVersionT = Aws::String>
421 SetEngineVersion(std::forward<EngineVersionT>(value));
422 return *this;
423 }
425
427
439 inline const Aws::String& GetCacheParameterGroupName() const { return m_cacheParameterGroupName; }
440 inline bool CacheParameterGroupNameHasBeenSet() const { return m_cacheParameterGroupNameHasBeenSet; }
441 template <typename CacheParameterGroupNameT = Aws::String>
442 void SetCacheParameterGroupName(CacheParameterGroupNameT&& value) {
443 m_cacheParameterGroupNameHasBeenSet = true;
444 m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value);
445 }
446 template <typename CacheParameterGroupNameT = Aws::String>
448 SetCacheParameterGroupName(std::forward<CacheParameterGroupNameT>(value));
449 return *this;
450 }
452
454
462 inline const Aws::String& GetCacheSubnetGroupName() const { return m_cacheSubnetGroupName; }
463 inline bool CacheSubnetGroupNameHasBeenSet() const { return m_cacheSubnetGroupNameHasBeenSet; }
464 template <typename CacheSubnetGroupNameT = Aws::String>
465 void SetCacheSubnetGroupName(CacheSubnetGroupNameT&& value) {
466 m_cacheSubnetGroupNameHasBeenSet = true;
467 m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value);
468 }
469 template <typename CacheSubnetGroupNameT = Aws::String>
471 SetCacheSubnetGroupName(std::forward<CacheSubnetGroupNameT>(value));
472 return *this;
473 }
475
477
481 inline const Aws::Vector<Aws::String>& GetCacheSecurityGroupNames() const { return m_cacheSecurityGroupNames; }
482 inline bool CacheSecurityGroupNamesHasBeenSet() const { return m_cacheSecurityGroupNamesHasBeenSet; }
483 template <typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
484 void SetCacheSecurityGroupNames(CacheSecurityGroupNamesT&& value) {
485 m_cacheSecurityGroupNamesHasBeenSet = true;
486 m_cacheSecurityGroupNames = std::forward<CacheSecurityGroupNamesT>(value);
487 }
488 template <typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
490 SetCacheSecurityGroupNames(std::forward<CacheSecurityGroupNamesT>(value));
491 return *this;
492 }
493 template <typename CacheSecurityGroupNamesT = Aws::String>
495 m_cacheSecurityGroupNamesHasBeenSet = true;
496 m_cacheSecurityGroupNames.emplace_back(std::forward<CacheSecurityGroupNamesT>(value));
497 return *this;
498 }
500
502
507 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
508 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
509 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
510 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
511 m_securityGroupIdsHasBeenSet = true;
512 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
513 }
514 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
516 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
517 return *this;
518 }
519 template <typename SecurityGroupIdsT = Aws::String>
521 m_securityGroupIdsHasBeenSet = true;
522 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
523 return *this;
524 }
526
528
536 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
537 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
538 template <typename TagsT = Aws::Vector<Tag>>
539 void SetTags(TagsT&& value) {
540 m_tagsHasBeenSet = true;
541 m_tags = std::forward<TagsT>(value);
542 }
543 template <typename TagsT = Aws::Vector<Tag>>
545 SetTags(std::forward<TagsT>(value));
546 return *this;
547 }
548 template <typename TagsT = Tag>
550 m_tagsHasBeenSet = true;
551 m_tags.emplace_back(std::forward<TagsT>(value));
552 return *this;
553 }
555
557
567 inline const Aws::Vector<Aws::String>& GetSnapshotArns() const { return m_snapshotArns; }
568 inline bool SnapshotArnsHasBeenSet() const { return m_snapshotArnsHasBeenSet; }
569 template <typename SnapshotArnsT = Aws::Vector<Aws::String>>
570 void SetSnapshotArns(SnapshotArnsT&& value) {
571 m_snapshotArnsHasBeenSet = true;
572 m_snapshotArns = std::forward<SnapshotArnsT>(value);
573 }
574 template <typename SnapshotArnsT = Aws::Vector<Aws::String>>
576 SetSnapshotArns(std::forward<SnapshotArnsT>(value));
577 return *this;
578 }
579 template <typename SnapshotArnsT = Aws::String>
581 m_snapshotArnsHasBeenSet = true;
582 m_snapshotArns.emplace_back(std::forward<SnapshotArnsT>(value));
583 return *this;
584 }
586
588
593 inline const Aws::String& GetSnapshotName() const { return m_snapshotName; }
594 inline bool SnapshotNameHasBeenSet() const { return m_snapshotNameHasBeenSet; }
595 template <typename SnapshotNameT = Aws::String>
596 void SetSnapshotName(SnapshotNameT&& value) {
597 m_snapshotNameHasBeenSet = true;
598 m_snapshotName = std::forward<SnapshotNameT>(value);
599 }
600 template <typename SnapshotNameT = Aws::String>
602 SetSnapshotName(std::forward<SnapshotNameT>(value));
603 return *this;
604 }
606
608
618 inline const Aws::String& GetPreferredMaintenanceWindow() const { return m_preferredMaintenanceWindow; }
619 inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; }
620 template <typename PreferredMaintenanceWindowT = Aws::String>
621 void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) {
622 m_preferredMaintenanceWindowHasBeenSet = true;
623 m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value);
624 }
625 template <typename PreferredMaintenanceWindowT = Aws::String>
626 CreateReplicationGroupRequest& WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) {
627 SetPreferredMaintenanceWindow(std::forward<PreferredMaintenanceWindowT>(value));
628 return *this;
629 }
631
633
637 inline int GetPort() const { return m_port; }
638 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
639 inline void SetPort(int value) {
640 m_portHasBeenSet = true;
641 m_port = value;
642 }
644 SetPort(value);
645 return *this;
646 }
648
650
655 inline const Aws::String& GetNotificationTopicArn() const { return m_notificationTopicArn; }
656 inline bool NotificationTopicArnHasBeenSet() const { return m_notificationTopicArnHasBeenSet; }
657 template <typename NotificationTopicArnT = Aws::String>
658 void SetNotificationTopicArn(NotificationTopicArnT&& value) {
659 m_notificationTopicArnHasBeenSet = true;
660 m_notificationTopicArn = std::forward<NotificationTopicArnT>(value);
661 }
662 template <typename NotificationTopicArnT = Aws::String>
664 SetNotificationTopicArn(std::forward<NotificationTopicArnT>(value));
665 return *this;
666 }
668
670
675 inline bool GetAutoMinorVersionUpgrade() const { return m_autoMinorVersionUpgrade; }
676 inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; }
677 inline void SetAutoMinorVersionUpgrade(bool value) {
678 m_autoMinorVersionUpgradeHasBeenSet = true;
679 m_autoMinorVersionUpgrade = value;
680 }
683 return *this;
684 }
686
688
694 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
695 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
696 inline void SetSnapshotRetentionLimit(int value) {
697 m_snapshotRetentionLimitHasBeenSet = true;
698 m_snapshotRetentionLimit = value;
699 }
702 return *this;
703 }
705
707
713 inline const Aws::String& GetSnapshotWindow() const { return m_snapshotWindow; }
714 inline bool SnapshotWindowHasBeenSet() const { return m_snapshotWindowHasBeenSet; }
715 template <typename SnapshotWindowT = Aws::String>
716 void SetSnapshotWindow(SnapshotWindowT&& value) {
717 m_snapshotWindowHasBeenSet = true;
718 m_snapshotWindow = std::forward<SnapshotWindowT>(value);
719 }
720 template <typename SnapshotWindowT = Aws::String>
722 SetSnapshotWindow(std::forward<SnapshotWindowT>(value));
723 return *this;
724 }
726
728
743 inline const Aws::String& GetAuthToken() const { return m_authToken; }
744 inline bool AuthTokenHasBeenSet() const { return m_authTokenHasBeenSet; }
745 template <typename AuthTokenT = Aws::String>
746 void SetAuthToken(AuthTokenT&& value) {
747 m_authTokenHasBeenSet = true;
748 m_authToken = std::forward<AuthTokenT>(value);
749 }
750 template <typename AuthTokenT = Aws::String>
752 SetAuthToken(std::forward<AuthTokenT>(value));
753 return *this;
754 }
756
758
771 inline bool GetTransitEncryptionEnabled() const { return m_transitEncryptionEnabled; }
772 inline bool TransitEncryptionEnabledHasBeenSet() const { return m_transitEncryptionEnabledHasBeenSet; }
773 inline void SetTransitEncryptionEnabled(bool value) {
774 m_transitEncryptionEnabledHasBeenSet = true;
775 m_transitEncryptionEnabled = value;
776 }
779 return *this;
780 }
782
784
793 inline bool GetAtRestEncryptionEnabled() const { return m_atRestEncryptionEnabled; }
794 inline bool AtRestEncryptionEnabledHasBeenSet() const { return m_atRestEncryptionEnabledHasBeenSet; }
795 inline void SetAtRestEncryptionEnabled(bool value) {
796 m_atRestEncryptionEnabledHasBeenSet = true;
797 m_atRestEncryptionEnabled = value;
798 }
801 return *this;
802 }
804
806
809 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
810 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
811 template <typename KmsKeyIdT = Aws::String>
812 void SetKmsKeyId(KmsKeyIdT&& value) {
813 m_kmsKeyIdHasBeenSet = true;
814 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
815 }
816 template <typename KmsKeyIdT = Aws::String>
818 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
819 return *this;
820 }
822
824
827 inline const Aws::Vector<Aws::String>& GetUserGroupIds() const { return m_userGroupIds; }
828 inline bool UserGroupIdsHasBeenSet() const { return m_userGroupIdsHasBeenSet; }
829 template <typename UserGroupIdsT = Aws::Vector<Aws::String>>
830 void SetUserGroupIds(UserGroupIdsT&& value) {
831 m_userGroupIdsHasBeenSet = true;
832 m_userGroupIds = std::forward<UserGroupIdsT>(value);
833 }
834 template <typename UserGroupIdsT = Aws::Vector<Aws::String>>
836 SetUserGroupIds(std::forward<UserGroupIdsT>(value));
837 return *this;
838 }
839 template <typename UserGroupIdsT = Aws::String>
841 m_userGroupIdsHasBeenSet = true;
842 m_userGroupIds.emplace_back(std::forward<UserGroupIdsT>(value));
843 return *this;
844 }
846
848
851 inline const Aws::Vector<LogDeliveryConfigurationRequest>& GetLogDeliveryConfigurations() const { return m_logDeliveryConfigurations; }
852 inline bool LogDeliveryConfigurationsHasBeenSet() const { return m_logDeliveryConfigurationsHasBeenSet; }
853 template <typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
854 void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
855 m_logDeliveryConfigurationsHasBeenSet = true;
856 m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value);
857 }
858 template <typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
860 SetLogDeliveryConfigurations(std::forward<LogDeliveryConfigurationsT>(value));
861 return *this;
862 }
863 template <typename LogDeliveryConfigurationsT = LogDeliveryConfigurationRequest>
864 CreateReplicationGroupRequest& AddLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
865 m_logDeliveryConfigurationsHasBeenSet = true;
866 m_logDeliveryConfigurations.emplace_back(std::forward<LogDeliveryConfigurationsT>(value));
867 return *this;
868 }
870
872
879 inline bool GetDataTieringEnabled() const { return m_dataTieringEnabled; }
880 inline bool DataTieringEnabledHasBeenSet() const { return m_dataTieringEnabledHasBeenSet; }
881 inline void SetDataTieringEnabled(bool value) {
882 m_dataTieringEnabledHasBeenSet = true;
883 m_dataTieringEnabled = value;
884 }
887 return *this;
888 }
890
892
899 inline NetworkType GetNetworkType() const { return m_networkType; }
900 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
901 inline void SetNetworkType(NetworkType value) {
902 m_networkTypeHasBeenSet = true;
903 m_networkType = value;
904 }
906 SetNetworkType(value);
907 return *this;
908 }
910
912
919 inline IpDiscovery GetIpDiscovery() const { return m_ipDiscovery; }
920 inline bool IpDiscoveryHasBeenSet() const { return m_ipDiscoveryHasBeenSet; }
921 inline void SetIpDiscovery(IpDiscovery value) {
922 m_ipDiscoveryHasBeenSet = true;
923 m_ipDiscovery = value;
924 }
926 SetIpDiscovery(value);
927 return *this;
928 }
930
932
946 inline TransitEncryptionMode GetTransitEncryptionMode() const { return m_transitEncryptionMode; }
947 inline bool TransitEncryptionModeHasBeenSet() const { return m_transitEncryptionModeHasBeenSet; }
949 m_transitEncryptionModeHasBeenSet = true;
950 m_transitEncryptionMode = value;
951 }
954 return *this;
955 }
957
959
967 inline ClusterMode GetClusterMode() const { return m_clusterMode; }
968 inline bool ClusterModeHasBeenSet() const { return m_clusterModeHasBeenSet; }
969 inline void SetClusterMode(ClusterMode value) {
970 m_clusterModeHasBeenSet = true;
971 m_clusterMode = value;
972 }
974 SetClusterMode(value);
975 return *this;
976 }
978
980
984 inline const Aws::String& GetServerlessCacheSnapshotName() const { return m_serverlessCacheSnapshotName; }
985 inline bool ServerlessCacheSnapshotNameHasBeenSet() const { return m_serverlessCacheSnapshotNameHasBeenSet; }
986 template <typename ServerlessCacheSnapshotNameT = Aws::String>
987 void SetServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT&& value) {
988 m_serverlessCacheSnapshotNameHasBeenSet = true;
989 m_serverlessCacheSnapshotName = std::forward<ServerlessCacheSnapshotNameT>(value);
990 }
991 template <typename ServerlessCacheSnapshotNameT = Aws::String>
992 CreateReplicationGroupRequest& WithServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT&& value) {
993 SetServerlessCacheSnapshotName(std::forward<ServerlessCacheSnapshotNameT>(value));
994 return *this;
995 }
997
999
1007 inline Durability GetDurability() const { return m_durability; }
1008 inline bool DurabilityHasBeenSet() const { return m_durabilityHasBeenSet; }
1009 inline void SetDurability(Durability value) {
1010 m_durabilityHasBeenSet = true;
1011 m_durability = value;
1012 }
1014 SetDurability(value);
1015 return *this;
1016 }
1018 private:
1019 Aws::String m_replicationGroupId;
1020
1021 Aws::String m_replicationGroupDescription;
1022
1023 Aws::String m_globalReplicationGroupId;
1024
1025 Aws::String m_primaryClusterId;
1026
1027 bool m_automaticFailoverEnabled{false};
1028
1029 bool m_multiAZEnabled{false};
1030
1031 int m_numCacheClusters{0};
1032
1033 Aws::Vector<Aws::String> m_preferredCacheClusterAZs;
1034
1035 int m_numNodeGroups{0};
1036
1037 int m_replicasPerNodeGroup{0};
1038
1039 Aws::Vector<NodeGroupConfiguration> m_nodeGroupConfiguration;
1040
1041 Aws::String m_cacheNodeType;
1042
1043 Aws::String m_engine;
1044
1045 Aws::String m_engineVersion;
1046
1047 Aws::String m_cacheParameterGroupName;
1048
1049 Aws::String m_cacheSubnetGroupName;
1050
1051 Aws::Vector<Aws::String> m_cacheSecurityGroupNames;
1052
1053 Aws::Vector<Aws::String> m_securityGroupIds;
1054
1055 Aws::Vector<Tag> m_tags;
1056
1057 Aws::Vector<Aws::String> m_snapshotArns;
1058
1059 Aws::String m_snapshotName;
1060
1061 Aws::String m_preferredMaintenanceWindow;
1062
1063 int m_port{0};
1064
1065 Aws::String m_notificationTopicArn;
1066
1067 bool m_autoMinorVersionUpgrade{false};
1068
1069 int m_snapshotRetentionLimit{0};
1070
1071 Aws::String m_snapshotWindow;
1072
1073 Aws::String m_authToken;
1074
1075 bool m_transitEncryptionEnabled{false};
1076
1077 bool m_atRestEncryptionEnabled{false};
1078
1079 Aws::String m_kmsKeyId;
1080
1081 Aws::Vector<Aws::String> m_userGroupIds;
1082
1083 Aws::Vector<LogDeliveryConfigurationRequest> m_logDeliveryConfigurations;
1084
1085 bool m_dataTieringEnabled{false};
1086
1087 NetworkType m_networkType{NetworkType::NOT_SET};
1088
1089 IpDiscovery m_ipDiscovery{IpDiscovery::NOT_SET};
1090
1092
1093 ClusterMode m_clusterMode{ClusterMode::NOT_SET};
1094
1095 Aws::String m_serverlessCacheSnapshotName;
1096
1097 Durability m_durability{Durability::NOT_SET};
1098 bool m_replicationGroupIdHasBeenSet = false;
1099 bool m_replicationGroupDescriptionHasBeenSet = false;
1100 bool m_globalReplicationGroupIdHasBeenSet = false;
1101 bool m_primaryClusterIdHasBeenSet = false;
1102 bool m_automaticFailoverEnabledHasBeenSet = false;
1103 bool m_multiAZEnabledHasBeenSet = false;
1104 bool m_numCacheClustersHasBeenSet = false;
1105 bool m_preferredCacheClusterAZsHasBeenSet = false;
1106 bool m_numNodeGroupsHasBeenSet = false;
1107 bool m_replicasPerNodeGroupHasBeenSet = false;
1108 bool m_nodeGroupConfigurationHasBeenSet = false;
1109 bool m_cacheNodeTypeHasBeenSet = false;
1110 bool m_engineHasBeenSet = false;
1111 bool m_engineVersionHasBeenSet = false;
1112 bool m_cacheParameterGroupNameHasBeenSet = false;
1113 bool m_cacheSubnetGroupNameHasBeenSet = false;
1114 bool m_cacheSecurityGroupNamesHasBeenSet = false;
1115 bool m_securityGroupIdsHasBeenSet = false;
1116 bool m_tagsHasBeenSet = false;
1117 bool m_snapshotArnsHasBeenSet = false;
1118 bool m_snapshotNameHasBeenSet = false;
1119 bool m_preferredMaintenanceWindowHasBeenSet = false;
1120 bool m_portHasBeenSet = false;
1121 bool m_notificationTopicArnHasBeenSet = false;
1122 bool m_autoMinorVersionUpgradeHasBeenSet = false;
1123 bool m_snapshotRetentionLimitHasBeenSet = false;
1124 bool m_snapshotWindowHasBeenSet = false;
1125 bool m_authTokenHasBeenSet = false;
1126 bool m_transitEncryptionEnabledHasBeenSet = false;
1127 bool m_atRestEncryptionEnabledHasBeenSet = false;
1128 bool m_kmsKeyIdHasBeenSet = false;
1129 bool m_userGroupIdsHasBeenSet = false;
1130 bool m_logDeliveryConfigurationsHasBeenSet = false;
1131 bool m_dataTieringEnabledHasBeenSet = false;
1132 bool m_networkTypeHasBeenSet = false;
1133 bool m_ipDiscoveryHasBeenSet = false;
1134 bool m_transitEncryptionModeHasBeenSet = false;
1135 bool m_clusterModeHasBeenSet = false;
1136 bool m_serverlessCacheSnapshotNameHasBeenSet = false;
1137 bool m_durabilityHasBeenSet = false;
1138};
1139
1140} // namespace Model
1141} // namespace ElastiCache
1142} // namespace Aws
CreateReplicationGroupRequest & WithDataTieringEnabled(bool value)
CreateReplicationGroupRequest & WithLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
CreateReplicationGroupRequest & WithAutomaticFailoverEnabled(bool value)
CreateReplicationGroupRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
CreateReplicationGroupRequest & AddUserGroupIds(UserGroupIdsT &&value)
CreateReplicationGroupRequest & WithTags(TagsT &&value)
CreateReplicationGroupRequest & WithPreferredCacheClusterAZs(PreferredCacheClusterAZsT &&value)
const Aws::Vector< Aws::String > & GetPreferredCacheClusterAZs() const
CreateReplicationGroupRequest & WithNetworkType(NetworkType value)
CreateReplicationGroupRequest & WithAutoMinorVersionUpgrade(bool value)
CreateReplicationGroupRequest & WithClusterMode(ClusterMode value)
void SetServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT &&value)
CreateReplicationGroupRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
CreateReplicationGroupRequest & WithEngine(EngineT &&value)
CreateReplicationGroupRequest & WithAtRestEncryptionEnabled(bool value)
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
CreateReplicationGroupRequest & WithCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
const Aws::Vector< LogDeliveryConfigurationRequest > & GetLogDeliveryConfigurations() const
CreateReplicationGroupRequest & WithNumCacheClusters(int value)
CreateReplicationGroupRequest & AddSnapshotArns(SnapshotArnsT &&value)
void SetGlobalReplicationGroupId(GlobalReplicationGroupIdT &&value)
CreateReplicationGroupRequest & WithNodeGroupConfiguration(NodeGroupConfigurationT &&value)
CreateReplicationGroupRequest & WithSnapshotRetentionLimit(int value)
const Aws::Vector< Aws::String > & GetCacheSecurityGroupNames() const
CreateReplicationGroupRequest & WithEngineVersion(EngineVersionT &&value)
CreateReplicationGroupRequest & WithServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT &&value)
CreateReplicationGroupRequest & WithPrimaryClusterId(PrimaryClusterIdT &&value)
const Aws::Vector< NodeGroupConfiguration > & GetNodeGroupConfiguration() const
CreateReplicationGroupRequest & WithSnapshotArns(SnapshotArnsT &&value)
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateReplicationGroupRequest & WithSnapshotName(SnapshotNameT &&value)
CreateReplicationGroupRequest & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
CreateReplicationGroupRequest & WithUserGroupIds(UserGroupIdsT &&value)
CreateReplicationGroupRequest & WithGlobalReplicationGroupId(GlobalReplicationGroupIdT &&value)
CreateReplicationGroupRequest & WithIpDiscovery(IpDiscovery value)
CreateReplicationGroupRequest & AddPreferredCacheClusterAZs(PreferredCacheClusterAZsT &&value)
AWS_ELASTICACHE_API CreateReplicationGroupRequest()=default
CreateReplicationGroupRequest & AddCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
CreateReplicationGroupRequest & WithDurability(Durability value)
CreateReplicationGroupRequest & WithCacheParameterGroupName(CacheParameterGroupNameT &&value)
CreateReplicationGroupRequest & WithMultiAZEnabled(bool value)
CreateReplicationGroupRequest & WithCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
CreateReplicationGroupRequest & WithNotificationTopicArn(NotificationTopicArnT &&value)
CreateReplicationGroupRequest & AddLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
CreateReplicationGroupRequest & WithReplicasPerNodeGroup(int value)
CreateReplicationGroupRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateReplicationGroupRequest & WithTransitEncryptionMode(TransitEncryptionMode value)
void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
CreateReplicationGroupRequest & WithTransitEncryptionEnabled(bool value)
CreateReplicationGroupRequest & WithAuthToken(AuthTokenT &&value)
CreateReplicationGroupRequest & WithCacheNodeType(CacheNodeTypeT &&value)
void SetReplicationGroupDescription(ReplicationGroupDescriptionT &&value)
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
CreateReplicationGroupRequest & AddNodeGroupConfiguration(NodeGroupConfigurationT &&value)
CreateReplicationGroupRequest & WithReplicationGroupDescription(ReplicationGroupDescriptionT &&value)
CreateReplicationGroupRequest & WithReplicationGroupId(ReplicationGroupIdT &&value)
CreateReplicationGroupRequest & WithSnapshotWindow(SnapshotWindowT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector