7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/elasticache/model/AutomaticFailoverStatus.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/elasticache/model/DataTieringStatus.h>
14#include <aws/elasticache/model/NodeSnapshot.h>
55 template<
typename SnapshotNameT = Aws::String>
56 void SetSnapshotName(SnapshotNameT&& value) { m_snapshotNameHasBeenSet =
true; m_snapshotName = std::forward<SnapshotNameT>(value); }
57 template<
typename SnapshotNameT = Aws::String>
67 template<
typename ReplicationGroupIdT = Aws::String>
68 void SetReplicationGroupId(ReplicationGroupIdT&& value) { m_replicationGroupIdHasBeenSet =
true; m_replicationGroupId = std::forward<ReplicationGroupIdT>(value); }
69 template<
typename ReplicationGroupIdT = Aws::String>
79 template<
typename ReplicationGroupDescriptionT = Aws::String>
80 void SetReplicationGroupDescription(ReplicationGroupDescriptionT&& value) { m_replicationGroupDescriptionHasBeenSet =
true; m_replicationGroupDescription = std::forward<ReplicationGroupDescriptionT>(value); }
81 template<
typename ReplicationGroupDescriptionT = Aws::String>
91 template<
typename CacheClusterIdT = Aws::String>
92 void SetCacheClusterId(CacheClusterIdT&& value) { m_cacheClusterIdHasBeenSet =
true; m_cacheClusterId = std::forward<CacheClusterIdT>(value); }
93 template<
typename CacheClusterIdT = Aws::String>
105 template<
typename SnapshotStatusT = Aws::String>
106 void SetSnapshotStatus(SnapshotStatusT&& value) { m_snapshotStatusHasBeenSet =
true; m_snapshotStatus = std::forward<SnapshotStatusT>(value); }
107 template<
typename SnapshotStatusT = Aws::String>
118 template<
typename SnapshotSourceT = Aws::String>
119 void SetSnapshotSource(SnapshotSourceT&& value) { m_snapshotSourceHasBeenSet =
true; m_snapshotSource = std::forward<SnapshotSourceT>(value); }
120 template<
typename SnapshotSourceT = Aws::String>
202 template<
typename CacheNodeTypeT = Aws::String>
203 void SetCacheNodeType(CacheNodeTypeT&& value) { m_cacheNodeTypeHasBeenSet =
true; m_cacheNodeType = std::forward<CacheNodeTypeT>(value); }
204 template<
typename CacheNodeTypeT = Aws::String>
215 template<
typename EngineT = Aws::String>
216 void SetEngine(EngineT&& value) { m_engineHasBeenSet =
true; m_engine = std::forward<EngineT>(value); }
217 template<
typename EngineT = Aws::String>
228 template<
typename EngineVersionT = Aws::String>
229 void SetEngineVersion(EngineVersionT&& value) { m_engineVersionHasBeenSet =
true; m_engineVersion = std::forward<EngineVersionT>(value); }
230 template<
typename EngineVersionT = Aws::String>
242 inline void SetNumCacheNodes(
int value) { m_numCacheNodesHasBeenSet =
true; m_numCacheNodes = value; }
252 template<
typename PreferredAvailabilityZoneT = Aws::String>
253 void SetPreferredAvailabilityZone(PreferredAvailabilityZoneT&& value) { m_preferredAvailabilityZoneHasBeenSet =
true; m_preferredAvailabilityZone = std::forward<PreferredAvailabilityZoneT>(value); }
254 template<
typename PreferredAvailabilityZoneT = Aws::String>
264 template<
typename PreferredOutpostArnT = Aws::String>
265 void SetPreferredOutpostArn(PreferredOutpostArnT&& value) { m_preferredOutpostArnHasBeenSet =
true; m_preferredOutpostArn = std::forward<PreferredOutpostArnT>(value); }
266 template<
typename PreferredOutpostArnT = Aws::String>
276 template<
typename CacheClusterCreateTimeT = Aws::Utils::DateTime>
277 void SetCacheClusterCreateTime(CacheClusterCreateTimeT&& value) { m_cacheClusterCreateTimeHasBeenSet =
true; m_cacheClusterCreateTime = std::forward<CacheClusterCreateTimeT>(value); }
278 template<
typename CacheClusterCreateTimeT = Aws::Utils::DateTime>
295 template<
typename PreferredMa
intenanceWindowT = Aws::String>
296 void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) { m_preferredMaintenanceWindowHasBeenSet =
true; m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value); }
297 template<
typename PreferredMa
intenanceWindowT = Aws::String>
308 template<
typename TopicArnT = Aws::String>
309 void SetTopicArn(TopicArnT&& value) { m_topicArnHasBeenSet =
true; m_topicArn = std::forward<TopicArnT>(value); }
310 template<
typename TopicArnT = Aws::String>
320 inline void SetPort(
int value) { m_portHasBeenSet =
true; m_port = value; }
330 template<
typename CacheParameterGroupNameT = Aws::String>
331 void SetCacheParameterGroupName(CacheParameterGroupNameT&& value) { m_cacheParameterGroupNameHasBeenSet =
true; m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value); }
332 template<
typename CacheParameterGroupNameT = Aws::String>
342 template<
typename CacheSubnetGroupNameT = Aws::String>
343 void SetCacheSubnetGroupName(CacheSubnetGroupNameT&& value) { m_cacheSubnetGroupNameHasBeenSet =
true; m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value); }
344 template<
typename CacheSubnetGroupNameT = Aws::String>
355 template<
typename VpcIdT = Aws::String>
356 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet =
true; m_vpcId = std::forward<VpcIdT>(value); }
357 template<
typename VpcIdT = Aws::String>
397 template<
typename SnapshotWindowT = Aws::String>
398 void SetSnapshotWindow(SnapshotWindowT&& value) { m_snapshotWindowHasBeenSet =
true; m_snapshotWindow = std::forward<SnapshotWindowT>(value); }
399 template<
typename SnapshotWindowT = Aws::String>
411 inline void SetNumNodeGroups(
int value) { m_numNodeGroupsHasBeenSet =
true; m_numNodeGroups = value; }
432 template<
typename NodeSnapshotsT = Aws::Vector<NodeSnapshot>>
433 void SetNodeSnapshots(NodeSnapshotsT&& value) { m_nodeSnapshotsHasBeenSet =
true; m_nodeSnapshots = std::forward<NodeSnapshotsT>(value); }
434 template<
typename NodeSnapshotsT = Aws::Vector<NodeSnapshot>>
436 template<
typename NodeSnapshotsT = NodeSnapshot>
437 Snapshot&
AddNodeSnapshots(NodeSnapshotsT&& value) { m_nodeSnapshotsHasBeenSet =
true; m_nodeSnapshots.emplace_back(std::forward<NodeSnapshotsT>(value));
return *
this; }
446 template<
typename KmsKeyIdT = Aws::String>
447 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
448 template<
typename KmsKeyIdT = Aws::String>
458 template<
typename ARNT = Aws::String>
459 void SetARN(ARNT&& value) { m_aRNHasBeenSet =
true; m_aRN = std::forward<ARNT>(value); }
460 template<
typename ARNT = Aws::String>
480 bool m_snapshotNameHasBeenSet =
false;
483 bool m_replicationGroupIdHasBeenSet =
false;
486 bool m_replicationGroupDescriptionHasBeenSet =
false;
489 bool m_cacheClusterIdHasBeenSet =
false;
492 bool m_snapshotStatusHasBeenSet =
false;
495 bool m_snapshotSourceHasBeenSet =
false;
498 bool m_cacheNodeTypeHasBeenSet =
false;
501 bool m_engineHasBeenSet =
false;
504 bool m_engineVersionHasBeenSet =
false;
506 int m_numCacheNodes{0};
507 bool m_numCacheNodesHasBeenSet =
false;
510 bool m_preferredAvailabilityZoneHasBeenSet =
false;
513 bool m_preferredOutpostArnHasBeenSet =
false;
516 bool m_cacheClusterCreateTimeHasBeenSet =
false;
519 bool m_preferredMaintenanceWindowHasBeenSet =
false;
522 bool m_topicArnHasBeenSet =
false;
525 bool m_portHasBeenSet =
false;
528 bool m_cacheParameterGroupNameHasBeenSet =
false;
531 bool m_cacheSubnetGroupNameHasBeenSet =
false;
534 bool m_vpcIdHasBeenSet =
false;
536 bool m_autoMinorVersionUpgrade{
false};
537 bool m_autoMinorVersionUpgradeHasBeenSet =
false;
539 int m_snapshotRetentionLimit{0};
540 bool m_snapshotRetentionLimitHasBeenSet =
false;
543 bool m_snapshotWindowHasBeenSet =
false;
545 int m_numNodeGroups{0};
546 bool m_numNodeGroupsHasBeenSet =
false;
549 bool m_automaticFailoverHasBeenSet =
false;
552 bool m_nodeSnapshotsHasBeenSet =
false;
555 bool m_kmsKeyIdHasBeenSet =
false;
558 bool m_aRNHasBeenSet =
false;
561 bool m_dataTieringHasBeenSet =
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
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
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 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 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