AWS SDK for C++

AWS SDK for C++ Version 1.11.716

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/IpDiscovery.h>
13#include <aws/elasticache/model/LogDeliveryConfigurationRequest.h>
14#include <aws/elasticache/model/NetworkType.h>
15#include <aws/elasticache/model/NodeGroupConfiguration.h>
16#include <aws/elasticache/model/Tag.h>
17#include <aws/elasticache/model/TransitEncryptionMode.h>
18
19#include <utility>
20
21namespace Aws {
22namespace ElastiCache {
23namespace Model {
24
32 public:
33 AWS_ELASTICACHE_API CreateReplicationGroupRequest() = default;
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateReplicationGroup"; }
40
41 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
42
43 protected:
44 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
45
46 public:
48
55 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
56 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
57 template <typename ReplicationGroupIdT = Aws::String>
58 void SetReplicationGroupId(ReplicationGroupIdT&& value) {
59 m_replicationGroupIdHasBeenSet = true;
60 m_replicationGroupId = std::forward<ReplicationGroupIdT>(value);
61 }
62 template <typename ReplicationGroupIdT = Aws::String>
64 SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value));
65 return *this;
66 }
68
70
73 inline const Aws::String& GetReplicationGroupDescription() const { return m_replicationGroupDescription; }
74 inline bool ReplicationGroupDescriptionHasBeenSet() const { return m_replicationGroupDescriptionHasBeenSet; }
75 template <typename ReplicationGroupDescriptionT = Aws::String>
76 void SetReplicationGroupDescription(ReplicationGroupDescriptionT&& value) {
77 m_replicationGroupDescriptionHasBeenSet = true;
78 m_replicationGroupDescription = std::forward<ReplicationGroupDescriptionT>(value);
79 }
80 template <typename ReplicationGroupDescriptionT = Aws::String>
81 CreateReplicationGroupRequest& WithReplicationGroupDescription(ReplicationGroupDescriptionT&& value) {
82 SetReplicationGroupDescription(std::forward<ReplicationGroupDescriptionT>(value));
83 return *this;
84 }
86
88
91 inline const Aws::String& GetGlobalReplicationGroupId() const { return m_globalReplicationGroupId; }
92 inline bool GlobalReplicationGroupIdHasBeenSet() const { return m_globalReplicationGroupIdHasBeenSet; }
93 template <typename GlobalReplicationGroupIdT = Aws::String>
94 void SetGlobalReplicationGroupId(GlobalReplicationGroupIdT&& value) {
95 m_globalReplicationGroupIdHasBeenSet = true;
96 m_globalReplicationGroupId = std::forward<GlobalReplicationGroupIdT>(value);
97 }
98 template <typename GlobalReplicationGroupIdT = Aws::String>
99 CreateReplicationGroupRequest& WithGlobalReplicationGroupId(GlobalReplicationGroupIdT&& value) {
100 SetGlobalReplicationGroupId(std::forward<GlobalReplicationGroupIdT>(value));
101 return *this;
102 }
104
106
113 inline const Aws::String& GetPrimaryClusterId() const { return m_primaryClusterId; }
114 inline bool PrimaryClusterIdHasBeenSet() const { return m_primaryClusterIdHasBeenSet; }
115 template <typename PrimaryClusterIdT = Aws::String>
116 void SetPrimaryClusterId(PrimaryClusterIdT&& value) {
117 m_primaryClusterIdHasBeenSet = true;
118 m_primaryClusterId = std::forward<PrimaryClusterIdT>(value);
119 }
120 template <typename PrimaryClusterIdT = Aws::String>
122 SetPrimaryClusterId(std::forward<PrimaryClusterIdT>(value));
123 return *this;
124 }
126
128
134 inline bool GetAutomaticFailoverEnabled() const { return m_automaticFailoverEnabled; }
135 inline bool AutomaticFailoverEnabledHasBeenSet() const { return m_automaticFailoverEnabledHasBeenSet; }
136 inline void SetAutomaticFailoverEnabled(bool value) {
137 m_automaticFailoverEnabledHasBeenSet = true;
138 m_automaticFailoverEnabled = value;
139 }
142 return *this;
143 }
145
147
153 inline bool GetMultiAZEnabled() const { return m_multiAZEnabled; }
154 inline bool MultiAZEnabledHasBeenSet() const { return m_multiAZEnabledHasBeenSet; }
155 inline void SetMultiAZEnabled(bool value) {
156 m_multiAZEnabledHasBeenSet = true;
157 m_multiAZEnabled = value;
158 }
160 SetMultiAZEnabled(value);
161 return *this;
162 }
164
166
176 inline int GetNumCacheClusters() const { return m_numCacheClusters; }
177 inline bool NumCacheClustersHasBeenSet() const { return m_numCacheClustersHasBeenSet; }
178 inline void SetNumCacheClusters(int value) {
179 m_numCacheClustersHasBeenSet = true;
180 m_numCacheClusters = value;
181 }
183 SetNumCacheClusters(value);
184 return *this;
185 }
187
189
201 inline const Aws::Vector<Aws::String>& GetPreferredCacheClusterAZs() const { return m_preferredCacheClusterAZs; }
202 inline bool PreferredCacheClusterAZsHasBeenSet() const { return m_preferredCacheClusterAZsHasBeenSet; }
203 template <typename PreferredCacheClusterAZsT = Aws::Vector<Aws::String>>
204 void SetPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) {
205 m_preferredCacheClusterAZsHasBeenSet = true;
206 m_preferredCacheClusterAZs = std::forward<PreferredCacheClusterAZsT>(value);
207 }
208 template <typename PreferredCacheClusterAZsT = Aws::Vector<Aws::String>>
210 SetPreferredCacheClusterAZs(std::forward<PreferredCacheClusterAZsT>(value));
211 return *this;
212 }
213 template <typename PreferredCacheClusterAZsT = Aws::String>
214 CreateReplicationGroupRequest& AddPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) {
215 m_preferredCacheClusterAZsHasBeenSet = true;
216 m_preferredCacheClusterAZs.emplace_back(std::forward<PreferredCacheClusterAZsT>(value));
217 return *this;
218 }
220
222
228 inline int GetNumNodeGroups() const { return m_numNodeGroups; }
229 inline bool NumNodeGroupsHasBeenSet() const { return m_numNodeGroupsHasBeenSet; }
230 inline void SetNumNodeGroups(int value) {
231 m_numNodeGroupsHasBeenSet = true;
232 m_numNodeGroups = value;
233 }
235 SetNumNodeGroups(value);
236 return *this;
237 }
239
241
245 inline int GetReplicasPerNodeGroup() const { return m_replicasPerNodeGroup; }
246 inline bool ReplicasPerNodeGroupHasBeenSet() const { return m_replicasPerNodeGroupHasBeenSet; }
247 inline void SetReplicasPerNodeGroup(int value) {
248 m_replicasPerNodeGroupHasBeenSet = true;
249 m_replicasPerNodeGroup = value;
250 }
253 return *this;
254 }
256
258
270 inline const Aws::Vector<NodeGroupConfiguration>& GetNodeGroupConfiguration() const { return m_nodeGroupConfiguration; }
271 inline bool NodeGroupConfigurationHasBeenSet() const { return m_nodeGroupConfigurationHasBeenSet; }
272 template <typename NodeGroupConfigurationT = Aws::Vector<NodeGroupConfiguration>>
273 void SetNodeGroupConfiguration(NodeGroupConfigurationT&& value) {
274 m_nodeGroupConfigurationHasBeenSet = true;
275 m_nodeGroupConfiguration = std::forward<NodeGroupConfigurationT>(value);
276 }
277 template <typename NodeGroupConfigurationT = Aws::Vector<NodeGroupConfiguration>>
279 SetNodeGroupConfiguration(std::forward<NodeGroupConfigurationT>(value));
280 return *this;
281 }
282 template <typename NodeGroupConfigurationT = NodeGroupConfiguration>
284 m_nodeGroupConfigurationHasBeenSet = true;
285 m_nodeGroupConfiguration.emplace_back(std::forward<NodeGroupConfigurationT>(value));
286 return *this;
287 }
289
291
366 inline const Aws::String& GetCacheNodeType() const { return m_cacheNodeType; }
367 inline bool CacheNodeTypeHasBeenSet() const { return m_cacheNodeTypeHasBeenSet; }
368 template <typename CacheNodeTypeT = Aws::String>
369 void SetCacheNodeType(CacheNodeTypeT&& value) {
370 m_cacheNodeTypeHasBeenSet = true;
371 m_cacheNodeType = std::forward<CacheNodeTypeT>(value);
372 }
373 template <typename CacheNodeTypeT = Aws::String>
375 SetCacheNodeType(std::forward<CacheNodeTypeT>(value));
376 return *this;
377 }
379
381
385 inline const Aws::String& GetEngine() const { return m_engine; }
386 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
387 template <typename EngineT = Aws::String>
388 void SetEngine(EngineT&& value) {
389 m_engineHasBeenSet = true;
390 m_engine = std::forward<EngineT>(value);
391 }
392 template <typename EngineT = Aws::String>
394 SetEngine(std::forward<EngineT>(value));
395 return *this;
396 }
398
400
411 inline const Aws::String& GetEngineVersion() const { return m_engineVersion; }
412 inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; }
413 template <typename EngineVersionT = Aws::String>
414 void SetEngineVersion(EngineVersionT&& value) {
415 m_engineVersionHasBeenSet = true;
416 m_engineVersion = std::forward<EngineVersionT>(value);
417 }
418 template <typename EngineVersionT = Aws::String>
420 SetEngineVersion(std::forward<EngineVersionT>(value));
421 return *this;
422 }
424
426
438 inline const Aws::String& GetCacheParameterGroupName() const { return m_cacheParameterGroupName; }
439 inline bool CacheParameterGroupNameHasBeenSet() const { return m_cacheParameterGroupNameHasBeenSet; }
440 template <typename CacheParameterGroupNameT = Aws::String>
441 void SetCacheParameterGroupName(CacheParameterGroupNameT&& value) {
442 m_cacheParameterGroupNameHasBeenSet = true;
443 m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value);
444 }
445 template <typename CacheParameterGroupNameT = Aws::String>
447 SetCacheParameterGroupName(std::forward<CacheParameterGroupNameT>(value));
448 return *this;
449 }
451
453
461 inline const Aws::String& GetCacheSubnetGroupName() const { return m_cacheSubnetGroupName; }
462 inline bool CacheSubnetGroupNameHasBeenSet() const { return m_cacheSubnetGroupNameHasBeenSet; }
463 template <typename CacheSubnetGroupNameT = Aws::String>
464 void SetCacheSubnetGroupName(CacheSubnetGroupNameT&& value) {
465 m_cacheSubnetGroupNameHasBeenSet = true;
466 m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value);
467 }
468 template <typename CacheSubnetGroupNameT = Aws::String>
470 SetCacheSubnetGroupName(std::forward<CacheSubnetGroupNameT>(value));
471 return *this;
472 }
474
476
480 inline const Aws::Vector<Aws::String>& GetCacheSecurityGroupNames() const { return m_cacheSecurityGroupNames; }
481 inline bool CacheSecurityGroupNamesHasBeenSet() const { return m_cacheSecurityGroupNamesHasBeenSet; }
482 template <typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
483 void SetCacheSecurityGroupNames(CacheSecurityGroupNamesT&& value) {
484 m_cacheSecurityGroupNamesHasBeenSet = true;
485 m_cacheSecurityGroupNames = std::forward<CacheSecurityGroupNamesT>(value);
486 }
487 template <typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
489 SetCacheSecurityGroupNames(std::forward<CacheSecurityGroupNamesT>(value));
490 return *this;
491 }
492 template <typename CacheSecurityGroupNamesT = Aws::String>
494 m_cacheSecurityGroupNamesHasBeenSet = true;
495 m_cacheSecurityGroupNames.emplace_back(std::forward<CacheSecurityGroupNamesT>(value));
496 return *this;
497 }
499
501
506 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
507 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
508 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
509 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
510 m_securityGroupIdsHasBeenSet = true;
511 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
512 }
513 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
515 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
516 return *this;
517 }
518 template <typename SecurityGroupIdsT = Aws::String>
520 m_securityGroupIdsHasBeenSet = true;
521 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
522 return *this;
523 }
525
527
535 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
536 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
537 template <typename TagsT = Aws::Vector<Tag>>
538 void SetTags(TagsT&& value) {
539 m_tagsHasBeenSet = true;
540 m_tags = std::forward<TagsT>(value);
541 }
542 template <typename TagsT = Aws::Vector<Tag>>
544 SetTags(std::forward<TagsT>(value));
545 return *this;
546 }
547 template <typename TagsT = Tag>
549 m_tagsHasBeenSet = true;
550 m_tags.emplace_back(std::forward<TagsT>(value));
551 return *this;
552 }
554
556
566 inline const Aws::Vector<Aws::String>& GetSnapshotArns() const { return m_snapshotArns; }
567 inline bool SnapshotArnsHasBeenSet() const { return m_snapshotArnsHasBeenSet; }
568 template <typename SnapshotArnsT = Aws::Vector<Aws::String>>
569 void SetSnapshotArns(SnapshotArnsT&& value) {
570 m_snapshotArnsHasBeenSet = true;
571 m_snapshotArns = std::forward<SnapshotArnsT>(value);
572 }
573 template <typename SnapshotArnsT = Aws::Vector<Aws::String>>
575 SetSnapshotArns(std::forward<SnapshotArnsT>(value));
576 return *this;
577 }
578 template <typename SnapshotArnsT = Aws::String>
580 m_snapshotArnsHasBeenSet = true;
581 m_snapshotArns.emplace_back(std::forward<SnapshotArnsT>(value));
582 return *this;
583 }
585
587
592 inline const Aws::String& GetSnapshotName() const { return m_snapshotName; }
593 inline bool SnapshotNameHasBeenSet() const { return m_snapshotNameHasBeenSet; }
594 template <typename SnapshotNameT = Aws::String>
595 void SetSnapshotName(SnapshotNameT&& value) {
596 m_snapshotNameHasBeenSet = true;
597 m_snapshotName = std::forward<SnapshotNameT>(value);
598 }
599 template <typename SnapshotNameT = Aws::String>
601 SetSnapshotName(std::forward<SnapshotNameT>(value));
602 return *this;
603 }
605
607
617 inline const Aws::String& GetPreferredMaintenanceWindow() const { return m_preferredMaintenanceWindow; }
618 inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; }
619 template <typename PreferredMaintenanceWindowT = Aws::String>
620 void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) {
621 m_preferredMaintenanceWindowHasBeenSet = true;
622 m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value);
623 }
624 template <typename PreferredMaintenanceWindowT = Aws::String>
625 CreateReplicationGroupRequest& WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) {
626 SetPreferredMaintenanceWindow(std::forward<PreferredMaintenanceWindowT>(value));
627 return *this;
628 }
630
632
636 inline int GetPort() const { return m_port; }
637 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
638 inline void SetPort(int value) {
639 m_portHasBeenSet = true;
640 m_port = value;
641 }
643 SetPort(value);
644 return *this;
645 }
647
649
654 inline const Aws::String& GetNotificationTopicArn() const { return m_notificationTopicArn; }
655 inline bool NotificationTopicArnHasBeenSet() const { return m_notificationTopicArnHasBeenSet; }
656 template <typename NotificationTopicArnT = Aws::String>
657 void SetNotificationTopicArn(NotificationTopicArnT&& value) {
658 m_notificationTopicArnHasBeenSet = true;
659 m_notificationTopicArn = std::forward<NotificationTopicArnT>(value);
660 }
661 template <typename NotificationTopicArnT = Aws::String>
663 SetNotificationTopicArn(std::forward<NotificationTopicArnT>(value));
664 return *this;
665 }
667
669
674 inline bool GetAutoMinorVersionUpgrade() const { return m_autoMinorVersionUpgrade; }
675 inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; }
676 inline void SetAutoMinorVersionUpgrade(bool value) {
677 m_autoMinorVersionUpgradeHasBeenSet = true;
678 m_autoMinorVersionUpgrade = value;
679 }
682 return *this;
683 }
685
687
693 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
694 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
695 inline void SetSnapshotRetentionLimit(int value) {
696 m_snapshotRetentionLimitHasBeenSet = true;
697 m_snapshotRetentionLimit = value;
698 }
701 return *this;
702 }
704
706
712 inline const Aws::String& GetSnapshotWindow() const { return m_snapshotWindow; }
713 inline bool SnapshotWindowHasBeenSet() const { return m_snapshotWindowHasBeenSet; }
714 template <typename SnapshotWindowT = Aws::String>
715 void SetSnapshotWindow(SnapshotWindowT&& value) {
716 m_snapshotWindowHasBeenSet = true;
717 m_snapshotWindow = std::forward<SnapshotWindowT>(value);
718 }
719 template <typename SnapshotWindowT = Aws::String>
721 SetSnapshotWindow(std::forward<SnapshotWindowT>(value));
722 return *this;
723 }
725
727
742 inline const Aws::String& GetAuthToken() const { return m_authToken; }
743 inline bool AuthTokenHasBeenSet() const { return m_authTokenHasBeenSet; }
744 template <typename AuthTokenT = Aws::String>
745 void SetAuthToken(AuthTokenT&& value) {
746 m_authTokenHasBeenSet = true;
747 m_authToken = std::forward<AuthTokenT>(value);
748 }
749 template <typename AuthTokenT = Aws::String>
751 SetAuthToken(std::forward<AuthTokenT>(value));
752 return *this;
753 }
755
757
770 inline bool GetTransitEncryptionEnabled() const { return m_transitEncryptionEnabled; }
771 inline bool TransitEncryptionEnabledHasBeenSet() const { return m_transitEncryptionEnabledHasBeenSet; }
772 inline void SetTransitEncryptionEnabled(bool value) {
773 m_transitEncryptionEnabledHasBeenSet = true;
774 m_transitEncryptionEnabled = value;
775 }
778 return *this;
779 }
781
783
794 inline bool GetAtRestEncryptionEnabled() const { return m_atRestEncryptionEnabled; }
795 inline bool AtRestEncryptionEnabledHasBeenSet() const { return m_atRestEncryptionEnabledHasBeenSet; }
796 inline void SetAtRestEncryptionEnabled(bool value) {
797 m_atRestEncryptionEnabledHasBeenSet = true;
798 m_atRestEncryptionEnabled = value;
799 }
802 return *this;
803 }
805
807
810 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
811 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
812 template <typename KmsKeyIdT = Aws::String>
813 void SetKmsKeyId(KmsKeyIdT&& value) {
814 m_kmsKeyIdHasBeenSet = true;
815 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
816 }
817 template <typename KmsKeyIdT = Aws::String>
819 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
820 return *this;
821 }
823
825
828 inline const Aws::Vector<Aws::String>& GetUserGroupIds() const { return m_userGroupIds; }
829 inline bool UserGroupIdsHasBeenSet() const { return m_userGroupIdsHasBeenSet; }
830 template <typename UserGroupIdsT = Aws::Vector<Aws::String>>
831 void SetUserGroupIds(UserGroupIdsT&& value) {
832 m_userGroupIdsHasBeenSet = true;
833 m_userGroupIds = std::forward<UserGroupIdsT>(value);
834 }
835 template <typename UserGroupIdsT = Aws::Vector<Aws::String>>
837 SetUserGroupIds(std::forward<UserGroupIdsT>(value));
838 return *this;
839 }
840 template <typename UserGroupIdsT = Aws::String>
842 m_userGroupIdsHasBeenSet = true;
843 m_userGroupIds.emplace_back(std::forward<UserGroupIdsT>(value));
844 return *this;
845 }
847
849
852 inline const Aws::Vector<LogDeliveryConfigurationRequest>& GetLogDeliveryConfigurations() const { return m_logDeliveryConfigurations; }
853 inline bool LogDeliveryConfigurationsHasBeenSet() const { return m_logDeliveryConfigurationsHasBeenSet; }
854 template <typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
855 void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
856 m_logDeliveryConfigurationsHasBeenSet = true;
857 m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value);
858 }
859 template <typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
861 SetLogDeliveryConfigurations(std::forward<LogDeliveryConfigurationsT>(value));
862 return *this;
863 }
864 template <typename LogDeliveryConfigurationsT = LogDeliveryConfigurationRequest>
865 CreateReplicationGroupRequest& AddLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) {
866 m_logDeliveryConfigurationsHasBeenSet = true;
867 m_logDeliveryConfigurations.emplace_back(std::forward<LogDeliveryConfigurationsT>(value));
868 return *this;
869 }
871
873
880 inline bool GetDataTieringEnabled() const { return m_dataTieringEnabled; }
881 inline bool DataTieringEnabledHasBeenSet() const { return m_dataTieringEnabledHasBeenSet; }
882 inline void SetDataTieringEnabled(bool value) {
883 m_dataTieringEnabledHasBeenSet = true;
884 m_dataTieringEnabled = value;
885 }
888 return *this;
889 }
891
893
900 inline NetworkType GetNetworkType() const { return m_networkType; }
901 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
902 inline void SetNetworkType(NetworkType value) {
903 m_networkTypeHasBeenSet = true;
904 m_networkType = value;
905 }
907 SetNetworkType(value);
908 return *this;
909 }
911
913
920 inline IpDiscovery GetIpDiscovery() const { return m_ipDiscovery; }
921 inline bool IpDiscoveryHasBeenSet() const { return m_ipDiscoveryHasBeenSet; }
922 inline void SetIpDiscovery(IpDiscovery value) {
923 m_ipDiscoveryHasBeenSet = true;
924 m_ipDiscovery = value;
925 }
927 SetIpDiscovery(value);
928 return *this;
929 }
931
933
947 inline TransitEncryptionMode GetTransitEncryptionMode() const { return m_transitEncryptionMode; }
948 inline bool TransitEncryptionModeHasBeenSet() const { return m_transitEncryptionModeHasBeenSet; }
950 m_transitEncryptionModeHasBeenSet = true;
951 m_transitEncryptionMode = value;
952 }
955 return *this;
956 }
958
960
968 inline ClusterMode GetClusterMode() const { return m_clusterMode; }
969 inline bool ClusterModeHasBeenSet() const { return m_clusterModeHasBeenSet; }
970 inline void SetClusterMode(ClusterMode value) {
971 m_clusterModeHasBeenSet = true;
972 m_clusterMode = value;
973 }
975 SetClusterMode(value);
976 return *this;
977 }
979
981
985 inline const Aws::String& GetServerlessCacheSnapshotName() const { return m_serverlessCacheSnapshotName; }
986 inline bool ServerlessCacheSnapshotNameHasBeenSet() const { return m_serverlessCacheSnapshotNameHasBeenSet; }
987 template <typename ServerlessCacheSnapshotNameT = Aws::String>
988 void SetServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT&& value) {
989 m_serverlessCacheSnapshotNameHasBeenSet = true;
990 m_serverlessCacheSnapshotName = std::forward<ServerlessCacheSnapshotNameT>(value);
991 }
992 template <typename ServerlessCacheSnapshotNameT = Aws::String>
993 CreateReplicationGroupRequest& WithServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT&& value) {
994 SetServerlessCacheSnapshotName(std::forward<ServerlessCacheSnapshotNameT>(value));
995 return *this;
996 }
998 private:
999 Aws::String m_replicationGroupId;
1000
1001 Aws::String m_replicationGroupDescription;
1002
1003 Aws::String m_globalReplicationGroupId;
1004
1005 Aws::String m_primaryClusterId;
1006
1007 bool m_automaticFailoverEnabled{false};
1008
1009 bool m_multiAZEnabled{false};
1010
1011 int m_numCacheClusters{0};
1012
1013 Aws::Vector<Aws::String> m_preferredCacheClusterAZs;
1014
1015 int m_numNodeGroups{0};
1016
1017 int m_replicasPerNodeGroup{0};
1018
1019 Aws::Vector<NodeGroupConfiguration> m_nodeGroupConfiguration;
1020
1021 Aws::String m_cacheNodeType;
1022
1023 Aws::String m_engine;
1024
1025 Aws::String m_engineVersion;
1026
1027 Aws::String m_cacheParameterGroupName;
1028
1029 Aws::String m_cacheSubnetGroupName;
1030
1031 Aws::Vector<Aws::String> m_cacheSecurityGroupNames;
1032
1033 Aws::Vector<Aws::String> m_securityGroupIds;
1034
1035 Aws::Vector<Tag> m_tags;
1036
1037 Aws::Vector<Aws::String> m_snapshotArns;
1038
1039 Aws::String m_snapshotName;
1040
1041 Aws::String m_preferredMaintenanceWindow;
1042
1043 int m_port{0};
1044
1045 Aws::String m_notificationTopicArn;
1046
1047 bool m_autoMinorVersionUpgrade{false};
1048
1049 int m_snapshotRetentionLimit{0};
1050
1051 Aws::String m_snapshotWindow;
1052
1053 Aws::String m_authToken;
1054
1055 bool m_transitEncryptionEnabled{false};
1056
1057 bool m_atRestEncryptionEnabled{false};
1058
1059 Aws::String m_kmsKeyId;
1060
1061 Aws::Vector<Aws::String> m_userGroupIds;
1062
1063 Aws::Vector<LogDeliveryConfigurationRequest> m_logDeliveryConfigurations;
1064
1065 bool m_dataTieringEnabled{false};
1066
1067 NetworkType m_networkType{NetworkType::NOT_SET};
1068
1069 IpDiscovery m_ipDiscovery{IpDiscovery::NOT_SET};
1070
1072
1073 ClusterMode m_clusterMode{ClusterMode::NOT_SET};
1074
1075 Aws::String m_serverlessCacheSnapshotName;
1076 bool m_replicationGroupIdHasBeenSet = false;
1077 bool m_replicationGroupDescriptionHasBeenSet = false;
1078 bool m_globalReplicationGroupIdHasBeenSet = false;
1079 bool m_primaryClusterIdHasBeenSet = false;
1080 bool m_automaticFailoverEnabledHasBeenSet = false;
1081 bool m_multiAZEnabledHasBeenSet = false;
1082 bool m_numCacheClustersHasBeenSet = false;
1083 bool m_preferredCacheClusterAZsHasBeenSet = false;
1084 bool m_numNodeGroupsHasBeenSet = false;
1085 bool m_replicasPerNodeGroupHasBeenSet = false;
1086 bool m_nodeGroupConfigurationHasBeenSet = false;
1087 bool m_cacheNodeTypeHasBeenSet = false;
1088 bool m_engineHasBeenSet = false;
1089 bool m_engineVersionHasBeenSet = false;
1090 bool m_cacheParameterGroupNameHasBeenSet = false;
1091 bool m_cacheSubnetGroupNameHasBeenSet = false;
1092 bool m_cacheSecurityGroupNamesHasBeenSet = false;
1093 bool m_securityGroupIdsHasBeenSet = false;
1094 bool m_tagsHasBeenSet = false;
1095 bool m_snapshotArnsHasBeenSet = false;
1096 bool m_snapshotNameHasBeenSet = false;
1097 bool m_preferredMaintenanceWindowHasBeenSet = false;
1098 bool m_portHasBeenSet = false;
1099 bool m_notificationTopicArnHasBeenSet = false;
1100 bool m_autoMinorVersionUpgradeHasBeenSet = false;
1101 bool m_snapshotRetentionLimitHasBeenSet = false;
1102 bool m_snapshotWindowHasBeenSet = false;
1103 bool m_authTokenHasBeenSet = false;
1104 bool m_transitEncryptionEnabledHasBeenSet = false;
1105 bool m_atRestEncryptionEnabledHasBeenSet = false;
1106 bool m_kmsKeyIdHasBeenSet = false;
1107 bool m_userGroupIdsHasBeenSet = false;
1108 bool m_logDeliveryConfigurationsHasBeenSet = false;
1109 bool m_dataTieringEnabledHasBeenSet = false;
1110 bool m_networkTypeHasBeenSet = false;
1111 bool m_ipDiscoveryHasBeenSet = false;
1112 bool m_transitEncryptionModeHasBeenSet = false;
1113 bool m_clusterModeHasBeenSet = false;
1114 bool m_serverlessCacheSnapshotNameHasBeenSet = false;
1115};
1116
1117} // namespace Model
1118} // namespace ElastiCache
1119} // 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 & 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