AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateReplicationGroupRequest.h
1
6#pragma once
7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/elasticache/ElastiCacheRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticache/model/NetworkType.h>
12#include <aws/elasticache/model/IpDiscovery.h>
13#include <aws/elasticache/model/TransitEncryptionMode.h>
14#include <aws/elasticache/model/ClusterMode.h>
15#include <aws/elasticache/model/NodeGroupConfiguration.h>
16#include <aws/elasticache/model/Tag.h>
17#include <aws/elasticache/model/LogDeliveryConfigurationRequest.h>
18#include <utility>
19
20namespace Aws
21{
22namespace ElastiCache
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_ELASTICACHE_API CreateReplicationGroupRequest() = default;
37
38 // Service request name is the Operation name which will send this request out,
39 // each operation should has unique request name, so that we can get operation's name from this request.
40 // Note: this is not true for response, multiple operations may have the same response name,
41 // so we can not get operation's name from response.
42 inline virtual const char* GetServiceRequestName() const override { return "CreateReplicationGroup"; }
43
44 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
45
46 protected:
47 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
48
49 public:
50
52
59 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
60 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
61 template<typename ReplicationGroupIdT = Aws::String>
62 void SetReplicationGroupId(ReplicationGroupIdT&& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = std::forward<ReplicationGroupIdT>(value); }
63 template<typename ReplicationGroupIdT = Aws::String>
64 CreateReplicationGroupRequest& WithReplicationGroupId(ReplicationGroupIdT&& value) { SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value)); return *this;}
66
68
71 inline const Aws::String& GetReplicationGroupDescription() const { return m_replicationGroupDescription; }
72 inline bool ReplicationGroupDescriptionHasBeenSet() const { return m_replicationGroupDescriptionHasBeenSet; }
73 template<typename ReplicationGroupDescriptionT = Aws::String>
74 void SetReplicationGroupDescription(ReplicationGroupDescriptionT&& value) { m_replicationGroupDescriptionHasBeenSet = true; m_replicationGroupDescription = std::forward<ReplicationGroupDescriptionT>(value); }
75 template<typename ReplicationGroupDescriptionT = Aws::String>
76 CreateReplicationGroupRequest& WithReplicationGroupDescription(ReplicationGroupDescriptionT&& value) { SetReplicationGroupDescription(std::forward<ReplicationGroupDescriptionT>(value)); return *this;}
78
80
83 inline const Aws::String& GetGlobalReplicationGroupId() const { return m_globalReplicationGroupId; }
84 inline bool GlobalReplicationGroupIdHasBeenSet() const { return m_globalReplicationGroupIdHasBeenSet; }
85 template<typename GlobalReplicationGroupIdT = Aws::String>
86 void SetGlobalReplicationGroupId(GlobalReplicationGroupIdT&& value) { m_globalReplicationGroupIdHasBeenSet = true; m_globalReplicationGroupId = std::forward<GlobalReplicationGroupIdT>(value); }
87 template<typename GlobalReplicationGroupIdT = Aws::String>
88 CreateReplicationGroupRequest& WithGlobalReplicationGroupId(GlobalReplicationGroupIdT&& value) { SetGlobalReplicationGroupId(std::forward<GlobalReplicationGroupIdT>(value)); return *this;}
90
92
99 inline const Aws::String& GetPrimaryClusterId() const { return m_primaryClusterId; }
100 inline bool PrimaryClusterIdHasBeenSet() const { return m_primaryClusterIdHasBeenSet; }
101 template<typename PrimaryClusterIdT = Aws::String>
102 void SetPrimaryClusterId(PrimaryClusterIdT&& value) { m_primaryClusterIdHasBeenSet = true; m_primaryClusterId = std::forward<PrimaryClusterIdT>(value); }
103 template<typename PrimaryClusterIdT = Aws::String>
104 CreateReplicationGroupRequest& WithPrimaryClusterId(PrimaryClusterIdT&& value) { SetPrimaryClusterId(std::forward<PrimaryClusterIdT>(value)); return *this;}
106
108
114 inline bool GetAutomaticFailoverEnabled() const { return m_automaticFailoverEnabled; }
115 inline bool AutomaticFailoverEnabledHasBeenSet() const { return m_automaticFailoverEnabledHasBeenSet; }
116 inline void SetAutomaticFailoverEnabled(bool value) { m_automaticFailoverEnabledHasBeenSet = true; m_automaticFailoverEnabled = value; }
119
121
127 inline bool GetMultiAZEnabled() const { return m_multiAZEnabled; }
128 inline bool MultiAZEnabledHasBeenSet() const { return m_multiAZEnabledHasBeenSet; }
129 inline void SetMultiAZEnabled(bool value) { m_multiAZEnabledHasBeenSet = true; m_multiAZEnabled = value; }
130 inline CreateReplicationGroupRequest& WithMultiAZEnabled(bool value) { SetMultiAZEnabled(value); return *this;}
132
134
144 inline int GetNumCacheClusters() const { return m_numCacheClusters; }
145 inline bool NumCacheClustersHasBeenSet() const { return m_numCacheClustersHasBeenSet; }
146 inline void SetNumCacheClusters(int value) { m_numCacheClustersHasBeenSet = true; m_numCacheClusters = value; }
149
151
163 inline const Aws::Vector<Aws::String>& GetPreferredCacheClusterAZs() const { return m_preferredCacheClusterAZs; }
164 inline bool PreferredCacheClusterAZsHasBeenSet() const { return m_preferredCacheClusterAZsHasBeenSet; }
165 template<typename PreferredCacheClusterAZsT = Aws::Vector<Aws::String>>
166 void SetPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) { m_preferredCacheClusterAZsHasBeenSet = true; m_preferredCacheClusterAZs = std::forward<PreferredCacheClusterAZsT>(value); }
167 template<typename PreferredCacheClusterAZsT = Aws::Vector<Aws::String>>
168 CreateReplicationGroupRequest& WithPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) { SetPreferredCacheClusterAZs(std::forward<PreferredCacheClusterAZsT>(value)); return *this;}
169 template<typename PreferredCacheClusterAZsT = Aws::String>
170 CreateReplicationGroupRequest& AddPreferredCacheClusterAZs(PreferredCacheClusterAZsT&& value) { m_preferredCacheClusterAZsHasBeenSet = true; m_preferredCacheClusterAZs.emplace_back(std::forward<PreferredCacheClusterAZsT>(value)); return *this; }
172
174
180 inline int GetNumNodeGroups() const { return m_numNodeGroups; }
181 inline bool NumNodeGroupsHasBeenSet() const { return m_numNodeGroupsHasBeenSet; }
182 inline void SetNumNodeGroups(int value) { m_numNodeGroupsHasBeenSet = true; m_numNodeGroups = value; }
183 inline CreateReplicationGroupRequest& WithNumNodeGroups(int value) { SetNumNodeGroups(value); return *this;}
185
187
191 inline int GetReplicasPerNodeGroup() const { return m_replicasPerNodeGroup; }
192 inline bool ReplicasPerNodeGroupHasBeenSet() const { return m_replicasPerNodeGroupHasBeenSet; }
193 inline void SetReplicasPerNodeGroup(int value) { m_replicasPerNodeGroupHasBeenSet = true; m_replicasPerNodeGroup = value; }
196
198
210 inline const Aws::Vector<NodeGroupConfiguration>& GetNodeGroupConfiguration() const { return m_nodeGroupConfiguration; }
211 inline bool NodeGroupConfigurationHasBeenSet() const { return m_nodeGroupConfigurationHasBeenSet; }
212 template<typename NodeGroupConfigurationT = Aws::Vector<NodeGroupConfiguration>>
213 void SetNodeGroupConfiguration(NodeGroupConfigurationT&& value) { m_nodeGroupConfigurationHasBeenSet = true; m_nodeGroupConfiguration = std::forward<NodeGroupConfigurationT>(value); }
214 template<typename NodeGroupConfigurationT = Aws::Vector<NodeGroupConfiguration>>
215 CreateReplicationGroupRequest& WithNodeGroupConfiguration(NodeGroupConfigurationT&& value) { SetNodeGroupConfiguration(std::forward<NodeGroupConfigurationT>(value)); return *this;}
216 template<typename NodeGroupConfigurationT = NodeGroupConfiguration>
217 CreateReplicationGroupRequest& AddNodeGroupConfiguration(NodeGroupConfigurationT&& value) { m_nodeGroupConfigurationHasBeenSet = true; m_nodeGroupConfiguration.emplace_back(std::forward<NodeGroupConfigurationT>(value)); return *this; }
219
221
296 inline const Aws::String& GetCacheNodeType() const { return m_cacheNodeType; }
297 inline bool CacheNodeTypeHasBeenSet() const { return m_cacheNodeTypeHasBeenSet; }
298 template<typename CacheNodeTypeT = Aws::String>
299 void SetCacheNodeType(CacheNodeTypeT&& value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType = std::forward<CacheNodeTypeT>(value); }
300 template<typename CacheNodeTypeT = Aws::String>
301 CreateReplicationGroupRequest& WithCacheNodeType(CacheNodeTypeT&& value) { SetCacheNodeType(std::forward<CacheNodeTypeT>(value)); return *this;}
303
305
309 inline const Aws::String& GetEngine() const { return m_engine; }
310 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
311 template<typename EngineT = Aws::String>
312 void SetEngine(EngineT&& value) { m_engineHasBeenSet = true; m_engine = std::forward<EngineT>(value); }
313 template<typename EngineT = Aws::String>
314 CreateReplicationGroupRequest& WithEngine(EngineT&& value) { SetEngine(std::forward<EngineT>(value)); return *this;}
316
318
329 inline const Aws::String& GetEngineVersion() const { return m_engineVersion; }
330 inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; }
331 template<typename EngineVersionT = Aws::String>
332 void SetEngineVersion(EngineVersionT&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = std::forward<EngineVersionT>(value); }
333 template<typename EngineVersionT = Aws::String>
334 CreateReplicationGroupRequest& WithEngineVersion(EngineVersionT&& value) { SetEngineVersion(std::forward<EngineVersionT>(value)); return *this;}
336
338
350 inline const Aws::String& GetCacheParameterGroupName() const { return m_cacheParameterGroupName; }
351 inline bool CacheParameterGroupNameHasBeenSet() const { return m_cacheParameterGroupNameHasBeenSet; }
352 template<typename CacheParameterGroupNameT = Aws::String>
353 void SetCacheParameterGroupName(CacheParameterGroupNameT&& value) { m_cacheParameterGroupNameHasBeenSet = true; m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value); }
354 template<typename CacheParameterGroupNameT = Aws::String>
355 CreateReplicationGroupRequest& WithCacheParameterGroupName(CacheParameterGroupNameT&& value) { SetCacheParameterGroupName(std::forward<CacheParameterGroupNameT>(value)); return *this;}
357
359
367 inline const Aws::String& GetCacheSubnetGroupName() const { return m_cacheSubnetGroupName; }
368 inline bool CacheSubnetGroupNameHasBeenSet() const { return m_cacheSubnetGroupNameHasBeenSet; }
369 template<typename CacheSubnetGroupNameT = Aws::String>
370 void SetCacheSubnetGroupName(CacheSubnetGroupNameT&& value) { m_cacheSubnetGroupNameHasBeenSet = true; m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value); }
371 template<typename CacheSubnetGroupNameT = Aws::String>
372 CreateReplicationGroupRequest& WithCacheSubnetGroupName(CacheSubnetGroupNameT&& value) { SetCacheSubnetGroupName(std::forward<CacheSubnetGroupNameT>(value)); return *this;}
374
376
380 inline const Aws::Vector<Aws::String>& GetCacheSecurityGroupNames() const { return m_cacheSecurityGroupNames; }
381 inline bool CacheSecurityGroupNamesHasBeenSet() const { return m_cacheSecurityGroupNamesHasBeenSet; }
382 template<typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
383 void SetCacheSecurityGroupNames(CacheSecurityGroupNamesT&& value) { m_cacheSecurityGroupNamesHasBeenSet = true; m_cacheSecurityGroupNames = std::forward<CacheSecurityGroupNamesT>(value); }
384 template<typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
385 CreateReplicationGroupRequest& WithCacheSecurityGroupNames(CacheSecurityGroupNamesT&& value) { SetCacheSecurityGroupNames(std::forward<CacheSecurityGroupNamesT>(value)); return *this;}
386 template<typename CacheSecurityGroupNamesT = Aws::String>
387 CreateReplicationGroupRequest& AddCacheSecurityGroupNames(CacheSecurityGroupNamesT&& value) { m_cacheSecurityGroupNamesHasBeenSet = true; m_cacheSecurityGroupNames.emplace_back(std::forward<CacheSecurityGroupNamesT>(value)); return *this; }
389
391
396 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
397 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
398 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
399 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
400 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
401 CreateReplicationGroupRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
402 template<typename SecurityGroupIdsT = Aws::String>
403 CreateReplicationGroupRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
405
407
415 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
416 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
417 template<typename TagsT = Aws::Vector<Tag>>
418 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
419 template<typename TagsT = Aws::Vector<Tag>>
420 CreateReplicationGroupRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
421 template<typename TagsT = Tag>
422 CreateReplicationGroupRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
424
426
436 inline const Aws::Vector<Aws::String>& GetSnapshotArns() const { return m_snapshotArns; }
437 inline bool SnapshotArnsHasBeenSet() const { return m_snapshotArnsHasBeenSet; }
438 template<typename SnapshotArnsT = Aws::Vector<Aws::String>>
439 void SetSnapshotArns(SnapshotArnsT&& value) { m_snapshotArnsHasBeenSet = true; m_snapshotArns = std::forward<SnapshotArnsT>(value); }
440 template<typename SnapshotArnsT = Aws::Vector<Aws::String>>
441 CreateReplicationGroupRequest& WithSnapshotArns(SnapshotArnsT&& value) { SetSnapshotArns(std::forward<SnapshotArnsT>(value)); return *this;}
442 template<typename SnapshotArnsT = Aws::String>
443 CreateReplicationGroupRequest& AddSnapshotArns(SnapshotArnsT&& value) { m_snapshotArnsHasBeenSet = true; m_snapshotArns.emplace_back(std::forward<SnapshotArnsT>(value)); return *this; }
445
447
452 inline const Aws::String& GetSnapshotName() const { return m_snapshotName; }
453 inline bool SnapshotNameHasBeenSet() const { return m_snapshotNameHasBeenSet; }
454 template<typename SnapshotNameT = Aws::String>
455 void SetSnapshotName(SnapshotNameT&& value) { m_snapshotNameHasBeenSet = true; m_snapshotName = std::forward<SnapshotNameT>(value); }
456 template<typename SnapshotNameT = Aws::String>
457 CreateReplicationGroupRequest& WithSnapshotName(SnapshotNameT&& value) { SetSnapshotName(std::forward<SnapshotNameT>(value)); return *this;}
459
461
471 inline const Aws::String& GetPreferredMaintenanceWindow() const { return m_preferredMaintenanceWindow; }
472 inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; }
473 template<typename PreferredMaintenanceWindowT = Aws::String>
474 void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value); }
475 template<typename PreferredMaintenanceWindowT = Aws::String>
476 CreateReplicationGroupRequest& WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) { SetPreferredMaintenanceWindow(std::forward<PreferredMaintenanceWindowT>(value)); return *this;}
478
480
484 inline int GetPort() const { return m_port; }
485 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
486 inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; }
487 inline CreateReplicationGroupRequest& WithPort(int value) { SetPort(value); return *this;}
489
491
496 inline const Aws::String& GetNotificationTopicArn() const { return m_notificationTopicArn; }
497 inline bool NotificationTopicArnHasBeenSet() const { return m_notificationTopicArnHasBeenSet; }
498 template<typename NotificationTopicArnT = Aws::String>
499 void SetNotificationTopicArn(NotificationTopicArnT&& value) { m_notificationTopicArnHasBeenSet = true; m_notificationTopicArn = std::forward<NotificationTopicArnT>(value); }
500 template<typename NotificationTopicArnT = Aws::String>
501 CreateReplicationGroupRequest& WithNotificationTopicArn(NotificationTopicArnT&& value) { SetNotificationTopicArn(std::forward<NotificationTopicArnT>(value)); return *this;}
503
505
510 inline bool GetAutoMinorVersionUpgrade() const { return m_autoMinorVersionUpgrade; }
511 inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; }
512 inline void SetAutoMinorVersionUpgrade(bool value) { m_autoMinorVersionUpgradeHasBeenSet = true; m_autoMinorVersionUpgrade = value; }
515
517
523 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
524 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
525 inline void SetSnapshotRetentionLimit(int value) { m_snapshotRetentionLimitHasBeenSet = true; m_snapshotRetentionLimit = value; }
528
530
536 inline const Aws::String& GetSnapshotWindow() const { return m_snapshotWindow; }
537 inline bool SnapshotWindowHasBeenSet() const { return m_snapshotWindowHasBeenSet; }
538 template<typename SnapshotWindowT = Aws::String>
539 void SetSnapshotWindow(SnapshotWindowT&& value) { m_snapshotWindowHasBeenSet = true; m_snapshotWindow = std::forward<SnapshotWindowT>(value); }
540 template<typename SnapshotWindowT = Aws::String>
541 CreateReplicationGroupRequest& WithSnapshotWindow(SnapshotWindowT&& value) { SetSnapshotWindow(std::forward<SnapshotWindowT>(value)); return *this;}
543
545
560 inline const Aws::String& GetAuthToken() const { return m_authToken; }
561 inline bool AuthTokenHasBeenSet() const { return m_authTokenHasBeenSet; }
562 template<typename AuthTokenT = Aws::String>
563 void SetAuthToken(AuthTokenT&& value) { m_authTokenHasBeenSet = true; m_authToken = std::forward<AuthTokenT>(value); }
564 template<typename AuthTokenT = Aws::String>
565 CreateReplicationGroupRequest& WithAuthToken(AuthTokenT&& value) { SetAuthToken(std::forward<AuthTokenT>(value)); return *this;}
567
569
582 inline bool GetTransitEncryptionEnabled() const { return m_transitEncryptionEnabled; }
583 inline bool TransitEncryptionEnabledHasBeenSet() const { return m_transitEncryptionEnabledHasBeenSet; }
584 inline void SetTransitEncryptionEnabled(bool value) { m_transitEncryptionEnabledHasBeenSet = true; m_transitEncryptionEnabled = value; }
587
589
600 inline bool GetAtRestEncryptionEnabled() const { return m_atRestEncryptionEnabled; }
601 inline bool AtRestEncryptionEnabledHasBeenSet() const { return m_atRestEncryptionEnabledHasBeenSet; }
602 inline void SetAtRestEncryptionEnabled(bool value) { m_atRestEncryptionEnabledHasBeenSet = true; m_atRestEncryptionEnabled = value; }
605
607
610 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
611 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
612 template<typename KmsKeyIdT = Aws::String>
613 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
614 template<typename KmsKeyIdT = Aws::String>
615 CreateReplicationGroupRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
617
619
622 inline const Aws::Vector<Aws::String>& GetUserGroupIds() const { return m_userGroupIds; }
623 inline bool UserGroupIdsHasBeenSet() const { return m_userGroupIdsHasBeenSet; }
624 template<typename UserGroupIdsT = Aws::Vector<Aws::String>>
625 void SetUserGroupIds(UserGroupIdsT&& value) { m_userGroupIdsHasBeenSet = true; m_userGroupIds = std::forward<UserGroupIdsT>(value); }
626 template<typename UserGroupIdsT = Aws::Vector<Aws::String>>
627 CreateReplicationGroupRequest& WithUserGroupIds(UserGroupIdsT&& value) { SetUserGroupIds(std::forward<UserGroupIdsT>(value)); return *this;}
628 template<typename UserGroupIdsT = Aws::String>
629 CreateReplicationGroupRequest& AddUserGroupIds(UserGroupIdsT&& value) { m_userGroupIdsHasBeenSet = true; m_userGroupIds.emplace_back(std::forward<UserGroupIdsT>(value)); return *this; }
631
633
636 inline const Aws::Vector<LogDeliveryConfigurationRequest>& GetLogDeliveryConfigurations() const { return m_logDeliveryConfigurations; }
637 inline bool LogDeliveryConfigurationsHasBeenSet() const { return m_logDeliveryConfigurationsHasBeenSet; }
638 template<typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
639 void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { m_logDeliveryConfigurationsHasBeenSet = true; m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value); }
640 template<typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
641 CreateReplicationGroupRequest& WithLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { SetLogDeliveryConfigurations(std::forward<LogDeliveryConfigurationsT>(value)); return *this;}
642 template<typename LogDeliveryConfigurationsT = LogDeliveryConfigurationRequest>
643 CreateReplicationGroupRequest& AddLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { m_logDeliveryConfigurationsHasBeenSet = true; m_logDeliveryConfigurations.emplace_back(std::forward<LogDeliveryConfigurationsT>(value)); return *this; }
645
647
654 inline bool GetDataTieringEnabled() const { return m_dataTieringEnabled; }
655 inline bool DataTieringEnabledHasBeenSet() const { return m_dataTieringEnabledHasBeenSet; }
656 inline void SetDataTieringEnabled(bool value) { m_dataTieringEnabledHasBeenSet = true; m_dataTieringEnabled = value; }
659
661
668 inline NetworkType GetNetworkType() const { return m_networkType; }
669 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
670 inline void SetNetworkType(NetworkType value) { m_networkTypeHasBeenSet = true; m_networkType = value; }
673
675
682 inline IpDiscovery GetIpDiscovery() const { return m_ipDiscovery; }
683 inline bool IpDiscoveryHasBeenSet() const { return m_ipDiscoveryHasBeenSet; }
684 inline void SetIpDiscovery(IpDiscovery value) { m_ipDiscoveryHasBeenSet = true; m_ipDiscovery = value; }
687
689
703 inline TransitEncryptionMode GetTransitEncryptionMode() const { return m_transitEncryptionMode; }
704 inline bool TransitEncryptionModeHasBeenSet() const { return m_transitEncryptionModeHasBeenSet; }
705 inline void SetTransitEncryptionMode(TransitEncryptionMode value) { m_transitEncryptionModeHasBeenSet = true; m_transitEncryptionMode = value; }
708
710
718 inline ClusterMode GetClusterMode() const { return m_clusterMode; }
719 inline bool ClusterModeHasBeenSet() const { return m_clusterModeHasBeenSet; }
720 inline void SetClusterMode(ClusterMode value) { m_clusterModeHasBeenSet = true; m_clusterMode = value; }
723
725
729 inline const Aws::String& GetServerlessCacheSnapshotName() const { return m_serverlessCacheSnapshotName; }
730 inline bool ServerlessCacheSnapshotNameHasBeenSet() const { return m_serverlessCacheSnapshotNameHasBeenSet; }
731 template<typename ServerlessCacheSnapshotNameT = Aws::String>
732 void SetServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT&& value) { m_serverlessCacheSnapshotNameHasBeenSet = true; m_serverlessCacheSnapshotName = std::forward<ServerlessCacheSnapshotNameT>(value); }
733 template<typename ServerlessCacheSnapshotNameT = Aws::String>
734 CreateReplicationGroupRequest& WithServerlessCacheSnapshotName(ServerlessCacheSnapshotNameT&& value) { SetServerlessCacheSnapshotName(std::forward<ServerlessCacheSnapshotNameT>(value)); return *this;}
736 private:
737
738 Aws::String m_replicationGroupId;
739 bool m_replicationGroupIdHasBeenSet = false;
740
741 Aws::String m_replicationGroupDescription;
742 bool m_replicationGroupDescriptionHasBeenSet = false;
743
744 Aws::String m_globalReplicationGroupId;
745 bool m_globalReplicationGroupIdHasBeenSet = false;
746
747 Aws::String m_primaryClusterId;
748 bool m_primaryClusterIdHasBeenSet = false;
749
750 bool m_automaticFailoverEnabled{false};
751 bool m_automaticFailoverEnabledHasBeenSet = false;
752
753 bool m_multiAZEnabled{false};
754 bool m_multiAZEnabledHasBeenSet = false;
755
756 int m_numCacheClusters{0};
757 bool m_numCacheClustersHasBeenSet = false;
758
759 Aws::Vector<Aws::String> m_preferredCacheClusterAZs;
760 bool m_preferredCacheClusterAZsHasBeenSet = false;
761
762 int m_numNodeGroups{0};
763 bool m_numNodeGroupsHasBeenSet = false;
764
765 int m_replicasPerNodeGroup{0};
766 bool m_replicasPerNodeGroupHasBeenSet = false;
767
768 Aws::Vector<NodeGroupConfiguration> m_nodeGroupConfiguration;
769 bool m_nodeGroupConfigurationHasBeenSet = false;
770
771 Aws::String m_cacheNodeType;
772 bool m_cacheNodeTypeHasBeenSet = false;
773
774 Aws::String m_engine;
775 bool m_engineHasBeenSet = false;
776
777 Aws::String m_engineVersion;
778 bool m_engineVersionHasBeenSet = false;
779
780 Aws::String m_cacheParameterGroupName;
781 bool m_cacheParameterGroupNameHasBeenSet = false;
782
783 Aws::String m_cacheSubnetGroupName;
784 bool m_cacheSubnetGroupNameHasBeenSet = false;
785
786 Aws::Vector<Aws::String> m_cacheSecurityGroupNames;
787 bool m_cacheSecurityGroupNamesHasBeenSet = false;
788
789 Aws::Vector<Aws::String> m_securityGroupIds;
790 bool m_securityGroupIdsHasBeenSet = false;
791
792 Aws::Vector<Tag> m_tags;
793 bool m_tagsHasBeenSet = false;
794
795 Aws::Vector<Aws::String> m_snapshotArns;
796 bool m_snapshotArnsHasBeenSet = false;
797
798 Aws::String m_snapshotName;
799 bool m_snapshotNameHasBeenSet = false;
800
801 Aws::String m_preferredMaintenanceWindow;
802 bool m_preferredMaintenanceWindowHasBeenSet = false;
803
804 int m_port{0};
805 bool m_portHasBeenSet = false;
806
807 Aws::String m_notificationTopicArn;
808 bool m_notificationTopicArnHasBeenSet = false;
809
810 bool m_autoMinorVersionUpgrade{false};
811 bool m_autoMinorVersionUpgradeHasBeenSet = false;
812
813 int m_snapshotRetentionLimit{0};
814 bool m_snapshotRetentionLimitHasBeenSet = false;
815
816 Aws::String m_snapshotWindow;
817 bool m_snapshotWindowHasBeenSet = false;
818
819 Aws::String m_authToken;
820 bool m_authTokenHasBeenSet = false;
821
822 bool m_transitEncryptionEnabled{false};
823 bool m_transitEncryptionEnabledHasBeenSet = false;
824
825 bool m_atRestEncryptionEnabled{false};
826 bool m_atRestEncryptionEnabledHasBeenSet = false;
827
828 Aws::String m_kmsKeyId;
829 bool m_kmsKeyIdHasBeenSet = false;
830
831 Aws::Vector<Aws::String> m_userGroupIds;
832 bool m_userGroupIdsHasBeenSet = false;
833
834 Aws::Vector<LogDeliveryConfigurationRequest> m_logDeliveryConfigurations;
835 bool m_logDeliveryConfigurationsHasBeenSet = false;
836
837 bool m_dataTieringEnabled{false};
838 bool m_dataTieringEnabledHasBeenSet = false;
839
840 NetworkType m_networkType{NetworkType::NOT_SET};
841 bool m_networkTypeHasBeenSet = false;
842
843 IpDiscovery m_ipDiscovery{IpDiscovery::NOT_SET};
844 bool m_ipDiscoveryHasBeenSet = false;
845
847 bool m_transitEncryptionModeHasBeenSet = false;
848
849 ClusterMode m_clusterMode{ClusterMode::NOT_SET};
850 bool m_clusterModeHasBeenSet = false;
851
852 Aws::String m_serverlessCacheSnapshotName;
853 bool m_serverlessCacheSnapshotNameHasBeenSet = false;
854 };
855
856} // namespace Model
857} // namespace ElastiCache
858} // 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