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

Contains an array of Transition objects specifying how long in days before a * recovery point transitions to cold storage or is deleted.

See * Also:

AWS * API Reference

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

Specifies the number of days after creation that a recovery point is deleted. * Must be greater than 90 days plus MoveToColdStorageAfterDays.

*/ inline long long GetDeleteAfterDays() const{ return m_deleteAfterDays; } /** *

Specifies the number of days after creation that a recovery point is deleted. * Must be greater than 90 days plus MoveToColdStorageAfterDays.

*/ inline bool DeleteAfterDaysHasBeenSet() const { return m_deleteAfterDaysHasBeenSet; } /** *

Specifies the number of days after creation that a recovery point is deleted. * Must be greater than 90 days plus MoveToColdStorageAfterDays.

*/ inline void SetDeleteAfterDays(long long value) { m_deleteAfterDaysHasBeenSet = true; m_deleteAfterDays = value; } /** *

Specifies the number of days after creation that a recovery point is deleted. * Must be greater than 90 days plus MoveToColdStorageAfterDays.

*/ inline AwsBackupRecoveryPointLifecycleDetails& WithDeleteAfterDays(long long value) { SetDeleteAfterDays(value); return *this;} /** *

Specifies the number of days after creation that a recovery point is moved to * cold storage.

*/ inline long long GetMoveToColdStorageAfterDays() const{ return m_moveToColdStorageAfterDays; } /** *

Specifies the number of days after creation that a recovery point is moved to * cold storage.

*/ inline bool MoveToColdStorageAfterDaysHasBeenSet() const { return m_moveToColdStorageAfterDaysHasBeenSet; } /** *

Specifies the number of days after creation that a recovery point is moved to * cold storage.

*/ inline void SetMoveToColdStorageAfterDays(long long value) { m_moveToColdStorageAfterDaysHasBeenSet = true; m_moveToColdStorageAfterDays = value; } /** *

Specifies the number of days after creation that a recovery point is moved to * cold storage.

*/ inline AwsBackupRecoveryPointLifecycleDetails& WithMoveToColdStorageAfterDays(long long value) { SetMoveToColdStorageAfterDays(value); return *this;} private: long long m_deleteAfterDays; bool m_deleteAfterDaysHasBeenSet = false; long long m_moveToColdStorageAfterDays; bool m_moveToColdStorageAfterDaysHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws