/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Backup { namespace Model { /** *

Contains detailed information about the recovery points stored in a backup * vault.

See Also:

AWS * API Reference

*/ class AWS_BACKUP_API RecoveryPointByBackupVault { public: RecoveryPointByBackupVault(); RecoveryPointByBackupVault(Aws::Utils::Json::JsonView jsonValue); RecoveryPointByBackupVault& operator=(Aws::Utils::Json::JsonView jsonValue); Aws::Utils::Json::JsonValue Jsonize() const; /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline const Aws::String& GetRecoveryPointArn() const{ return m_recoveryPointArn; } /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline bool RecoveryPointArnHasBeenSet() const { return m_recoveryPointArnHasBeenSet; } /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline void SetRecoveryPointArn(const Aws::String& value) { m_recoveryPointArnHasBeenSet = true; m_recoveryPointArn = value; } /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline void SetRecoveryPointArn(Aws::String&& value) { m_recoveryPointArnHasBeenSet = true; m_recoveryPointArn = std::move(value); } /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline void SetRecoveryPointArn(const char* value) { m_recoveryPointArnHasBeenSet = true; m_recoveryPointArn.assign(value); } /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline RecoveryPointByBackupVault& WithRecoveryPointArn(const Aws::String& value) { SetRecoveryPointArn(value); return *this;} /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline RecoveryPointByBackupVault& WithRecoveryPointArn(Aws::String&& value) { SetRecoveryPointArn(std::move(value)); return *this;} /** *

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for * example, * arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

*/ inline RecoveryPointByBackupVault& WithRecoveryPointArn(const char* value) { SetRecoveryPointArn(value); return *this;} /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline const Aws::String& GetBackupVaultName() const{ return m_backupVaultName; } /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline bool BackupVaultNameHasBeenSet() const { return m_backupVaultNameHasBeenSet; } /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline void SetBackupVaultName(const Aws::String& value) { m_backupVaultNameHasBeenSet = true; m_backupVaultName = value; } /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline void SetBackupVaultName(Aws::String&& value) { m_backupVaultNameHasBeenSet = true; m_backupVaultName = std::move(value); } /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline void SetBackupVaultName(const char* value) { m_backupVaultNameHasBeenSet = true; m_backupVaultName.assign(value); } /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline RecoveryPointByBackupVault& WithBackupVaultName(const Aws::String& value) { SetBackupVaultName(value); return *this;} /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline RecoveryPointByBackupVault& WithBackupVaultName(Aws::String&& value) { SetBackupVaultName(std::move(value)); return *this;} /** *

The name of a logical container where backups are stored. Backup vaults are * identified by names that are unique to the account used to create them and the * AWS Region where they are created. They consist of lowercase letters, numbers, * and hyphens.

*/ inline RecoveryPointByBackupVault& WithBackupVaultName(const char* value) { SetBackupVaultName(value); return *this;} /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline const Aws::String& GetBackupVaultArn() const{ return m_backupVaultArn; } /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline bool BackupVaultArnHasBeenSet() const { return m_backupVaultArnHasBeenSet; } /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline void SetBackupVaultArn(const Aws::String& value) { m_backupVaultArnHasBeenSet = true; m_backupVaultArn = value; } /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline void SetBackupVaultArn(Aws::String&& value) { m_backupVaultArnHasBeenSet = true; m_backupVaultArn = std::move(value); } /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline void SetBackupVaultArn(const char* value) { m_backupVaultArnHasBeenSet = true; m_backupVaultArn.assign(value); } /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline RecoveryPointByBackupVault& WithBackupVaultArn(const Aws::String& value) { SetBackupVaultArn(value); return *this;} /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline RecoveryPointByBackupVault& WithBackupVaultArn(Aws::String&& value) { SetBackupVaultArn(std::move(value)); return *this;} /** *

An ARN that uniquely identifies a backup vault; for example, * arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

*/ inline RecoveryPointByBackupVault& WithBackupVaultArn(const char* value) { SetBackupVaultArn(value); return *this;} /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline RecoveryPointByBackupVault& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline RecoveryPointByBackupVault& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} /** *

An ARN that uniquely identifies a resource. The format of the ARN depends on * the resource type.

*/ inline RecoveryPointByBackupVault& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline const Aws::String& GetResourceType() const{ return m_resourceType; } /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline RecoveryPointByBackupVault& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline RecoveryPointByBackupVault& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} /** *

The type of AWS resource saved as a recovery point; for example, an Amazon * Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service * (Amazon RDS) database.

*/ inline RecoveryPointByBackupVault& WithResourceType(const char* value) { SetResourceType(value); return *this;} /** *

Contains identifying information about the creation of a recovery point, * including the BackupPlanArn, BackupPlanId, * BackupPlanVersion, and BackupRuleId of the backup plan * that is used to create it.

*/ inline const RecoveryPointCreator& GetCreatedBy() const{ return m_createdBy; } /** *

Contains identifying information about the creation of a recovery point, * including the BackupPlanArn, BackupPlanId, * BackupPlanVersion, and BackupRuleId of the backup plan * that is used to create it.

*/ inline bool CreatedByHasBeenSet() const { return m_createdByHasBeenSet; } /** *

Contains identifying information about the creation of a recovery point, * including the BackupPlanArn, BackupPlanId, * BackupPlanVersion, and BackupRuleId of the backup plan * that is used to create it.

*/ inline void SetCreatedBy(const RecoveryPointCreator& value) { m_createdByHasBeenSet = true; m_createdBy = value; } /** *

Contains identifying information about the creation of a recovery point, * including the BackupPlanArn, BackupPlanId, * BackupPlanVersion, and BackupRuleId of the backup plan * that is used to create it.

*/ inline void SetCreatedBy(RecoveryPointCreator&& value) { m_createdByHasBeenSet = true; m_createdBy = std::move(value); } /** *

Contains identifying information about the creation of a recovery point, * including the BackupPlanArn, BackupPlanId, * BackupPlanVersion, and BackupRuleId of the backup plan * that is used to create it.

*/ inline RecoveryPointByBackupVault& WithCreatedBy(const RecoveryPointCreator& value) { SetCreatedBy(value); return *this;} /** *

Contains identifying information about the creation of a recovery point, * including the BackupPlanArn, BackupPlanId, * BackupPlanVersion, and BackupRuleId of the backup plan * that is used to create it.

*/ inline RecoveryPointByBackupVault& WithCreatedBy(RecoveryPointCreator&& value) { SetCreatedBy(std::move(value)); return *this;} /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline RecoveryPointByBackupVault& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline RecoveryPointByBackupVault& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} /** *

Specifies the IAM role ARN used to create the target recovery point; for * example, arn:aws:iam::123456789012:role/S3Access.

*/ inline RecoveryPointByBackupVault& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} /** *

A status code specifying the state of the recovery point.

*/ inline const RecoveryPointStatus& GetStatus() const{ return m_status; } /** *

A status code specifying the state of the recovery point.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

A status code specifying the state of the recovery point.

*/ inline void SetStatus(const RecoveryPointStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

A status code specifying the state of the recovery point.

*/ inline void SetStatus(RecoveryPointStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

A status code specifying the state of the recovery point.

*/ inline RecoveryPointByBackupVault& WithStatus(const RecoveryPointStatus& value) { SetStatus(value); return *this;} /** *

A status code specifying the state of the recovery point.

*/ inline RecoveryPointByBackupVault& WithStatus(RecoveryPointStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The date and time a recovery point is created, in Unix format and Coordinated * Universal Time (UTC). The value of CreationDate is accurate to * milliseconds. For example, the value 1516925490.087 represents Friday, January * 26, 2018 12:11:30.087 AM.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *

The date and time a recovery point is created, in Unix format and Coordinated * Universal Time (UTC). The value of CreationDate is accurate to * milliseconds. For example, the value 1516925490.087 represents Friday, January * 26, 2018 12:11:30.087 AM.

*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *

The date and time a recovery point is created, in Unix format and Coordinated * Universal Time (UTC). The value of CreationDate is accurate to * milliseconds. For example, the value 1516925490.087 represents Friday, January * 26, 2018 12:11:30.087 AM.

*/ inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *

The date and time a recovery point is created, in Unix format and Coordinated * Universal Time (UTC). The value of CreationDate is accurate to * milliseconds. For example, the value 1516925490.087 represents Friday, January * 26, 2018 12:11:30.087 AM.

*/ inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *

The date and time a recovery point is created, in Unix format and Coordinated * Universal Time (UTC). The value of CreationDate is accurate to * milliseconds. For example, the value 1516925490.087 represents Friday, January * 26, 2018 12:11:30.087 AM.

*/ inline RecoveryPointByBackupVault& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *

The date and time a recovery point is created, in Unix format and Coordinated * Universal Time (UTC). The value of CreationDate is accurate to * milliseconds. For example, the value 1516925490.087 represents Friday, January * 26, 2018 12:11:30.087 AM.

*/ inline RecoveryPointByBackupVault& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} /** *

The date and time a job to restore a recovery point is completed, in Unix * format and Coordinated Universal Time (UTC). The value of * CompletionDate is accurate to milliseconds. For example, the value * 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

*/ inline const Aws::Utils::DateTime& GetCompletionDate() const{ return m_completionDate; } /** *

The date and time a job to restore a recovery point is completed, in Unix * format and Coordinated Universal Time (UTC). The value of * CompletionDate is accurate to milliseconds. For example, the value * 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

*/ inline bool CompletionDateHasBeenSet() const { return m_completionDateHasBeenSet; } /** *

The date and time a job to restore a recovery point is completed, in Unix * format and Coordinated Universal Time (UTC). The value of * CompletionDate is accurate to milliseconds. For example, the value * 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

*/ inline void SetCompletionDate(const Aws::Utils::DateTime& value) { m_completionDateHasBeenSet = true; m_completionDate = value; } /** *

The date and time a job to restore a recovery point is completed, in Unix * format and Coordinated Universal Time (UTC). The value of * CompletionDate is accurate to milliseconds. For example, the value * 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

*/ inline void SetCompletionDate(Aws::Utils::DateTime&& value) { m_completionDateHasBeenSet = true; m_completionDate = std::move(value); } /** *

The date and time a job to restore a recovery point is completed, in Unix * format and Coordinated Universal Time (UTC). The value of * CompletionDate is accurate to milliseconds. For example, the value * 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

*/ inline RecoveryPointByBackupVault& WithCompletionDate(const Aws::Utils::DateTime& value) { SetCompletionDate(value); return *this;} /** *

The date and time a job to restore a recovery point is completed, in Unix * format and Coordinated Universal Time (UTC). The value of * CompletionDate is accurate to milliseconds. For example, the value * 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

*/ inline RecoveryPointByBackupVault& WithCompletionDate(Aws::Utils::DateTime&& value) { SetCompletionDate(std::move(value)); return *this;} /** *

The size, in bytes, of a backup.

*/ inline long long GetBackupSizeInBytes() const{ return m_backupSizeInBytes; } /** *

The size, in bytes, of a backup.

*/ inline bool BackupSizeInBytesHasBeenSet() const { return m_backupSizeInBytesHasBeenSet; } /** *

The size, in bytes, of a backup.

*/ inline void SetBackupSizeInBytes(long long value) { m_backupSizeInBytesHasBeenSet = true; m_backupSizeInBytes = value; } /** *

The size, in bytes, of a backup.

*/ inline RecoveryPointByBackupVault& WithBackupSizeInBytes(long long value) { SetBackupSizeInBytes(value); return *this;} /** *

A CalculatedLifecycle object containing DeleteAt * and MoveToColdStorageAt timestamps.

*/ inline const CalculatedLifecycle& GetCalculatedLifecycle() const{ return m_calculatedLifecycle; } /** *

A CalculatedLifecycle object containing DeleteAt * and MoveToColdStorageAt timestamps.

*/ inline bool CalculatedLifecycleHasBeenSet() const { return m_calculatedLifecycleHasBeenSet; } /** *

A CalculatedLifecycle object containing DeleteAt * and MoveToColdStorageAt timestamps.

*/ inline void SetCalculatedLifecycle(const CalculatedLifecycle& value) { m_calculatedLifecycleHasBeenSet = true; m_calculatedLifecycle = value; } /** *

A CalculatedLifecycle object containing DeleteAt * and MoveToColdStorageAt timestamps.

*/ inline void SetCalculatedLifecycle(CalculatedLifecycle&& value) { m_calculatedLifecycleHasBeenSet = true; m_calculatedLifecycle = std::move(value); } /** *

A CalculatedLifecycle object containing DeleteAt * and MoveToColdStorageAt timestamps.

*/ inline RecoveryPointByBackupVault& WithCalculatedLifecycle(const CalculatedLifecycle& value) { SetCalculatedLifecycle(value); return *this;} /** *

A CalculatedLifecycle object containing DeleteAt * and MoveToColdStorageAt timestamps.

*/ inline RecoveryPointByBackupVault& WithCalculatedLifecycle(CalculatedLifecycle&& value) { SetCalculatedLifecycle(std::move(value)); return *this;} /** *

The lifecycle defines when a protected resource is transitioned to cold * storage and when it expires. AWS Backup transitions and expires backups * automatically according to the lifecycle that you define.

Backups * transitioned to cold storage must be stored in cold storage for a minimum of 90 * days. Therefore, the “expire after days” setting must be 90 days greater than * the “transition to cold after days” setting. The “transition to cold after days” * setting cannot be changed after a backup has been transitioned to cold.

*/ inline const Lifecycle& GetLifecycle() const{ return m_lifecycle; } /** *

The lifecycle defines when a protected resource is transitioned to cold * storage and when it expires. AWS Backup transitions and expires backups * automatically according to the lifecycle that you define.

Backups * transitioned to cold storage must be stored in cold storage for a minimum of 90 * days. Therefore, the “expire after days” setting must be 90 days greater than * the “transition to cold after days” setting. The “transition to cold after days” * setting cannot be changed after a backup has been transitioned to cold.

*/ inline bool LifecycleHasBeenSet() const { return m_lifecycleHasBeenSet; } /** *

The lifecycle defines when a protected resource is transitioned to cold * storage and when it expires. AWS Backup transitions and expires backups * automatically according to the lifecycle that you define.

Backups * transitioned to cold storage must be stored in cold storage for a minimum of 90 * days. Therefore, the “expire after days” setting must be 90 days greater than * the “transition to cold after days” setting. The “transition to cold after days” * setting cannot be changed after a backup has been transitioned to cold.

*/ inline void SetLifecycle(const Lifecycle& value) { m_lifecycleHasBeenSet = true; m_lifecycle = value; } /** *

The lifecycle defines when a protected resource is transitioned to cold * storage and when it expires. AWS Backup transitions and expires backups * automatically according to the lifecycle that you define.

Backups * transitioned to cold storage must be stored in cold storage for a minimum of 90 * days. Therefore, the “expire after days” setting must be 90 days greater than * the “transition to cold after days” setting. The “transition to cold after days” * setting cannot be changed after a backup has been transitioned to cold.

*/ inline void SetLifecycle(Lifecycle&& value) { m_lifecycleHasBeenSet = true; m_lifecycle = std::move(value); } /** *

The lifecycle defines when a protected resource is transitioned to cold * storage and when it expires. AWS Backup transitions and expires backups * automatically according to the lifecycle that you define.

Backups * transitioned to cold storage must be stored in cold storage for a minimum of 90 * days. Therefore, the “expire after days” setting must be 90 days greater than * the “transition to cold after days” setting. The “transition to cold after days” * setting cannot be changed after a backup has been transitioned to cold.

*/ inline RecoveryPointByBackupVault& WithLifecycle(const Lifecycle& value) { SetLifecycle(value); return *this;} /** *

The lifecycle defines when a protected resource is transitioned to cold * storage and when it expires. AWS Backup transitions and expires backups * automatically according to the lifecycle that you define.

Backups * transitioned to cold storage must be stored in cold storage for a minimum of 90 * days. Therefore, the “expire after days” setting must be 90 days greater than * the “transition to cold after days” setting. The “transition to cold after days” * setting cannot be changed after a backup has been transitioned to cold.

*/ inline RecoveryPointByBackupVault& WithLifecycle(Lifecycle&& value) { SetLifecycle(std::move(value)); return *this;} /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline const Aws::String& GetEncryptionKeyArn() const{ return m_encryptionKeyArn; } /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline bool EncryptionKeyArnHasBeenSet() const { return m_encryptionKeyArnHasBeenSet; } /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline void SetEncryptionKeyArn(const Aws::String& value) { m_encryptionKeyArnHasBeenSet = true; m_encryptionKeyArn = value; } /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline void SetEncryptionKeyArn(Aws::String&& value) { m_encryptionKeyArnHasBeenSet = true; m_encryptionKeyArn = std::move(value); } /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline void SetEncryptionKeyArn(const char* value) { m_encryptionKeyArnHasBeenSet = true; m_encryptionKeyArn.assign(value); } /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline RecoveryPointByBackupVault& WithEncryptionKeyArn(const Aws::String& value) { SetEncryptionKeyArn(value); return *this;} /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline RecoveryPointByBackupVault& WithEncryptionKeyArn(Aws::String&& value) { SetEncryptionKeyArn(std::move(value)); return *this;} /** *

The server-side encryption key that is used to protect your backups; for * example, * arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

*/ inline RecoveryPointByBackupVault& WithEncryptionKeyArn(const char* value) { SetEncryptionKeyArn(value); return *this;} /** *

A Boolean value that is returned as TRUE if the specified * recovery point is encrypted, or FALSE if the recovery point is not * encrypted.

*/ inline bool GetIsEncrypted() const{ return m_isEncrypted; } /** *

A Boolean value that is returned as TRUE if the specified * recovery point is encrypted, or FALSE if the recovery point is not * encrypted.

*/ inline bool IsEncryptedHasBeenSet() const { return m_isEncryptedHasBeenSet; } /** *

A Boolean value that is returned as TRUE if the specified * recovery point is encrypted, or FALSE if the recovery point is not * encrypted.

*/ inline void SetIsEncrypted(bool value) { m_isEncryptedHasBeenSet = true; m_isEncrypted = value; } /** *

A Boolean value that is returned as TRUE if the specified * recovery point is encrypted, or FALSE if the recovery point is not * encrypted.

*/ inline RecoveryPointByBackupVault& WithIsEncrypted(bool value) { SetIsEncrypted(value); return *this;} /** *

The date and time a recovery point was last restored, in Unix format and * Coordinated Universal Time (UTC). The value of LastRestoreTime is * accurate to milliseconds. For example, the value 1516925490.087 represents * Friday, January 26, 2018 12:11:30.087 AM.

*/ inline const Aws::Utils::DateTime& GetLastRestoreTime() const{ return m_lastRestoreTime; } /** *

The date and time a recovery point was last restored, in Unix format and * Coordinated Universal Time (UTC). The value of LastRestoreTime is * accurate to milliseconds. For example, the value 1516925490.087 represents * Friday, January 26, 2018 12:11:30.087 AM.

*/ inline bool LastRestoreTimeHasBeenSet() const { return m_lastRestoreTimeHasBeenSet; } /** *

The date and time a recovery point was last restored, in Unix format and * Coordinated Universal Time (UTC). The value of LastRestoreTime is * accurate to milliseconds. For example, the value 1516925490.087 represents * Friday, January 26, 2018 12:11:30.087 AM.

*/ inline void SetLastRestoreTime(const Aws::Utils::DateTime& value) { m_lastRestoreTimeHasBeenSet = true; m_lastRestoreTime = value; } /** *

The date and time a recovery point was last restored, in Unix format and * Coordinated Universal Time (UTC). The value of LastRestoreTime is * accurate to milliseconds. For example, the value 1516925490.087 represents * Friday, January 26, 2018 12:11:30.087 AM.

*/ inline void SetLastRestoreTime(Aws::Utils::DateTime&& value) { m_lastRestoreTimeHasBeenSet = true; m_lastRestoreTime = std::move(value); } /** *

The date and time a recovery point was last restored, in Unix format and * Coordinated Universal Time (UTC). The value of LastRestoreTime is * accurate to milliseconds. For example, the value 1516925490.087 represents * Friday, January 26, 2018 12:11:30.087 AM.

*/ inline RecoveryPointByBackupVault& WithLastRestoreTime(const Aws::Utils::DateTime& value) { SetLastRestoreTime(value); return *this;} /** *

The date and time a recovery point was last restored, in Unix format and * Coordinated Universal Time (UTC). The value of LastRestoreTime is * accurate to milliseconds. For example, the value 1516925490.087 represents * Friday, January 26, 2018 12:11:30.087 AM.

*/ inline RecoveryPointByBackupVault& WithLastRestoreTime(Aws::Utils::DateTime&& value) { SetLastRestoreTime(std::move(value)); return *this;} private: Aws::String m_recoveryPointArn; bool m_recoveryPointArnHasBeenSet; Aws::String m_backupVaultName; bool m_backupVaultNameHasBeenSet; Aws::String m_backupVaultArn; bool m_backupVaultArnHasBeenSet; Aws::String m_resourceArn; bool m_resourceArnHasBeenSet; Aws::String m_resourceType; bool m_resourceTypeHasBeenSet; RecoveryPointCreator m_createdBy; bool m_createdByHasBeenSet; Aws::String m_iamRoleArn; bool m_iamRoleArnHasBeenSet; RecoveryPointStatus m_status; bool m_statusHasBeenSet; Aws::Utils::DateTime m_creationDate; bool m_creationDateHasBeenSet; Aws::Utils::DateTime m_completionDate; bool m_completionDateHasBeenSet; long long m_backupSizeInBytes; bool m_backupSizeInBytesHasBeenSet; CalculatedLifecycle m_calculatedLifecycle; bool m_calculatedLifecycleHasBeenSet; Lifecycle m_lifecycle; bool m_lifecycleHasBeenSet; Aws::String m_encryptionKeyArn; bool m_encryptionKeyArnHasBeenSet; bool m_isEncrypted; bool m_isEncryptedHasBeenSet; Aws::Utils::DateTime m_lastRestoreTime; bool m_lastRestoreTimeHasBeenSet; }; } // namespace Model } // namespace Backup } // namespace Aws