AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
Snapshot.h
1
6#pragma once
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/redshift/Redshift_EXPORTS.h>
12#include <aws/redshift/model/AccountWithRestoreAccess.h>
13#include <aws/redshift/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace Redshift {
24namespace Model {
25
31class Snapshot {
32 public:
33 AWS_REDSHIFT_API Snapshot() = default;
34 AWS_REDSHIFT_API Snapshot(const Aws::Utils::Xml::XmlNode& xmlNode);
35 AWS_REDSHIFT_API Snapshot& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
36
37 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const Aws::String& GetSnapshotIdentifier() const { return m_snapshotIdentifier; }
45 inline bool SnapshotIdentifierHasBeenSet() const { return m_snapshotIdentifierHasBeenSet; }
46 template <typename SnapshotIdentifierT = Aws::String>
47 void SetSnapshotIdentifier(SnapshotIdentifierT&& value) {
48 m_snapshotIdentifierHasBeenSet = true;
49 m_snapshotIdentifier = std::forward<SnapshotIdentifierT>(value);
50 }
51 template <typename SnapshotIdentifierT = Aws::String>
52 Snapshot& WithSnapshotIdentifier(SnapshotIdentifierT&& value) {
53 SetSnapshotIdentifier(std::forward<SnapshotIdentifierT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
63 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
64 template <typename ClusterIdentifierT = Aws::String>
65 void SetClusterIdentifier(ClusterIdentifierT&& value) {
66 m_clusterIdentifierHasBeenSet = true;
67 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
68 }
69 template <typename ClusterIdentifierT = Aws::String>
70 Snapshot& WithClusterIdentifier(ClusterIdentifierT&& value) {
71 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
72 return *this;
73 }
75
77
81 inline const Aws::Utils::DateTime& GetSnapshotCreateTime() const { return m_snapshotCreateTime; }
82 inline bool SnapshotCreateTimeHasBeenSet() const { return m_snapshotCreateTimeHasBeenSet; }
83 template <typename SnapshotCreateTimeT = Aws::Utils::DateTime>
84 void SetSnapshotCreateTime(SnapshotCreateTimeT&& value) {
85 m_snapshotCreateTimeHasBeenSet = true;
86 m_snapshotCreateTime = std::forward<SnapshotCreateTimeT>(value);
87 }
88 template <typename SnapshotCreateTimeT = Aws::Utils::DateTime>
89 Snapshot& WithSnapshotCreateTime(SnapshotCreateTimeT&& value) {
90 SetSnapshotCreateTime(std::forward<SnapshotCreateTimeT>(value));
91 return *this;
92 }
94
96
104 inline const Aws::String& GetStatus() const { return m_status; }
105 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
106 template <typename StatusT = Aws::String>
107 void SetStatus(StatusT&& value) {
108 m_statusHasBeenSet = true;
109 m_status = std::forward<StatusT>(value);
110 }
111 template <typename StatusT = Aws::String>
112 Snapshot& WithStatus(StatusT&& value) {
113 SetStatus(std::forward<StatusT>(value));
114 return *this;
115 }
117
119
122 inline int GetPort() const { return m_port; }
123 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
124 inline void SetPort(int value) {
125 m_portHasBeenSet = true;
126 m_port = value;
127 }
128 inline Snapshot& WithPort(int value) {
129 SetPort(value);
130 return *this;
131 }
133
135
138 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
139 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
140 template <typename AvailabilityZoneT = Aws::String>
141 void SetAvailabilityZone(AvailabilityZoneT&& value) {
142 m_availabilityZoneHasBeenSet = true;
143 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
144 }
145 template <typename AvailabilityZoneT = Aws::String>
146 Snapshot& WithAvailabilityZone(AvailabilityZoneT&& value) {
147 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
148 return *this;
149 }
151
153
156 inline const Aws::Utils::DateTime& GetClusterCreateTime() const { return m_clusterCreateTime; }
157 inline bool ClusterCreateTimeHasBeenSet() const { return m_clusterCreateTimeHasBeenSet; }
158 template <typename ClusterCreateTimeT = Aws::Utils::DateTime>
159 void SetClusterCreateTime(ClusterCreateTimeT&& value) {
160 m_clusterCreateTimeHasBeenSet = true;
161 m_clusterCreateTime = std::forward<ClusterCreateTimeT>(value);
162 }
163 template <typename ClusterCreateTimeT = Aws::Utils::DateTime>
164 Snapshot& WithClusterCreateTime(ClusterCreateTimeT&& value) {
165 SetClusterCreateTime(std::forward<ClusterCreateTimeT>(value));
166 return *this;
167 }
169
171
174 inline const Aws::String& GetMasterUsername() const { return m_masterUsername; }
175 inline bool MasterUsernameHasBeenSet() const { return m_masterUsernameHasBeenSet; }
176 template <typename MasterUsernameT = Aws::String>
177 void SetMasterUsername(MasterUsernameT&& value) {
178 m_masterUsernameHasBeenSet = true;
179 m_masterUsername = std::forward<MasterUsernameT>(value);
180 }
181 template <typename MasterUsernameT = Aws::String>
182 Snapshot& WithMasterUsername(MasterUsernameT&& value) {
183 SetMasterUsername(std::forward<MasterUsernameT>(value));
184 return *this;
185 }
187
189
193 inline const Aws::String& GetClusterVersion() const { return m_clusterVersion; }
194 inline bool ClusterVersionHasBeenSet() const { return m_clusterVersionHasBeenSet; }
195 template <typename ClusterVersionT = Aws::String>
196 void SetClusterVersion(ClusterVersionT&& value) {
197 m_clusterVersionHasBeenSet = true;
198 m_clusterVersion = std::forward<ClusterVersionT>(value);
199 }
200 template <typename ClusterVersionT = Aws::String>
201 Snapshot& WithClusterVersion(ClusterVersionT&& value) {
202 SetClusterVersion(std::forward<ClusterVersionT>(value));
203 return *this;
204 }
206
208
212 inline const Aws::String& GetEngineFullVersion() const { return m_engineFullVersion; }
213 inline bool EngineFullVersionHasBeenSet() const { return m_engineFullVersionHasBeenSet; }
214 template <typename EngineFullVersionT = Aws::String>
215 void SetEngineFullVersion(EngineFullVersionT&& value) {
216 m_engineFullVersionHasBeenSet = true;
217 m_engineFullVersion = std::forward<EngineFullVersionT>(value);
218 }
219 template <typename EngineFullVersionT = Aws::String>
220 Snapshot& WithEngineFullVersion(EngineFullVersionT&& value) {
221 SetEngineFullVersion(std::forward<EngineFullVersionT>(value));
222 return *this;
223 }
225
227
231 inline const Aws::String& GetSnapshotType() const { return m_snapshotType; }
232 inline bool SnapshotTypeHasBeenSet() const { return m_snapshotTypeHasBeenSet; }
233 template <typename SnapshotTypeT = Aws::String>
234 void SetSnapshotType(SnapshotTypeT&& value) {
235 m_snapshotTypeHasBeenSet = true;
236 m_snapshotType = std::forward<SnapshotTypeT>(value);
237 }
238 template <typename SnapshotTypeT = Aws::String>
239 Snapshot& WithSnapshotType(SnapshotTypeT&& value) {
240 SetSnapshotType(std::forward<SnapshotTypeT>(value));
241 return *this;
242 }
244
246
249 inline const Aws::String& GetNodeType() const { return m_nodeType; }
250 inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; }
251 template <typename NodeTypeT = Aws::String>
252 void SetNodeType(NodeTypeT&& value) {
253 m_nodeTypeHasBeenSet = true;
254 m_nodeType = std::forward<NodeTypeT>(value);
255 }
256 template <typename NodeTypeT = Aws::String>
257 Snapshot& WithNodeType(NodeTypeT&& value) {
258 SetNodeType(std::forward<NodeTypeT>(value));
259 return *this;
260 }
262
264
267 inline int GetNumberOfNodes() const { return m_numberOfNodes; }
268 inline bool NumberOfNodesHasBeenSet() const { return m_numberOfNodesHasBeenSet; }
269 inline void SetNumberOfNodes(int value) {
270 m_numberOfNodesHasBeenSet = true;
271 m_numberOfNodes = value;
272 }
273 inline Snapshot& WithNumberOfNodes(int value) {
274 SetNumberOfNodes(value);
275 return *this;
276 }
278
280
283 inline const Aws::String& GetDBName() const { return m_dBName; }
284 inline bool DBNameHasBeenSet() const { return m_dBNameHasBeenSet; }
285 template <typename DBNameT = Aws::String>
286 void SetDBName(DBNameT&& value) {
287 m_dBNameHasBeenSet = true;
288 m_dBName = std::forward<DBNameT>(value);
289 }
290 template <typename DBNameT = Aws::String>
291 Snapshot& WithDBName(DBNameT&& value) {
292 SetDBName(std::forward<DBNameT>(value));
293 return *this;
294 }
296
298
302 inline const Aws::String& GetVpcId() const { return m_vpcId; }
303 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
304 template <typename VpcIdT = Aws::String>
305 void SetVpcId(VpcIdT&& value) {
306 m_vpcIdHasBeenSet = true;
307 m_vpcId = std::forward<VpcIdT>(value);
308 }
309 template <typename VpcIdT = Aws::String>
310 Snapshot& WithVpcId(VpcIdT&& value) {
311 SetVpcId(std::forward<VpcIdT>(value));
312 return *this;
313 }
315
317
320 inline bool GetEncrypted() const { return m_encrypted; }
321 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
322 inline void SetEncrypted(bool value) {
323 m_encryptedHasBeenSet = true;
324 m_encrypted = value;
325 }
326 inline Snapshot& WithEncrypted(bool value) {
327 SetEncrypted(value);
328 return *this;
329 }
331
333
337 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
338 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
339 template <typename KmsKeyIdT = Aws::String>
340 void SetKmsKeyId(KmsKeyIdT&& value) {
341 m_kmsKeyIdHasBeenSet = true;
342 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
343 }
344 template <typename KmsKeyIdT = Aws::String>
345 Snapshot& WithKmsKeyId(KmsKeyIdT&& value) {
346 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
347 return *this;
348 }
350
352
357 inline bool GetEncryptedWithHSM() const { return m_encryptedWithHSM; }
358 inline bool EncryptedWithHSMHasBeenSet() const { return m_encryptedWithHSMHasBeenSet; }
359 inline void SetEncryptedWithHSM(bool value) {
360 m_encryptedWithHSMHasBeenSet = true;
361 m_encryptedWithHSM = value;
362 }
363 inline Snapshot& WithEncryptedWithHSM(bool value) {
364 SetEncryptedWithHSM(value);
365 return *this;
366 }
368
370
375 inline const Aws::Vector<AccountWithRestoreAccess>& GetAccountsWithRestoreAccess() const { return m_accountsWithRestoreAccess; }
376 inline bool AccountsWithRestoreAccessHasBeenSet() const { return m_accountsWithRestoreAccessHasBeenSet; }
377 template <typename AccountsWithRestoreAccessT = Aws::Vector<AccountWithRestoreAccess>>
378 void SetAccountsWithRestoreAccess(AccountsWithRestoreAccessT&& value) {
379 m_accountsWithRestoreAccessHasBeenSet = true;
380 m_accountsWithRestoreAccess = std::forward<AccountsWithRestoreAccessT>(value);
381 }
382 template <typename AccountsWithRestoreAccessT = Aws::Vector<AccountWithRestoreAccess>>
383 Snapshot& WithAccountsWithRestoreAccess(AccountsWithRestoreAccessT&& value) {
384 SetAccountsWithRestoreAccess(std::forward<AccountsWithRestoreAccessT>(value));
385 return *this;
386 }
387 template <typename AccountsWithRestoreAccessT = AccountWithRestoreAccess>
388 Snapshot& AddAccountsWithRestoreAccess(AccountsWithRestoreAccessT&& value) {
389 m_accountsWithRestoreAccessHasBeenSet = true;
390 m_accountsWithRestoreAccess.emplace_back(std::forward<AccountsWithRestoreAccessT>(value));
391 return *this;
392 }
394
396
401 inline const Aws::String& GetOwnerAccount() const { return m_ownerAccount; }
402 inline bool OwnerAccountHasBeenSet() const { return m_ownerAccountHasBeenSet; }
403 template <typename OwnerAccountT = Aws::String>
404 void SetOwnerAccount(OwnerAccountT&& value) {
405 m_ownerAccountHasBeenSet = true;
406 m_ownerAccount = std::forward<OwnerAccountT>(value);
407 }
408 template <typename OwnerAccountT = Aws::String>
409 Snapshot& WithOwnerAccount(OwnerAccountT&& value) {
410 SetOwnerAccount(std::forward<OwnerAccountT>(value));
411 return *this;
412 }
414
416
420 inline double GetTotalBackupSizeInMegaBytes() const { return m_totalBackupSizeInMegaBytes; }
421 inline bool TotalBackupSizeInMegaBytesHasBeenSet() const { return m_totalBackupSizeInMegaBytesHasBeenSet; }
422 inline void SetTotalBackupSizeInMegaBytes(double value) {
423 m_totalBackupSizeInMegaBytesHasBeenSet = true;
424 m_totalBackupSizeInMegaBytes = value;
425 }
428 return *this;
429 }
431
433
436 inline double GetActualIncrementalBackupSizeInMegaBytes() const { return m_actualIncrementalBackupSizeInMegaBytes; }
437 inline bool ActualIncrementalBackupSizeInMegaBytesHasBeenSet() const { return m_actualIncrementalBackupSizeInMegaBytesHasBeenSet; }
439 m_actualIncrementalBackupSizeInMegaBytesHasBeenSet = true;
440 m_actualIncrementalBackupSizeInMegaBytes = value;
441 }
444 return *this;
445 }
447
449
453 inline double GetBackupProgressInMegaBytes() const { return m_backupProgressInMegaBytes; }
454 inline bool BackupProgressInMegaBytesHasBeenSet() const { return m_backupProgressInMegaBytesHasBeenSet; }
455 inline void SetBackupProgressInMegaBytes(double value) {
456 m_backupProgressInMegaBytesHasBeenSet = true;
457 m_backupProgressInMegaBytes = value;
458 }
461 return *this;
462 }
464
466
470 inline double GetCurrentBackupRateInMegaBytesPerSecond() const { return m_currentBackupRateInMegaBytesPerSecond; }
471 inline bool CurrentBackupRateInMegaBytesPerSecondHasBeenSet() const { return m_currentBackupRateInMegaBytesPerSecondHasBeenSet; }
473 m_currentBackupRateInMegaBytesPerSecondHasBeenSet = true;
474 m_currentBackupRateInMegaBytesPerSecond = value;
475 }
478 return *this;
479 }
481
483
487 inline long long GetEstimatedSecondsToCompletion() const { return m_estimatedSecondsToCompletion; }
488 inline bool EstimatedSecondsToCompletionHasBeenSet() const { return m_estimatedSecondsToCompletionHasBeenSet; }
489 inline void SetEstimatedSecondsToCompletion(long long value) {
490 m_estimatedSecondsToCompletionHasBeenSet = true;
491 m_estimatedSecondsToCompletion = value;
492 }
495 return *this;
496 }
498
500
504 inline long long GetElapsedTimeInSeconds() const { return m_elapsedTimeInSeconds; }
505 inline bool ElapsedTimeInSecondsHasBeenSet() const { return m_elapsedTimeInSecondsHasBeenSet; }
506 inline void SetElapsedTimeInSeconds(long long value) {
507 m_elapsedTimeInSecondsHasBeenSet = true;
508 m_elapsedTimeInSeconds = value;
509 }
510 inline Snapshot& WithElapsedTimeInSeconds(long long value) {
512 return *this;
513 }
515
517
520 inline const Aws::String& GetSourceRegion() const { return m_sourceRegion; }
521 inline bool SourceRegionHasBeenSet() const { return m_sourceRegionHasBeenSet; }
522 template <typename SourceRegionT = Aws::String>
523 void SetSourceRegion(SourceRegionT&& value) {
524 m_sourceRegionHasBeenSet = true;
525 m_sourceRegion = std::forward<SourceRegionT>(value);
526 }
527 template <typename SourceRegionT = Aws::String>
528 Snapshot& WithSourceRegion(SourceRegionT&& value) {
529 SetSourceRegion(std::forward<SourceRegionT>(value));
530 return *this;
531 }
533
535
538 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
539 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
540 template <typename TagsT = Aws::Vector<Tag>>
541 void SetTags(TagsT&& value) {
542 m_tagsHasBeenSet = true;
543 m_tags = std::forward<TagsT>(value);
544 }
545 template <typename TagsT = Aws::Vector<Tag>>
546 Snapshot& WithTags(TagsT&& value) {
547 SetTags(std::forward<TagsT>(value));
548 return *this;
549 }
550 template <typename TagsT = Tag>
551 Snapshot& AddTags(TagsT&& value) {
552 m_tagsHasBeenSet = true;
553 m_tags.emplace_back(std::forward<TagsT>(value));
554 return *this;
555 }
557
559
563 inline const Aws::Vector<Aws::String>& GetRestorableNodeTypes() const { return m_restorableNodeTypes; }
564 inline bool RestorableNodeTypesHasBeenSet() const { return m_restorableNodeTypesHasBeenSet; }
565 template <typename RestorableNodeTypesT = Aws::Vector<Aws::String>>
566 void SetRestorableNodeTypes(RestorableNodeTypesT&& value) {
567 m_restorableNodeTypesHasBeenSet = true;
568 m_restorableNodeTypes = std::forward<RestorableNodeTypesT>(value);
569 }
570 template <typename RestorableNodeTypesT = Aws::Vector<Aws::String>>
571 Snapshot& WithRestorableNodeTypes(RestorableNodeTypesT&& value) {
572 SetRestorableNodeTypes(std::forward<RestorableNodeTypesT>(value));
573 return *this;
574 }
575 template <typename RestorableNodeTypesT = Aws::String>
576 Snapshot& AddRestorableNodeTypes(RestorableNodeTypesT&& value) {
577 m_restorableNodeTypesHasBeenSet = true;
578 m_restorableNodeTypes.emplace_back(std::forward<RestorableNodeTypesT>(value));
579 return *this;
580 }
582
584
593 inline bool GetEnhancedVpcRouting() const { return m_enhancedVpcRouting; }
594 inline bool EnhancedVpcRoutingHasBeenSet() const { return m_enhancedVpcRoutingHasBeenSet; }
595 inline void SetEnhancedVpcRouting(bool value) {
596 m_enhancedVpcRoutingHasBeenSet = true;
597 m_enhancedVpcRouting = value;
598 }
599 inline Snapshot& WithEnhancedVpcRouting(bool value) {
601 return *this;
602 }
604
606
609 inline const Aws::String& GetMaintenanceTrackName() const { return m_maintenanceTrackName; }
610 inline bool MaintenanceTrackNameHasBeenSet() const { return m_maintenanceTrackNameHasBeenSet; }
611 template <typename MaintenanceTrackNameT = Aws::String>
612 void SetMaintenanceTrackName(MaintenanceTrackNameT&& value) {
613 m_maintenanceTrackNameHasBeenSet = true;
614 m_maintenanceTrackName = std::forward<MaintenanceTrackNameT>(value);
615 }
616 template <typename MaintenanceTrackNameT = Aws::String>
617 Snapshot& WithMaintenanceTrackName(MaintenanceTrackNameT&& value) {
618 SetMaintenanceTrackName(std::forward<MaintenanceTrackNameT>(value));
619 return *this;
620 }
622
624
629 inline int GetManualSnapshotRetentionPeriod() const { return m_manualSnapshotRetentionPeriod; }
630 inline bool ManualSnapshotRetentionPeriodHasBeenSet() const { return m_manualSnapshotRetentionPeriodHasBeenSet; }
631 inline void SetManualSnapshotRetentionPeriod(int value) {
632 m_manualSnapshotRetentionPeriodHasBeenSet = true;
633 m_manualSnapshotRetentionPeriod = value;
634 }
637 return *this;
638 }
640
642
646 inline int GetManualSnapshotRemainingDays() const { return m_manualSnapshotRemainingDays; }
647 inline bool ManualSnapshotRemainingDaysHasBeenSet() const { return m_manualSnapshotRemainingDaysHasBeenSet; }
648 inline void SetManualSnapshotRemainingDays(int value) {
649 m_manualSnapshotRemainingDaysHasBeenSet = true;
650 m_manualSnapshotRemainingDays = value;
651 }
654 return *this;
655 }
657
659
663 inline const Aws::Utils::DateTime& GetSnapshotRetentionStartTime() const { return m_snapshotRetentionStartTime; }
664 inline bool SnapshotRetentionStartTimeHasBeenSet() const { return m_snapshotRetentionStartTimeHasBeenSet; }
665 template <typename SnapshotRetentionStartTimeT = Aws::Utils::DateTime>
666 void SetSnapshotRetentionStartTime(SnapshotRetentionStartTimeT&& value) {
667 m_snapshotRetentionStartTimeHasBeenSet = true;
668 m_snapshotRetentionStartTime = std::forward<SnapshotRetentionStartTimeT>(value);
669 }
670 template <typename SnapshotRetentionStartTimeT = Aws::Utils::DateTime>
671 Snapshot& WithSnapshotRetentionStartTime(SnapshotRetentionStartTimeT&& value) {
672 SetSnapshotRetentionStartTime(std::forward<SnapshotRetentionStartTimeT>(value));
673 return *this;
674 }
676
678
682 inline const Aws::String& GetMasterPasswordSecretArn() const { return m_masterPasswordSecretArn; }
683 inline bool MasterPasswordSecretArnHasBeenSet() const { return m_masterPasswordSecretArnHasBeenSet; }
684 template <typename MasterPasswordSecretArnT = Aws::String>
685 void SetMasterPasswordSecretArn(MasterPasswordSecretArnT&& value) {
686 m_masterPasswordSecretArnHasBeenSet = true;
687 m_masterPasswordSecretArn = std::forward<MasterPasswordSecretArnT>(value);
688 }
689 template <typename MasterPasswordSecretArnT = Aws::String>
690 Snapshot& WithMasterPasswordSecretArn(MasterPasswordSecretArnT&& value) {
691 SetMasterPasswordSecretArn(std::forward<MasterPasswordSecretArnT>(value));
692 return *this;
693 }
695
697
701 inline const Aws::String& GetMasterPasswordSecretKmsKeyId() const { return m_masterPasswordSecretKmsKeyId; }
702 inline bool MasterPasswordSecretKmsKeyIdHasBeenSet() const { return m_masterPasswordSecretKmsKeyIdHasBeenSet; }
703 template <typename MasterPasswordSecretKmsKeyIdT = Aws::String>
704 void SetMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT&& value) {
705 m_masterPasswordSecretKmsKeyIdHasBeenSet = true;
706 m_masterPasswordSecretKmsKeyId = std::forward<MasterPasswordSecretKmsKeyIdT>(value);
707 }
708 template <typename MasterPasswordSecretKmsKeyIdT = Aws::String>
709 Snapshot& WithMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT&& value) {
710 SetMasterPasswordSecretKmsKeyId(std::forward<MasterPasswordSecretKmsKeyIdT>(value));
711 return *this;
712 }
714
716
719 inline const Aws::String& GetSnapshotArn() const { return m_snapshotArn; }
720 inline bool SnapshotArnHasBeenSet() const { return m_snapshotArnHasBeenSet; }
721 template <typename SnapshotArnT = Aws::String>
722 void SetSnapshotArn(SnapshotArnT&& value) {
723 m_snapshotArnHasBeenSet = true;
724 m_snapshotArn = std::forward<SnapshotArnT>(value);
725 }
726 template <typename SnapshotArnT = Aws::String>
727 Snapshot& WithSnapshotArn(SnapshotArnT&& value) {
728 SetSnapshotArn(std::forward<SnapshotArnT>(value));
729 return *this;
730 }
732 private:
733 Aws::String m_snapshotIdentifier;
734
735 Aws::String m_clusterIdentifier;
736
737 Aws::Utils::DateTime m_snapshotCreateTime{};
738
739 Aws::String m_status;
740
741 int m_port{0};
742
743 Aws::String m_availabilityZone;
744
745 Aws::Utils::DateTime m_clusterCreateTime{};
746
747 Aws::String m_masterUsername;
748
749 Aws::String m_clusterVersion;
750
751 Aws::String m_engineFullVersion;
752
753 Aws::String m_snapshotType;
754
755 Aws::String m_nodeType;
756
757 int m_numberOfNodes{0};
758
759 Aws::String m_dBName;
760
761 Aws::String m_vpcId;
762
763 bool m_encrypted{false};
764
765 Aws::String m_kmsKeyId;
766
767 bool m_encryptedWithHSM{false};
768
769 Aws::Vector<AccountWithRestoreAccess> m_accountsWithRestoreAccess;
770
771 Aws::String m_ownerAccount;
772
773 double m_totalBackupSizeInMegaBytes{0.0};
774
775 double m_actualIncrementalBackupSizeInMegaBytes{0.0};
776
777 double m_backupProgressInMegaBytes{0.0};
778
779 double m_currentBackupRateInMegaBytesPerSecond{0.0};
780
781 long long m_estimatedSecondsToCompletion{0};
782
783 long long m_elapsedTimeInSeconds{0};
784
785 Aws::String m_sourceRegion;
786
787 Aws::Vector<Tag> m_tags;
788
789 Aws::Vector<Aws::String> m_restorableNodeTypes;
790
791 bool m_enhancedVpcRouting{false};
792
793 Aws::String m_maintenanceTrackName;
794
795 int m_manualSnapshotRetentionPeriod{0};
796
797 int m_manualSnapshotRemainingDays{0};
798
799 Aws::Utils::DateTime m_snapshotRetentionStartTime{};
800
801 Aws::String m_masterPasswordSecretArn;
802
803 Aws::String m_masterPasswordSecretKmsKeyId;
804
805 Aws::String m_snapshotArn;
806 bool m_snapshotIdentifierHasBeenSet = false;
807 bool m_clusterIdentifierHasBeenSet = false;
808 bool m_snapshotCreateTimeHasBeenSet = false;
809 bool m_statusHasBeenSet = false;
810 bool m_portHasBeenSet = false;
811 bool m_availabilityZoneHasBeenSet = false;
812 bool m_clusterCreateTimeHasBeenSet = false;
813 bool m_masterUsernameHasBeenSet = false;
814 bool m_clusterVersionHasBeenSet = false;
815 bool m_engineFullVersionHasBeenSet = false;
816 bool m_snapshotTypeHasBeenSet = false;
817 bool m_nodeTypeHasBeenSet = false;
818 bool m_numberOfNodesHasBeenSet = false;
819 bool m_dBNameHasBeenSet = false;
820 bool m_vpcIdHasBeenSet = false;
821 bool m_encryptedHasBeenSet = false;
822 bool m_kmsKeyIdHasBeenSet = false;
823 bool m_encryptedWithHSMHasBeenSet = false;
824 bool m_accountsWithRestoreAccessHasBeenSet = false;
825 bool m_ownerAccountHasBeenSet = false;
826 bool m_totalBackupSizeInMegaBytesHasBeenSet = false;
827 bool m_actualIncrementalBackupSizeInMegaBytesHasBeenSet = false;
828 bool m_backupProgressInMegaBytesHasBeenSet = false;
829 bool m_currentBackupRateInMegaBytesPerSecondHasBeenSet = false;
830 bool m_estimatedSecondsToCompletionHasBeenSet = false;
831 bool m_elapsedTimeInSecondsHasBeenSet = false;
832 bool m_sourceRegionHasBeenSet = false;
833 bool m_tagsHasBeenSet = false;
834 bool m_restorableNodeTypesHasBeenSet = false;
835 bool m_enhancedVpcRoutingHasBeenSet = false;
836 bool m_maintenanceTrackNameHasBeenSet = false;
837 bool m_manualSnapshotRetentionPeriodHasBeenSet = false;
838 bool m_manualSnapshotRemainingDaysHasBeenSet = false;
839 bool m_snapshotRetentionStartTimeHasBeenSet = false;
840 bool m_masterPasswordSecretArnHasBeenSet = false;
841 bool m_masterPasswordSecretKmsKeyIdHasBeenSet = false;
842 bool m_snapshotArnHasBeenSet = false;
843};
844
845} // namespace Model
846} // namespace Redshift
847} // namespace Aws
Snapshot & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition Snapshot.h:146
Snapshot & WithClusterCreateTime(ClusterCreateTimeT &&value)
Definition Snapshot.h:164
void SetEstimatedSecondsToCompletion(long long value)
Definition Snapshot.h:489
bool ElapsedTimeInSecondsHasBeenSet() const
Definition Snapshot.h:505
const Aws::Utils::DateTime & GetClusterCreateTime() const
Definition Snapshot.h:156
void SetAccountsWithRestoreAccess(AccountsWithRestoreAccessT &&value)
Definition Snapshot.h:378
void SetEngineFullVersion(EngineFullVersionT &&value)
Definition Snapshot.h:215
void SetManualSnapshotRetentionPeriod(int value)
Definition Snapshot.h:631
const Aws::String & GetClusterIdentifier() const
Definition Snapshot.h:62
Snapshot & WithDBName(DBNameT &&value)
Definition Snapshot.h:291
bool SnapshotCreateTimeHasBeenSet() const
Definition Snapshot.h:82
const Aws::String & GetMasterUsername() const
Definition Snapshot.h:174
void SetKmsKeyId(KmsKeyIdT &&value)
Definition Snapshot.h:340
Snapshot & WithElapsedTimeInSeconds(long long value)
Definition Snapshot.h:510
void SetNodeType(NodeTypeT &&value)
Definition Snapshot.h:252
Snapshot & WithTotalBackupSizeInMegaBytes(double value)
Definition Snapshot.h:426
bool SnapshotArnHasBeenSet() const
Definition Snapshot.h:720
void SetActualIncrementalBackupSizeInMegaBytes(double value)
Definition Snapshot.h:438
bool ActualIncrementalBackupSizeInMegaBytesHasBeenSet() const
Definition Snapshot.h:437
void SetSnapshotRetentionStartTime(SnapshotRetentionStartTimeT &&value)
Definition Snapshot.h:666
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition Snapshot.h:141
AWS_REDSHIFT_API Snapshot & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Aws::String > & GetRestorableNodeTypes() const
Definition Snapshot.h:563
const Aws::Vector< Tag > & GetTags() const
Definition Snapshot.h:538
const Aws::String & GetVpcId() const
Definition Snapshot.h:302
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Snapshot & WithEncryptedWithHSM(bool value)
Definition Snapshot.h:363
const Aws::String & GetMasterPasswordSecretKmsKeyId() const
Definition Snapshot.h:701
void SetDBName(DBNameT &&value)
Definition Snapshot.h:286
Snapshot & WithClusterIdentifier(ClusterIdentifierT &&value)
Definition Snapshot.h:70
void SetEncrypted(bool value)
Definition Snapshot.h:322
double GetActualIncrementalBackupSizeInMegaBytes() const
Definition Snapshot.h:436
bool TotalBackupSizeInMegaBytesHasBeenSet() const
Definition Snapshot.h:421
Snapshot & WithManualSnapshotRetentionPeriod(int value)
Definition Snapshot.h:635
const Aws::String & GetMaintenanceTrackName() const
Definition Snapshot.h:609
Snapshot & WithSnapshotCreateTime(SnapshotCreateTimeT &&value)
Definition Snapshot.h:89
Snapshot & WithNumberOfNodes(int value)
Definition Snapshot.h:273
Snapshot & WithEngineFullVersion(EngineFullVersionT &&value)
Definition Snapshot.h:220
bool ManualSnapshotRemainingDaysHasBeenSet() const
Definition Snapshot.h:647
bool AccountsWithRestoreAccessHasBeenSet() const
Definition Snapshot.h:376
double GetCurrentBackupRateInMegaBytesPerSecond() const
Definition Snapshot.h:470
Snapshot & WithOwnerAccount(OwnerAccountT &&value)
Definition Snapshot.h:409
void SetSourceRegion(SourceRegionT &&value)
Definition Snapshot.h:523
Snapshot & WithMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT &&value)
Definition Snapshot.h:709
bool EncryptedWithHSMHasBeenSet() const
Definition Snapshot.h:358
Snapshot & WithSnapshotArn(SnapshotArnT &&value)
Definition Snapshot.h:727
Snapshot & WithManualSnapshotRemainingDays(int value)
Definition Snapshot.h:652
Snapshot & WithEnhancedVpcRouting(bool value)
Definition Snapshot.h:599
bool ClusterIdentifierHasBeenSet() const
Definition Snapshot.h:63
const Aws::String & GetEngineFullVersion() const
Definition Snapshot.h:212
void SetOwnerAccount(OwnerAccountT &&value)
Definition Snapshot.h:404
const Aws::String & GetMasterPasswordSecretArn() const
Definition Snapshot.h:682
double GetTotalBackupSizeInMegaBytes() const
Definition Snapshot.h:420
const Aws::String & GetClusterVersion() const
Definition Snapshot.h:193
const Aws::String & GetSourceRegion() const
Definition Snapshot.h:520
bool MasterPasswordSecretArnHasBeenSet() const
Definition Snapshot.h:683
bool OwnerAccountHasBeenSet() const
Definition Snapshot.h:402
void SetManualSnapshotRemainingDays(int value)
Definition Snapshot.h:648
Snapshot & WithEstimatedSecondsToCompletion(long long value)
Definition Snapshot.h:493
Snapshot & AddRestorableNodeTypes(RestorableNodeTypesT &&value)
Definition Snapshot.h:576
void SetVpcId(VpcIdT &&value)
Definition Snapshot.h:305
bool MasterUsernameHasBeenSet() const
Definition Snapshot.h:175
void SetMasterPasswordSecretArn(MasterPasswordSecretArnT &&value)
Definition Snapshot.h:685
bool SnapshotTypeHasBeenSet() const
Definition Snapshot.h:232
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetStatus(StatusT &&value)
Definition Snapshot.h:107
const Aws::String & GetNodeType() const
Definition Snapshot.h:249
bool BackupProgressInMegaBytesHasBeenSet() const
Definition Snapshot.h:454
int GetManualSnapshotRemainingDays() const
Definition Snapshot.h:646
const Aws::Vector< AccountWithRestoreAccess > & GetAccountsWithRestoreAccess() const
Definition Snapshot.h:375
Snapshot & AddAccountsWithRestoreAccess(AccountsWithRestoreAccessT &&value)
Definition Snapshot.h:388
const Aws::String & GetSnapshotType() const
Definition Snapshot.h:231
bool MasterPasswordSecretKmsKeyIdHasBeenSet() const
Definition Snapshot.h:702
Snapshot & WithCurrentBackupRateInMegaBytesPerSecond(double value)
Definition Snapshot.h:476
bool CurrentBackupRateInMegaBytesPerSecondHasBeenSet() const
Definition Snapshot.h:471
const Aws::String & GetSnapshotIdentifier() const
Definition Snapshot.h:44
void SetTotalBackupSizeInMegaBytes(double value)
Definition Snapshot.h:422
void SetBackupProgressInMegaBytes(double value)
Definition Snapshot.h:455
bool EngineFullVersionHasBeenSet() const
Definition Snapshot.h:213
bool SnapshotIdentifierHasBeenSet() const
Definition Snapshot.h:45
void SetSnapshotIdentifier(SnapshotIdentifierT &&value)
Definition Snapshot.h:47
Snapshot & AddTags(TagsT &&value)
Definition Snapshot.h:551
void SetElapsedTimeInSeconds(long long value)
Definition Snapshot.h:506
long long GetEstimatedSecondsToCompletion() const
Definition Snapshot.h:487
const Aws::String & GetKmsKeyId() const
Definition Snapshot.h:337
const Aws::String & GetOwnerAccount() const
Definition Snapshot.h:401
Snapshot & WithStatus(StatusT &&value)
Definition Snapshot.h:112
bool GetEnhancedVpcRouting() const
Definition Snapshot.h:593
bool ManualSnapshotRetentionPeriodHasBeenSet() const
Definition Snapshot.h:630
bool NumberOfNodesHasBeenSet() const
Definition Snapshot.h:268
double GetBackupProgressInMegaBytes() const
Definition Snapshot.h:453
void SetCurrentBackupRateInMegaBytesPerSecond(double value)
Definition Snapshot.h:472
const Aws::Utils::DateTime & GetSnapshotCreateTime() const
Definition Snapshot.h:81
Snapshot & WithActualIncrementalBackupSizeInMegaBytes(double value)
Definition Snapshot.h:442
Snapshot & WithRestorableNodeTypes(RestorableNodeTypesT &&value)
Definition Snapshot.h:571
bool ClusterCreateTimeHasBeenSet() const
Definition Snapshot.h:157
const Aws::String & GetDBName() const
Definition Snapshot.h:283
void SetNumberOfNodes(int value)
Definition Snapshot.h:269
void SetTags(TagsT &&value)
Definition Snapshot.h:541
void SetMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT &&value)
Definition Snapshot.h:704
void SetClusterVersion(ClusterVersionT &&value)
Definition Snapshot.h:196
Snapshot & WithNodeType(NodeTypeT &&value)
Definition Snapshot.h:257
bool SnapshotRetentionStartTimeHasBeenSet() const
Definition Snapshot.h:664
void SetClusterCreateTime(ClusterCreateTimeT &&value)
Definition Snapshot.h:159
void SetSnapshotCreateTime(SnapshotCreateTimeT &&value)
Definition Snapshot.h:84
Snapshot & WithMaintenanceTrackName(MaintenanceTrackNameT &&value)
Definition Snapshot.h:617
Snapshot & WithTags(TagsT &&value)
Definition Snapshot.h:546
void SetSnapshotArn(SnapshotArnT &&value)
Definition Snapshot.h:722
void SetMasterUsername(MasterUsernameT &&value)
Definition Snapshot.h:177
Snapshot & WithKmsKeyId(KmsKeyIdT &&value)
Definition Snapshot.h:345
Snapshot & WithBackupProgressInMegaBytes(double value)
Definition Snapshot.h:459
Snapshot & WithSourceRegion(SourceRegionT &&value)
Definition Snapshot.h:528
Snapshot & WithSnapshotRetentionStartTime(SnapshotRetentionStartTimeT &&value)
Definition Snapshot.h:671
const Aws::Utils::DateTime & GetSnapshotRetentionStartTime() const
Definition Snapshot.h:663
bool AvailabilityZoneHasBeenSet() const
Definition Snapshot.h:139
const Aws::String & GetStatus() const
Definition Snapshot.h:104
int GetManualSnapshotRetentionPeriod() const
Definition Snapshot.h:629
bool EstimatedSecondsToCompletionHasBeenSet() const
Definition Snapshot.h:488
AWS_REDSHIFT_API Snapshot()=default
Snapshot & WithAccountsWithRestoreAccess(AccountsWithRestoreAccessT &&value)
Definition Snapshot.h:383
Snapshot & WithSnapshotType(SnapshotTypeT &&value)
Definition Snapshot.h:239
Snapshot & WithMasterUsername(MasterUsernameT &&value)
Definition Snapshot.h:182
void SetEncryptedWithHSM(bool value)
Definition Snapshot.h:359
void SetEnhancedVpcRouting(bool value)
Definition Snapshot.h:595
Snapshot & WithVpcId(VpcIdT &&value)
Definition Snapshot.h:310
void SetMaintenanceTrackName(MaintenanceTrackNameT &&value)
Definition Snapshot.h:612
const Aws::String & GetAvailabilityZone() const
Definition Snapshot.h:138
bool EnhancedVpcRoutingHasBeenSet() const
Definition Snapshot.h:594
Snapshot & WithMasterPasswordSecretArn(MasterPasswordSecretArnT &&value)
Definition Snapshot.h:690
void SetSnapshotType(SnapshotTypeT &&value)
Definition Snapshot.h:234
bool RestorableNodeTypesHasBeenSet() const
Definition Snapshot.h:564
Snapshot & WithPort(int value)
Definition Snapshot.h:128
Snapshot & WithSnapshotIdentifier(SnapshotIdentifierT &&value)
Definition Snapshot.h:52
AWS_REDSHIFT_API Snapshot(const Aws::Utils::Xml::XmlNode &xmlNode)
Snapshot & WithClusterVersion(ClusterVersionT &&value)
Definition Snapshot.h:201
const Aws::String & GetSnapshotArn() const
Definition Snapshot.h:719
void SetRestorableNodeTypes(RestorableNodeTypesT &&value)
Definition Snapshot.h:566
bool MaintenanceTrackNameHasBeenSet() const
Definition Snapshot.h:610
bool SourceRegionHasBeenSet() const
Definition Snapshot.h:521
void SetClusterIdentifier(ClusterIdentifierT &&value)
Definition Snapshot.h:65
Snapshot & WithEncrypted(bool value)
Definition Snapshot.h:326
long long GetElapsedTimeInSeconds() const
Definition Snapshot.h:504
bool ClusterVersionHasBeenSet() const
Definition Snapshot.h:194
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