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/AZMode.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/OutpostMode.h>
16#include <aws/elasticache/model/Tag.h>
21namespace ElastiCache {
56 template <
typename CacheClusterIdT = Aws::String>
58 m_cacheClusterIdHasBeenSet =
true;
59 m_cacheClusterId = std::forward<CacheClusterIdT>(value);
61 template <
typename CacheClusterIdT = Aws::String>
81 template <
typename ReplicationGroupIdT = Aws::String>
83 m_replicationGroupIdHasBeenSet =
true;
84 m_replicationGroupId = std::forward<ReplicationGroupIdT>(value);
86 template <
typename ReplicationGroupIdT = Aws::String>
104 m_aZModeHasBeenSet =
true;
123 template <
typename PreferredAvailabilityZoneT = Aws::String>
125 m_preferredAvailabilityZoneHasBeenSet =
true;
126 m_preferredAvailabilityZone = std::forward<PreferredAvailabilityZoneT>(value);
128 template <
typename PreferredAvailabilityZoneT = Aws::String>
150 template <
typename PreferredAvailabilityZonesT = Aws::Vector<Aws::String>>
152 m_preferredAvailabilityZonesHasBeenSet =
true;
153 m_preferredAvailabilityZones = std::forward<PreferredAvailabilityZonesT>(value);
155 template <
typename PreferredAvailabilityZonesT = Aws::Vector<Aws::String>>
160 template <
typename PreferredAvailabilityZonesT = Aws::String>
162 m_preferredAvailabilityZonesHasBeenSet =
true;
163 m_preferredAvailabilityZones.emplace_back(std::forward<PreferredAvailabilityZonesT>(value));
180 m_numCacheNodesHasBeenSet =
true;
181 m_numCacheNodes = value;
267 template <
typename CacheNodeTypeT = Aws::String>
269 m_cacheNodeTypeHasBeenSet =
true;
270 m_cacheNodeType = std::forward<CacheNodeTypeT>(value);
272 template <
typename CacheNodeTypeT = Aws::String>
286 template <
typename EngineT = Aws::String>
288 m_engineHasBeenSet =
true;
289 m_engine = std::forward<EngineT>(value);
291 template <
typename EngineT = Aws::String>
312 template <
typename EngineVersionT = Aws::String>
314 m_engineVersionHasBeenSet =
true;
315 m_engineVersion = std::forward<EngineVersionT>(value);
317 template <
typename EngineVersionT = Aws::String>
333 template <
typename CacheParameterGroupNameT = Aws::String>
335 m_cacheParameterGroupNameHasBeenSet =
true;
336 m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value);
338 template <
typename CacheParameterGroupNameT = Aws::String>
357 template <
typename CacheSubnetGroupNameT = Aws::String>
359 m_cacheSubnetGroupNameHasBeenSet =
true;
360 m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value);
362 template <
typename CacheSubnetGroupNameT = Aws::String>
377 template <
typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
379 m_cacheSecurityGroupNamesHasBeenSet =
true;
380 m_cacheSecurityGroupNames = std::forward<CacheSecurityGroupNamesT>(value);
382 template <
typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
387 template <
typename CacheSecurityGroupNamesT = Aws::String>
389 m_cacheSecurityGroupNamesHasBeenSet =
true;
390 m_cacheSecurityGroupNames.emplace_back(std::forward<CacheSecurityGroupNamesT>(value));
403 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
405 m_securityGroupIdsHasBeenSet =
true;
406 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
408 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
413 template <
typename SecurityGroupIdsT = Aws::String>
415 m_securityGroupIdsHasBeenSet =
true;
416 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
427 template <
typename TagsT = Aws::Vector<Tag>>
429 m_tagsHasBeenSet =
true;
430 m_tags = std::forward<TagsT>(value);
432 template <
typename TagsT = Aws::Vector<Tag>>
434 SetTags(std::forward<TagsT>(value));
437 template <
typename TagsT = Tag>
439 m_tagsHasBeenSet =
true;
440 m_tags.emplace_back(std::forward<TagsT>(value));
457 template <
typename SnapshotArnsT = Aws::Vector<Aws::String>>
459 m_snapshotArnsHasBeenSet =
true;
460 m_snapshotArns = std::forward<SnapshotArnsT>(value);
462 template <
typename SnapshotArnsT = Aws::Vector<Aws::String>>
467 template <
typename SnapshotArnsT = Aws::String>
469 m_snapshotArnsHasBeenSet =
true;
470 m_snapshotArns.emplace_back(std::forward<SnapshotArnsT>(value));
485 template <
typename SnapshotNameT = Aws::String>
487 m_snapshotNameHasBeenSet =
true;
488 m_snapshotName = std::forward<SnapshotNameT>(value);
490 template <
typename SnapshotNameT = Aws::String>
505 template <
typename PreferredMa
intenanceWindowT = Aws::String>
507 m_preferredMaintenanceWindowHasBeenSet =
true;
508 m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value);
510 template <
typename PreferredMa
intenanceWindowT = Aws::String>
524 m_portHasBeenSet =
true;
541 template <
typename NotificationTopicArnT = Aws::String>
543 m_notificationTopicArnHasBeenSet =
true;
544 m_notificationTopicArn = std::forward<NotificationTopicArnT>(value);
546 template <
typename NotificationTopicArnT = Aws::String>
562 m_autoMinorVersionUpgradeHasBeenSet =
true;
563 m_autoMinorVersionUpgrade = value;
583 m_snapshotRetentionLimitHasBeenSet =
true;
584 m_snapshotRetentionLimit = value;
602 template <
typename SnapshotWindowT = Aws::String>
604 m_snapshotWindowHasBeenSet =
true;
605 m_snapshotWindow = std::forward<SnapshotWindowT>(value);
607 template <
typename SnapshotWindowT = Aws::String>
627 template <
typename AuthTokenT = Aws::String>
629 m_authTokenHasBeenSet =
true;
630 m_authToken = std::forward<AuthTokenT>(value);
632 template <
typename AuthTokenT = Aws::String>
647 m_outpostModeHasBeenSet =
true;
648 m_outpostMode = value;
662 template <
typename PreferredOutpostArnT = Aws::String>
664 m_preferredOutpostArnHasBeenSet =
true;
665 m_preferredOutpostArn = std::forward<PreferredOutpostArnT>(value);
667 template <
typename PreferredOutpostArnT = Aws::String>
680 template <
typename PreferredOutpostArnsT = Aws::Vector<Aws::String>>
682 m_preferredOutpostArnsHasBeenSet =
true;
683 m_preferredOutpostArns = std::forward<PreferredOutpostArnsT>(value);
685 template <
typename PreferredOutpostArnsT = Aws::Vector<Aws::String>>
690 template <
typename PreferredOutpostArnsT = Aws::String>
692 m_preferredOutpostArnsHasBeenSet =
true;
693 m_preferredOutpostArns.emplace_back(std::forward<PreferredOutpostArnsT>(value));
704 template <
typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
706 m_logDeliveryConfigurationsHasBeenSet =
true;
707 m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value);
709 template <
typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
714 template <
typename LogDeliveryConfigurationsT = LogDeliveryConfigurationRequest>
716 m_logDeliveryConfigurationsHasBeenSet =
true;
717 m_logDeliveryConfigurations.emplace_back(std::forward<LogDeliveryConfigurationsT>(value));
729 m_transitEncryptionEnabledHasBeenSet =
true;
730 m_transitEncryptionEnabled = value;
749 m_networkTypeHasBeenSet =
true;
750 m_networkType = value;
769 m_ipDiscoveryHasBeenSet =
true;
770 m_ipDiscovery = value;
788 int m_numCacheNodes{0};
816 bool m_autoMinorVersionUpgrade{
false};
818 int m_snapshotRetentionLimit{0};
832 bool m_transitEncryptionEnabled{
false};
837 bool m_cacheClusterIdHasBeenSet =
false;
838 bool m_replicationGroupIdHasBeenSet =
false;
839 bool m_aZModeHasBeenSet =
false;
840 bool m_preferredAvailabilityZoneHasBeenSet =
false;
841 bool m_preferredAvailabilityZonesHasBeenSet =
false;
842 bool m_numCacheNodesHasBeenSet =
false;
843 bool m_cacheNodeTypeHasBeenSet =
false;
844 bool m_engineHasBeenSet =
false;
845 bool m_engineVersionHasBeenSet =
false;
846 bool m_cacheParameterGroupNameHasBeenSet =
false;
847 bool m_cacheSubnetGroupNameHasBeenSet =
false;
848 bool m_cacheSecurityGroupNamesHasBeenSet =
false;
849 bool m_securityGroupIdsHasBeenSet =
false;
850 bool m_tagsHasBeenSet =
false;
851 bool m_snapshotArnsHasBeenSet =
false;
852 bool m_snapshotNameHasBeenSet =
false;
853 bool m_preferredMaintenanceWindowHasBeenSet =
false;
854 bool m_portHasBeenSet =
false;
855 bool m_notificationTopicArnHasBeenSet =
false;
856 bool m_autoMinorVersionUpgradeHasBeenSet =
false;
857 bool m_snapshotRetentionLimitHasBeenSet =
false;
858 bool m_snapshotWindowHasBeenSet =
false;
859 bool m_authTokenHasBeenSet =
false;
860 bool m_outpostModeHasBeenSet =
false;
861 bool m_preferredOutpostArnHasBeenSet =
false;
862 bool m_preferredOutpostArnsHasBeenSet =
false;
863 bool m_logDeliveryConfigurationsHasBeenSet =
false;
864 bool m_transitEncryptionEnabledHasBeenSet =
false;
865 bool m_networkTypeHasBeenSet =
false;
866 bool m_ipDiscoveryHasBeenSet =
false;
bool TransitEncryptionEnabledHasBeenSet() const
const Aws::String & GetCacheClusterId() const
bool CacheNodeTypeHasBeenSet() const
CreateCacheClusterRequest & WithPreferredOutpostArns(PreferredOutpostArnsT &&value)
const Aws::Vector< Aws::String > & GetSnapshotArns() const
bool AuthTokenHasBeenSet() const
virtual const char * GetServiceRequestName() const override
CreateCacheClusterRequest & WithPreferredOutpostArn(PreferredOutpostArnT &&value)
const Aws::String & GetCacheParameterGroupName() const
CreateCacheClusterRequest & WithNotificationTopicArn(NotificationTopicArnT &&value)
bool CacheSecurityGroupNamesHasBeenSet() const
CreateCacheClusterRequest & WithNumCacheNodes(int value)
CreateCacheClusterRequest & AddTags(TagsT &&value)
int GetNumCacheNodes() const
bool PreferredAvailabilityZonesHasBeenSet() const
const Aws::String & GetAuthToken() const
CreateCacheClusterRequest & AddSnapshotArns(SnapshotArnsT &&value)
void SetSnapshotName(SnapshotNameT &&value)
bool EngineHasBeenSet() const
void SetCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
void SetPreferredAvailabilityZone(PreferredAvailabilityZoneT &&value)
CreateCacheClusterRequest & WithOutpostMode(OutpostMode value)
CreateCacheClusterRequest & AddPreferredOutpostArns(PreferredOutpostArnsT &&value)
IpDiscovery GetIpDiscovery() const
CreateCacheClusterRequest & WithTransitEncryptionEnabled(bool value)
AWS_ELASTICACHE_API CreateCacheClusterRequest()=default
bool EngineVersionHasBeenSet() const
CreateCacheClusterRequest & WithSnapshotWindow(SnapshotWindowT &&value)
void SetAuthToken(AuthTokenT &&value)
CreateCacheClusterRequest & WithPreferredAvailabilityZone(PreferredAvailabilityZoneT &&value)
const Aws::Vector< Aws::String > & GetCacheSecurityGroupNames() const
bool AZModeHasBeenSet() const
bool GetTransitEncryptionEnabled() const
void SetAZMode(AZMode value)
bool PreferredOutpostArnsHasBeenSet() const
void SetPreferredOutpostArns(PreferredOutpostArnsT &&value)
void SetReplicationGroupId(ReplicationGroupIdT &&value)
const Aws::Vector< Aws::String > & GetPreferredAvailabilityZones() const
CreateCacheClusterRequest & WithReplicationGroupId(ReplicationGroupIdT &&value)
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const Aws::String & GetEngine() const
void SetSnapshotWindow(SnapshotWindowT &&value)
void SetCacheNodeType(CacheNodeTypeT &&value)
CreateCacheClusterRequest & WithCacheNodeType(CacheNodeTypeT &&value)
bool TagsHasBeenSet() const
OutpostMode GetOutpostMode() const
void SetIpDiscovery(IpDiscovery value)
const Aws::String & GetPreferredOutpostArn() const
bool PreferredMaintenanceWindowHasBeenSet() const
CreateCacheClusterRequest & WithCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
const Aws::String & GetReplicationGroupId() const
CreateCacheClusterRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
const Aws::Vector< Tag > & GetTags() const
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
CreateCacheClusterRequest & WithCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
bool GetAutoMinorVersionUpgrade() const
bool AutoMinorVersionUpgradeHasBeenSet() const
CreateCacheClusterRequest & AddCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
bool NotificationTopicArnHasBeenSet() const
void SetSnapshotArns(SnapshotArnsT &&value)
void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
bool NumCacheNodesHasBeenSet() const
void SetNetworkType(NetworkType value)
CreateCacheClusterRequest & WithAuthToken(AuthTokenT &&value)
CreateCacheClusterRequest & WithEngineVersion(EngineVersionT &&value)
bool ReplicationGroupIdHasBeenSet() const
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
const Aws::Vector< LogDeliveryConfigurationRequest > & GetLogDeliveryConfigurations() const
const Aws::Vector< Aws::String > & GetPreferredOutpostArns() const
const Aws::String & GetCacheSubnetGroupName() const
CreateCacheClusterRequest & WithPort(int value)
CreateCacheClusterRequest & WithSnapshotName(SnapshotNameT &&value)
CreateCacheClusterRequest & WithNetworkType(NetworkType value)
bool SecurityGroupIdsHasBeenSet() const
bool SnapshotRetentionLimitHasBeenSet() const
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
bool OutpostModeHasBeenSet() const
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
void SetCacheClusterId(CacheClusterIdT &&value)
CreateCacheClusterRequest & AddLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
CreateCacheClusterRequest & WithTags(TagsT &&value)
const Aws::String & GetPreferredMaintenanceWindow() const
bool CacheParameterGroupNameHasBeenSet() const
CreateCacheClusterRequest & WithSnapshotArns(SnapshotArnsT &&value)
bool CacheSubnetGroupNameHasBeenSet() const
bool IpDiscoveryHasBeenSet() const
void SetTransitEncryptionEnabled(bool value)
CreateCacheClusterRequest & WithCacheClusterId(CacheClusterIdT &&value)
bool LogDeliveryConfigurationsHasBeenSet() const
const Aws::String & GetNotificationTopicArn() const
CreateCacheClusterRequest & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
const Aws::String & GetEngineVersion() const
bool PortHasBeenSet() const
CreateCacheClusterRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
void SetPreferredAvailabilityZones(PreferredAvailabilityZonesT &&value)
CreateCacheClusterRequest & WithCacheParameterGroupName(CacheParameterGroupNameT &&value)
void SetTags(TagsT &&value)
bool PreferredAvailabilityZoneHasBeenSet() const
bool SnapshotWindowHasBeenSet() const
CreateCacheClusterRequest & AddPreferredAvailabilityZones(PreferredAvailabilityZonesT &&value)
int GetSnapshotRetentionLimit() const
CreateCacheClusterRequest & WithSnapshotRetentionLimit(int value)
const Aws::String & GetPreferredAvailabilityZone() const
bool SnapshotArnsHasBeenSet() const
CreateCacheClusterRequest & WithLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
bool NetworkTypeHasBeenSet() const
bool PreferredOutpostArnHasBeenSet() const
void SetEngine(EngineT &&value)
CreateCacheClusterRequest & WithPreferredAvailabilityZones(PreferredAvailabilityZonesT &&value)
CreateCacheClusterRequest & WithIpDiscovery(IpDiscovery value)
void SetNumCacheNodes(int value)
void SetPreferredOutpostArn(PreferredOutpostArnT &&value)
CreateCacheClusterRequest & WithEngine(EngineT &&value)
bool CacheClusterIdHasBeenSet() const
void SetNotificationTopicArn(NotificationTopicArnT &&value)
const Aws::String & GetSnapshotName() const
bool SnapshotNameHasBeenSet() const
const Aws::String & GetSnapshotWindow() const
CreateCacheClusterRequest & WithAutoMinorVersionUpgrade(bool value)
void SetEngineVersion(EngineVersionT &&value)
CreateCacheClusterRequest & WithAZMode(AZMode value)
void SetOutpostMode(OutpostMode value)
NetworkType GetNetworkType() const
void SetCacheParameterGroupName(CacheParameterGroupNameT &&value)
const Aws::String & GetCacheNodeType() const
void SetCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
void SetSnapshotRetentionLimit(int value)
void SetAutoMinorVersionUpgrade(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector