7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
11#include <aws/redshift-serverless/model/SnapshotStatus.h>
22namespace RedshiftServerless {
32 AWS_REDSHIFTSERVERLESS_API
Snapshot() =
default;
44 template <
typename AccountsWithProvisionedRestoreAccessT = Aws::Vector<Aws::String>>
46 m_accountsWithProvisionedRestoreAccessHasBeenSet =
true;
47 m_accountsWithProvisionedRestoreAccess = std::forward<AccountsWithProvisionedRestoreAccessT>(value);
49 template <
typename AccountsWithProvisionedRestoreAccessT = Aws::Vector<Aws::String>>
54 template <
typename AccountsWithProvisionedRestoreAccessT = Aws::String>
56 m_accountsWithProvisionedRestoreAccessHasBeenSet =
true;
57 m_accountsWithProvisionedRestoreAccess.emplace_back(std::forward<AccountsWithProvisionedRestoreAccessT>(value));
69 template <
typename AccountsWithRestoreAccessT = Aws::Vector<Aws::String>>
71 m_accountsWithRestoreAccessHasBeenSet =
true;
72 m_accountsWithRestoreAccess = std::forward<AccountsWithRestoreAccessT>(value);
74 template <
typename AccountsWithRestoreAccessT = Aws::Vector<Aws::String>>
79 template <
typename AccountsWithRestoreAccessT = Aws::String>
81 m_accountsWithRestoreAccessHasBeenSet =
true;
82 m_accountsWithRestoreAccess.emplace_back(std::forward<AccountsWithRestoreAccessT>(value));
94 m_actualIncrementalBackupSizeInMegaBytesHasBeenSet =
true;
95 m_actualIncrementalBackupSizeInMegaBytes = value;
110 template <
typename AdminPasswordSecretArnT = Aws::String>
112 m_adminPasswordSecretArnHasBeenSet =
true;
113 m_adminPasswordSecretArn = std::forward<AdminPasswordSecretArnT>(value);
115 template <
typename AdminPasswordSecretArnT = Aws::String>
129 template <
typename AdminPasswordSecretKmsKeyIdT = Aws::String>
131 m_adminPasswordSecretKmsKeyIdHasBeenSet =
true;
132 m_adminPasswordSecretKmsKeyId = std::forward<AdminPasswordSecretKmsKeyIdT>(value);
134 template <
typename AdminPasswordSecretKmsKeyIdT = Aws::String>
147 template <
typename AdminUsernameT = Aws::String>
149 m_adminUsernameHasBeenSet =
true;
150 m_adminUsername = std::forward<AdminUsernameT>(value);
152 template <
typename AdminUsernameT = Aws::String>
166 m_backupProgressInMegaBytesHasBeenSet =
true;
167 m_backupProgressInMegaBytes = value;
183 m_currentBackupRateInMegaBytesPerSecondHasBeenSet =
true;
184 m_currentBackupRateInMegaBytesPerSecond = value;
199 m_elapsedTimeInSecondsHasBeenSet =
true;
200 m_elapsedTimeInSeconds = value;
215 m_estimatedSecondsToCompletionHasBeenSet =
true;
216 m_estimatedSecondsToCompletion = value;
230 template <
typename KmsKeyIdT = Aws::String>
232 m_kmsKeyIdHasBeenSet =
true;
233 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
235 template <
typename KmsKeyIdT = Aws::String>
249 template <
typename NamespaceArnT = Aws::String>
251 m_namespaceArnHasBeenSet =
true;
252 m_namespaceArn = std::forward<NamespaceArnT>(value);
254 template <
typename NamespaceArnT = Aws::String>
267 template <
typename NamespaceNameT = Aws::String>
269 m_namespaceNameHasBeenSet =
true;
270 m_namespaceName = std::forward<NamespaceNameT>(value);
272 template <
typename NamespaceNameT = Aws::String>
285 template <
typename OwnerAccountT = Aws::String>
287 m_ownerAccountHasBeenSet =
true;
288 m_ownerAccount = std::forward<OwnerAccountT>(value);
290 template <
typename OwnerAccountT = Aws::String>
303 template <
typename SnapshotArnT = Aws::String>
305 m_snapshotArnHasBeenSet =
true;
306 m_snapshotArn = std::forward<SnapshotArnT>(value);
308 template <
typename SnapshotArnT = Aws::String>
321 template <
typename SnapshotCreateTimeT = Aws::Utils::DateTime>
323 m_snapshotCreateTimeHasBeenSet =
true;
324 m_snapshotCreateTime = std::forward<SnapshotCreateTimeT>(value);
326 template <
typename SnapshotCreateTimeT = Aws::Utils::DateTime>
339 template <
typename SnapshotNameT = Aws::String>
341 m_snapshotNameHasBeenSet =
true;
342 m_snapshotName = std::forward<SnapshotNameT>(value);
344 template <
typename SnapshotNameT = Aws::String>
358 m_snapshotRemainingDaysHasBeenSet =
true;
359 m_snapshotRemainingDays = value;
374 m_snapshotRetentionPeriodHasBeenSet =
true;
375 m_snapshotRetentionPeriod = value;
389 template <
typename SnapshotRetentionStartTimeT = Aws::Utils::DateTime>
391 m_snapshotRetentionStartTimeHasBeenSet =
true;
392 m_snapshotRetentionStartTime = std::forward<SnapshotRetentionStartTimeT>(value);
394 template <
typename SnapshotRetentionStartTimeT = Aws::Utils::DateTime>
408 m_statusHasBeenSet =
true;
424 m_totalBackupSizeInMegaBytesHasBeenSet =
true;
425 m_totalBackupSizeInMegaBytes = value;
437 double m_actualIncrementalBackupSizeInMegaBytes{0.0};
445 double m_backupProgressInMegaBytes{0.0};
447 double m_currentBackupRateInMegaBytesPerSecond{0.0};
449 long long m_elapsedTimeInSeconds{0};
451 long long m_estimatedSecondsToCompletion{0};
467 int m_snapshotRemainingDays{0};
469 int m_snapshotRetentionPeriod{0};
475 double m_totalBackupSizeInMegaBytes{0.0};
476 bool m_accountsWithProvisionedRestoreAccessHasBeenSet =
false;
477 bool m_accountsWithRestoreAccessHasBeenSet =
false;
478 bool m_actualIncrementalBackupSizeInMegaBytesHasBeenSet =
false;
479 bool m_adminPasswordSecretArnHasBeenSet =
false;
480 bool m_adminPasswordSecretKmsKeyIdHasBeenSet =
false;
481 bool m_adminUsernameHasBeenSet =
false;
482 bool m_backupProgressInMegaBytesHasBeenSet =
false;
483 bool m_currentBackupRateInMegaBytesPerSecondHasBeenSet =
false;
484 bool m_elapsedTimeInSecondsHasBeenSet =
false;
485 bool m_estimatedSecondsToCompletionHasBeenSet =
false;
486 bool m_kmsKeyIdHasBeenSet =
false;
487 bool m_namespaceArnHasBeenSet =
false;
488 bool m_namespaceNameHasBeenSet =
false;
489 bool m_ownerAccountHasBeenSet =
false;
490 bool m_snapshotArnHasBeenSet =
false;
491 bool m_snapshotCreateTimeHasBeenSet =
false;
492 bool m_snapshotNameHasBeenSet =
false;
493 bool m_snapshotRemainingDaysHasBeenSet =
false;
494 bool m_snapshotRetentionPeriodHasBeenSet =
false;
495 bool m_snapshotRetentionStartTimeHasBeenSet =
false;
496 bool m_statusHasBeenSet =
false;
497 bool m_totalBackupSizeInMegaBytesHasBeenSet =
false;
Snapshot & WithAdminPasswordSecretArn(AdminPasswordSecretArnT &&value)
void SetAdminPasswordSecretArn(AdminPasswordSecretArnT &&value)
Snapshot & WithEstimatedSecondsToCompletion(long long value)
long long GetEstimatedSecondsToCompletion() const
Snapshot & AddAccountsWithRestoreAccess(AccountsWithRestoreAccessT &&value)
bool SnapshotNameHasBeenSet() const
void SetSnapshotName(SnapshotNameT &&value)
AWS_REDSHIFTSERVERLESS_API Snapshot(Aws::Utils::Json::JsonView jsonValue)
Snapshot & WithTotalBackupSizeInMegaBytes(double value)
Snapshot & WithKmsKeyId(KmsKeyIdT &&value)
Snapshot & WithAdminUsername(AdminUsernameT &&value)
bool SnapshotRetentionPeriodHasBeenSet() const
bool NamespaceNameHasBeenSet() const
const Aws::String & GetNamespaceArn() const
bool SnapshotRetentionStartTimeHasBeenSet() const
double GetBackupProgressInMegaBytes() const
void SetSnapshotRetentionPeriod(int value)
int GetSnapshotRemainingDays() const
void SetSnapshotCreateTime(SnapshotCreateTimeT &&value)
void SetCurrentBackupRateInMegaBytesPerSecond(double value)
double GetActualIncrementalBackupSizeInMegaBytes() const
bool CurrentBackupRateInMegaBytesPerSecondHasBeenSet() const
double GetTotalBackupSizeInMegaBytes() const
void SetSnapshotRetentionStartTime(SnapshotRetentionStartTimeT &&value)
void SetKmsKeyId(KmsKeyIdT &&value)
bool AdminPasswordSecretArnHasBeenSet() const
Snapshot & WithSnapshotCreateTime(SnapshotCreateTimeT &&value)
bool SnapshotCreateTimeHasBeenSet() const
const Aws::Utils::DateTime & GetSnapshotRetentionStartTime() const
bool AccountsWithRestoreAccessHasBeenSet() const
const Aws::String & GetNamespaceName() const
Snapshot & WithCurrentBackupRateInMegaBytesPerSecond(double value)
Snapshot & WithActualIncrementalBackupSizeInMegaBytes(double value)
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
Snapshot & WithStatus(SnapshotStatus value)
const Aws::String & GetSnapshotArn() const
void SetTotalBackupSizeInMegaBytes(double value)
bool TotalBackupSizeInMegaBytesHasBeenSet() const
void SetActualIncrementalBackupSizeInMegaBytes(double value)
void SetOwnerAccount(OwnerAccountT &&value)
Snapshot & WithAdminPasswordSecretKmsKeyId(AdminPasswordSecretKmsKeyIdT &&value)
bool StatusHasBeenSet() const
bool BackupProgressInMegaBytesHasBeenSet() const
bool KmsKeyIdHasBeenSet() const
Snapshot & WithAccountsWithRestoreAccess(AccountsWithRestoreAccessT &&value)
void SetAdminPasswordSecretKmsKeyId(AdminPasswordSecretKmsKeyIdT &&value)
void SetStatus(SnapshotStatus value)
double GetCurrentBackupRateInMegaBytesPerSecond() const
void SetElapsedTimeInSeconds(long long value)
bool OwnerAccountHasBeenSet() const
const Aws::Utils::DateTime & GetSnapshotCreateTime() const
const Aws::Vector< Aws::String > & GetAccountsWithRestoreAccess() const
Snapshot & WithAccountsWithProvisionedRestoreAccess(AccountsWithProvisionedRestoreAccessT &&value)
const Aws::String & GetKmsKeyId() const
void SetEstimatedSecondsToCompletion(long long value)
Snapshot & WithSnapshotRetentionStartTime(SnapshotRetentionStartTimeT &&value)
void SetBackupProgressInMegaBytes(double value)
void SetNamespaceName(NamespaceNameT &&value)
void SetAccountsWithProvisionedRestoreAccess(AccountsWithProvisionedRestoreAccessT &&value)
Snapshot & WithOwnerAccount(OwnerAccountT &&value)
const Aws::String & GetAdminPasswordSecretArn() const
const Aws::String & GetSnapshotName() const
SnapshotStatus GetStatus() const
void SetSnapshotArn(SnapshotArnT &&value)
AWS_REDSHIFTSERVERLESS_API Snapshot & operator=(Aws::Utils::Json::JsonView jsonValue)
Snapshot & WithSnapshotRemainingDays(int value)
long long GetElapsedTimeInSeconds() const
Snapshot & WithSnapshotName(SnapshotNameT &&value)
const Aws::String & GetAdminUsername() const
int GetSnapshotRetentionPeriod() const
bool AdminPasswordSecretKmsKeyIdHasBeenSet() const
bool AccountsWithProvisionedRestoreAccessHasBeenSet() const
Snapshot & WithNamespaceArn(NamespaceArnT &&value)
bool SnapshotRemainingDaysHasBeenSet() const
void SetNamespaceArn(NamespaceArnT &&value)
Snapshot & WithNamespaceName(NamespaceNameT &&value)
void SetSnapshotRemainingDays(int value)
bool EstimatedSecondsToCompletionHasBeenSet() const
Snapshot & WithElapsedTimeInSeconds(long long value)
const Aws::String & GetAdminPasswordSecretKmsKeyId() const
Snapshot & WithSnapshotRetentionPeriod(int value)
bool ElapsedTimeInSecondsHasBeenSet() const
Snapshot & WithBackupProgressInMegaBytes(double value)
AWS_REDSHIFTSERVERLESS_API Snapshot()=default
bool AdminUsernameHasBeenSet() const
void SetAccountsWithRestoreAccess(AccountsWithRestoreAccessT &&value)
Snapshot & WithSnapshotArn(SnapshotArnT &&value)
bool SnapshotArnHasBeenSet() const
bool ActualIncrementalBackupSizeInMegaBytesHasBeenSet() const
const Aws::Vector< Aws::String > & GetAccountsWithProvisionedRestoreAccess() const
void SetAdminUsername(AdminUsernameT &&value)
Snapshot & AddAccountsWithProvisionedRestoreAccess(AccountsWithProvisionedRestoreAccessT &&value)
const Aws::String & GetOwnerAccount() const
bool NamespaceArnHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue