7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticache/ElastiCache_EXPORTS.h>
12#include <aws/elasticache/model/AutomaticFailoverStatus.h>
13#include <aws/elasticache/model/DataTieringStatus.h>
14#include <aws/elasticache/model/Durability.h>
15#include <aws/elasticache/model/NodeSnapshot.h>
25namespace ElastiCache {
50 template <
typename SnapshotNameT = Aws::String>
52 m_snapshotNameHasBeenSet =
true;
53 m_snapshotName = std::forward<SnapshotNameT>(value);
55 template <
typename SnapshotNameT = Aws::String>
68 template <
typename ReplicationGroupIdT = Aws::String>
70 m_replicationGroupIdHasBeenSet =
true;
71 m_replicationGroupId = std::forward<ReplicationGroupIdT>(value);
73 template <
typename ReplicationGroupIdT = Aws::String>
86 template <
typename ReplicationGroupDescriptionT = Aws::String>
88 m_replicationGroupDescriptionHasBeenSet =
true;
89 m_replicationGroupDescription = std::forward<ReplicationGroupDescriptionT>(value);
91 template <
typename ReplicationGroupDescriptionT = Aws::String>
104 template <
typename CacheClusterIdT = Aws::String>
106 m_cacheClusterIdHasBeenSet =
true;
107 m_cacheClusterId = std::forward<CacheClusterIdT>(value);
109 template <
typename CacheClusterIdT = Aws::String>
124 template <
typename SnapshotStatusT = Aws::String>
126 m_snapshotStatusHasBeenSet =
true;
127 m_snapshotStatus = std::forward<SnapshotStatusT>(value);
129 template <
typename SnapshotStatusT = Aws::String>
143 template <
typename SnapshotSourceT = Aws::String>
145 m_snapshotSourceHasBeenSet =
true;
146 m_snapshotSource = std::forward<SnapshotSourceT>(value);
148 template <
typename SnapshotSourceT = Aws::String>
233 template <
typename CacheNodeTypeT = Aws::String>
235 m_cacheNodeTypeHasBeenSet =
true;
236 m_cacheNodeType = std::forward<CacheNodeTypeT>(value);
238 template <
typename CacheNodeTypeT = Aws::String>
252 template <
typename EngineT = Aws::String>
254 m_engineHasBeenSet =
true;
255 m_engine = std::forward<EngineT>(value);
257 template <
typename EngineT = Aws::String>
271 template <
typename EngineVersionT = Aws::String>
273 m_engineVersionHasBeenSet =
true;
274 m_engineVersion = std::forward<EngineVersionT>(value);
276 template <
typename EngineVersionT = Aws::String>
292 m_numCacheNodesHasBeenSet =
true;
293 m_numCacheNodes = value;
307 template <
typename PreferredAvailabilityZoneT = Aws::String>
309 m_preferredAvailabilityZoneHasBeenSet =
true;
310 m_preferredAvailabilityZone = std::forward<PreferredAvailabilityZoneT>(value);
312 template <
typename PreferredAvailabilityZoneT = Aws::String>
325 template <
typename PreferredOutpostArnT = Aws::String>
327 m_preferredOutpostArnHasBeenSet =
true;
328 m_preferredOutpostArn = std::forward<PreferredOutpostArnT>(value);
330 template <
typename PreferredOutpostArnT = Aws::String>
343 template <
typename CacheClusterCreateTimeT = Aws::Utils::DateTime>
345 m_cacheClusterCreateTimeHasBeenSet =
true;
346 m_cacheClusterCreateTime = std::forward<CacheClusterCreateTimeT>(value);
348 template <
typename CacheClusterCreateTimeT = Aws::Utils::DateTime>
368 template <
typename PreferredMa
intenanceWindowT = Aws::String>
370 m_preferredMaintenanceWindowHasBeenSet =
true;
371 m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value);
373 template <
typename PreferredMa
intenanceWindowT = Aws::String>
387 template <
typename TopicArnT = Aws::String>
389 m_topicArnHasBeenSet =
true;
390 m_topicArn = std::forward<TopicArnT>(value);
392 template <
typename TopicArnT = Aws::String>
406 m_portHasBeenSet =
true;
421 template <
typename CacheParameterGroupNameT = Aws::String>
423 m_cacheParameterGroupNameHasBeenSet =
true;
424 m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value);
426 template <
typename CacheParameterGroupNameT = Aws::String>
439 template <
typename CacheSubnetGroupNameT = Aws::String>
441 m_cacheSubnetGroupNameHasBeenSet =
true;
442 m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value);
444 template <
typename CacheSubnetGroupNameT = Aws::String>
458 template <
typename VpcIdT = Aws::String>
460 m_vpcIdHasBeenSet =
true;
461 m_vpcId = std::forward<VpcIdT>(value);
463 template <
typename VpcIdT = Aws::String>
465 SetVpcId(std::forward<VpcIdT>(value));
480 m_autoMinorVersionUpgradeHasBeenSet =
true;
481 m_autoMinorVersionUpgrade = value;
502 m_snapshotRetentionLimitHasBeenSet =
true;
503 m_snapshotRetentionLimit = value;
518 template <
typename SnapshotWindowT = Aws::String>
520 m_snapshotWindowHasBeenSet =
true;
521 m_snapshotWindow = std::forward<SnapshotWindowT>(value);
523 template <
typename SnapshotWindowT = Aws::String>
539 m_numNodeGroupsHasBeenSet =
true;
540 m_numNodeGroups = value;
556 m_automaticFailoverHasBeenSet =
true;
557 m_automaticFailover = value;
571 template <
typename NodeSnapshotsT = Aws::Vector<NodeSnapshot>>
573 m_nodeSnapshotsHasBeenSet =
true;
574 m_nodeSnapshots = std::forward<NodeSnapshotsT>(value);
576 template <
typename NodeSnapshotsT = Aws::Vector<NodeSnapshot>>
581 template <
typename NodeSnapshotsT = NodeSnapshot>
583 m_nodeSnapshotsHasBeenSet =
true;
584 m_nodeSnapshots.emplace_back(std::forward<NodeSnapshotsT>(value));
595 template <
typename KmsKeyIdT = Aws::String>
597 m_kmsKeyIdHasBeenSet =
true;
598 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
600 template <
typename KmsKeyIdT = Aws::String>
613 template <
typename ARNT = Aws::String>
615 m_aRNHasBeenSet =
true;
616 m_aRN = std::forward<ARNT>(value);
618 template <
typename ARNT = Aws::String>
620 SetARN(std::forward<ARNT>(value));
636 m_dataTieringHasBeenSet =
true;
637 m_dataTiering = value;
655 m_durabilityHasBeenSet =
true;
656 m_durability = value;
682 int m_numCacheNodes{0};
702 bool m_autoMinorVersionUpgrade{
false};
704 int m_snapshotRetentionLimit{0};
708 int m_numNodeGroups{0};
721 bool m_snapshotNameHasBeenSet =
false;
722 bool m_replicationGroupIdHasBeenSet =
false;
723 bool m_replicationGroupDescriptionHasBeenSet =
false;
724 bool m_cacheClusterIdHasBeenSet =
false;
725 bool m_snapshotStatusHasBeenSet =
false;
726 bool m_snapshotSourceHasBeenSet =
false;
727 bool m_cacheNodeTypeHasBeenSet =
false;
728 bool m_engineHasBeenSet =
false;
729 bool m_engineVersionHasBeenSet =
false;
730 bool m_numCacheNodesHasBeenSet =
false;
731 bool m_preferredAvailabilityZoneHasBeenSet =
false;
732 bool m_preferredOutpostArnHasBeenSet =
false;
733 bool m_cacheClusterCreateTimeHasBeenSet =
false;
734 bool m_preferredMaintenanceWindowHasBeenSet =
false;
735 bool m_topicArnHasBeenSet =
false;
736 bool m_portHasBeenSet =
false;
737 bool m_cacheParameterGroupNameHasBeenSet =
false;
738 bool m_cacheSubnetGroupNameHasBeenSet =
false;
739 bool m_vpcIdHasBeenSet =
false;
740 bool m_autoMinorVersionUpgradeHasBeenSet =
false;
741 bool m_snapshotRetentionLimitHasBeenSet =
false;
742 bool m_snapshotWindowHasBeenSet =
false;
743 bool m_numNodeGroupsHasBeenSet =
false;
744 bool m_automaticFailoverHasBeenSet =
false;
745 bool m_nodeSnapshotsHasBeenSet =
false;
746 bool m_kmsKeyIdHasBeenSet =
false;
747 bool m_aRNHasBeenSet =
false;
748 bool m_dataTieringHasBeenSet =
false;
749 bool m_durabilityHasBeenSet =
false;
Snapshot & WithCacheNodeType(CacheNodeTypeT &&value)
const Aws::String & GetReplicationGroupId() const
const Aws::String & GetSnapshotSource() const
Snapshot & WithAutomaticFailover(AutomaticFailoverStatus value)
const Aws::String & GetCacheParameterGroupName() const
bool NumCacheNodesHasBeenSet() const
Snapshot & WithKmsKeyId(KmsKeyIdT &&value)
bool PortHasBeenSet() const
Snapshot & WithPort(int value)
Snapshot & WithCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
bool CacheNodeTypeHasBeenSet() const
Snapshot & AddNodeSnapshots(NodeSnapshotsT &&value)
const Aws::String & GetVpcId() const
bool EngineHasBeenSet() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetReplicationGroupId(ReplicationGroupIdT &&value)
bool TopicArnHasBeenSet() const
const Aws::String & GetCacheSubnetGroupName() const
bool SnapshotSourceHasBeenSet() const
AWS_ELASTICACHE_API Snapshot(const Aws::Utils::Xml::XmlNode &xmlNode)
bool AutoMinorVersionUpgradeHasBeenSet() const
void SetEngineVersion(EngineVersionT &&value)
Snapshot & WithSnapshotStatus(SnapshotStatusT &&value)
bool CacheClusterIdHasBeenSet() const
bool CacheParameterGroupNameHasBeenSet() const
bool KmsKeyIdHasBeenSet() const
const Aws::String & GetReplicationGroupDescription() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetNumCacheNodes(int value)
void SetNodeSnapshots(NodeSnapshotsT &&value)
Snapshot & WithVpcId(VpcIdT &&value)
Snapshot & WithNumCacheNodes(int value)
const Aws::String & GetEngine() const
int GetNumCacheNodes() const
bool VpcIdHasBeenSet() const
Snapshot & WithCacheClusterCreateTime(CacheClusterCreateTimeT &&value)
bool GetAutoMinorVersionUpgrade() const
const Aws::String & GetSnapshotWindow() const
const Aws::String & GetTopicArn() const
void SetCacheParameterGroupName(CacheParameterGroupNameT &&value)
const Aws::String & GetCacheClusterId() const
Snapshot & WithDurability(Durability value)
void SetCacheClusterId(CacheClusterIdT &&value)
Snapshot & WithPreferredOutpostArn(PreferredOutpostArnT &&value)
const Aws::String & GetSnapshotStatus() const
const Aws::String & GetPreferredOutpostArn() const
void SetDataTiering(DataTieringStatus value)
void SetReplicationGroupDescription(ReplicationGroupDescriptionT &&value)
const Aws::String & GetPreferredAvailabilityZone() const
Snapshot & WithNumNodeGroups(int value)
AutomaticFailoverStatus GetAutomaticFailover() const
Snapshot & WithNodeSnapshots(NodeSnapshotsT &&value)
Snapshot & WithEngine(EngineT &&value)
int GetNumNodeGroups() const
void SetSnapshotWindow(SnapshotWindowT &&value)
void SetPreferredOutpostArn(PreferredOutpostArnT &&value)
const Aws::String & GetCacheNodeType() const
bool DataTieringHasBeenSet() const
void SetKmsKeyId(KmsKeyIdT &&value)
Snapshot & WithTopicArn(TopicArnT &&value)
void SetSnapshotRetentionLimit(int value)
bool PreferredAvailabilityZoneHasBeenSet() const
bool AutomaticFailoverHasBeenSet() const
void SetVpcId(VpcIdT &&value)
bool EngineVersionHasBeenSet() const
bool SnapshotRetentionLimitHasBeenSet() const
Snapshot & WithCacheParameterGroupName(CacheParameterGroupNameT &&value)
bool ARNHasBeenSet() const
Snapshot & WithSnapshotSource(SnapshotSourceT &&value)
void SetPreferredAvailabilityZone(PreferredAvailabilityZoneT &&value)
void SetCacheNodeType(CacheNodeTypeT &&value)
bool NumNodeGroupsHasBeenSet() const
bool PreferredOutpostArnHasBeenSet() const
const Aws::String & GetARN() const
void SetEngine(EngineT &&value)
void SetCacheClusterCreateTime(CacheClusterCreateTimeT &&value)
Snapshot & WithEngineVersion(EngineVersionT &&value)
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
Snapshot & WithPreferredAvailabilityZone(PreferredAvailabilityZoneT &&value)
Snapshot & WithReplicationGroupDescription(ReplicationGroupDescriptionT &&value)
int GetSnapshotRetentionLimit() const
Snapshot & WithReplicationGroupId(ReplicationGroupIdT &&value)
Snapshot & WithSnapshotWindow(SnapshotWindowT &&value)
bool SnapshotStatusHasBeenSet() const
void SetAutomaticFailover(AutomaticFailoverStatus value)
AWS_ELASTICACHE_API Snapshot()=default
const Aws::Vector< NodeSnapshot > & GetNodeSnapshots() const
Durability GetDurability() const
bool CacheClusterCreateTimeHasBeenSet() const
bool ReplicationGroupIdHasBeenSet() const
void SetSnapshotSource(SnapshotSourceT &&value)
void SetNumNodeGroups(int value)
bool SnapshotWindowHasBeenSet() const
DataTieringStatus GetDataTiering() const
const Aws::String & GetPreferredMaintenanceWindow() const
const Aws::String & GetKmsKeyId() const
void SetARN(ARNT &&value)
void SetDurability(Durability value)
void SetSnapshotStatus(SnapshotStatusT &&value)
bool CacheSubnetGroupNameHasBeenSet() const
Snapshot & WithARN(ARNT &&value)
Snapshot & WithDataTiering(DataTieringStatus value)
Snapshot & WithSnapshotName(SnapshotNameT &&value)
bool ReplicationGroupDescriptionHasBeenSet() const
AWS_ELASTICACHE_API Snapshot & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Snapshot & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
Snapshot & WithSnapshotRetentionLimit(int value)
Snapshot & WithAutoMinorVersionUpgrade(bool value)
void SetAutoMinorVersionUpgrade(bool value)
void SetCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
bool NodeSnapshotsHasBeenSet() const
void SetTopicArn(TopicArnT &&value)
const Aws::String & GetEngineVersion() const
Snapshot & WithCacheClusterId(CacheClusterIdT &&value)
bool SnapshotNameHasBeenSet() const
void SetSnapshotName(SnapshotNameT &&value)
const Aws::String & GetSnapshotName() const
const Aws::Utils::DateTime & GetCacheClusterCreateTime() const
bool DurabilityHasBeenSet() const
bool PreferredMaintenanceWindowHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream