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

Specifies how long in days before a recovery point transitions to cold * storage or is deleted.

See Also:

AWS * API Reference

*/ class AwsBackupRecoveryPointCalculatedLifecycleDetails { public: AWS_SECURITYHUB_API AwsBackupRecoveryPointCalculatedLifecycleDetails(); AWS_SECURITYHUB_API AwsBackupRecoveryPointCalculatedLifecycleDetails(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsBackupRecoveryPointCalculatedLifecycleDetails& 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 const Aws::String& GetDeleteAt() const{ return m_deleteAt; } /** *

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

*/ inline bool DeleteAtHasBeenSet() const { return m_deleteAtHasBeenSet; } /** *

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

*/ inline void SetDeleteAt(const Aws::String& value) { m_deleteAtHasBeenSet = true; m_deleteAt = value; } /** *

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

*/ inline void SetDeleteAt(Aws::String&& value) { m_deleteAtHasBeenSet = true; m_deleteAt = std::move(value); } /** *

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

*/ inline void SetDeleteAt(const char* value) { m_deleteAtHasBeenSet = true; m_deleteAt.assign(value); } /** *

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

*/ inline AwsBackupRecoveryPointCalculatedLifecycleDetails& WithDeleteAt(const Aws::String& value) { SetDeleteAt(value); return *this;} /** *

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

*/ inline AwsBackupRecoveryPointCalculatedLifecycleDetails& WithDeleteAt(Aws::String&& value) { SetDeleteAt(std::move(value)); return *this;} /** *

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

*/ inline AwsBackupRecoveryPointCalculatedLifecycleDetails& WithDeleteAt(const char* value) { SetDeleteAt(value); return *this;} /** *

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

*/ inline const Aws::String& GetMoveToColdStorageAt() const{ return m_moveToColdStorageAt; } /** *

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

*/ inline bool MoveToColdStorageAtHasBeenSet() const { return m_moveToColdStorageAtHasBeenSet; } /** *

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

*/ inline void SetMoveToColdStorageAt(const Aws::String& value) { m_moveToColdStorageAtHasBeenSet = true; m_moveToColdStorageAt = value; } /** *

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

*/ inline void SetMoveToColdStorageAt(Aws::String&& value) { m_moveToColdStorageAtHasBeenSet = true; m_moveToColdStorageAt = std::move(value); } /** *

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

*/ inline void SetMoveToColdStorageAt(const char* value) { m_moveToColdStorageAtHasBeenSet = true; m_moveToColdStorageAt.assign(value); } /** *

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

*/ inline AwsBackupRecoveryPointCalculatedLifecycleDetails& WithMoveToColdStorageAt(const Aws::String& value) { SetMoveToColdStorageAt(value); return *this;} /** *

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

*/ inline AwsBackupRecoveryPointCalculatedLifecycleDetails& WithMoveToColdStorageAt(Aws::String&& value) { SetMoveToColdStorageAt(std::move(value)); return *this;} /** *

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

*/ inline AwsBackupRecoveryPointCalculatedLifecycleDetails& WithMoveToColdStorageAt(const char* value) { SetMoveToColdStorageAt(value); return *this;} private: Aws::String m_deleteAt; bool m_deleteAtHasBeenSet = false; Aws::String m_moveToColdStorageAt; bool m_moveToColdStorageAtHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws