/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains The lifecycle defines when a protected resource is transitioned to cold
* storage and when it expires. 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 “retention” 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. Resource types that are able to be transitioned to cold storage are listed in
* the "Lifecycle to cold storage" section of the
* Feature availability by resource table. Backup ignores this expression for
* other resource types.DeleteAt
and MoveToColdStorageAt
* timestamps, which are used to specify a lifecycle for a recovery point.See Also:
AWS
* API Reference
A timestamp that specifies when to transition a recovery point to cold * storage.
*/ inline const Aws::Utils::DateTime& GetMoveToColdStorageAt() const{ return m_moveToColdStorageAt; } /** *A timestamp that specifies when to transition a recovery point to cold * storage.
*/ inline bool MoveToColdStorageAtHasBeenSet() const { return m_moveToColdStorageAtHasBeenSet; } /** *A timestamp that specifies when to transition a recovery point to cold * storage.
*/ inline void SetMoveToColdStorageAt(const Aws::Utils::DateTime& value) { m_moveToColdStorageAtHasBeenSet = true; m_moveToColdStorageAt = value; } /** *A timestamp that specifies when to transition a recovery point to cold * storage.
*/ inline void SetMoveToColdStorageAt(Aws::Utils::DateTime&& value) { m_moveToColdStorageAtHasBeenSet = true; m_moveToColdStorageAt = std::move(value); } /** *A timestamp that specifies when to transition a recovery point to cold * storage.
*/ inline CalculatedLifecycle& WithMoveToColdStorageAt(const Aws::Utils::DateTime& value) { SetMoveToColdStorageAt(value); return *this;} /** *A timestamp that specifies when to transition a recovery point to cold * storage.
*/ inline CalculatedLifecycle& WithMoveToColdStorageAt(Aws::Utils::DateTime&& value) { SetMoveToColdStorageAt(std::move(value)); return *this;} /** *A timestamp that specifies when to delete a recovery point.
*/ inline const Aws::Utils::DateTime& GetDeleteAt() const{ return m_deleteAt; } /** *A timestamp that specifies when to delete a recovery point.
*/ inline bool DeleteAtHasBeenSet() const { return m_deleteAtHasBeenSet; } /** *A timestamp that specifies when to delete a recovery point.
*/ inline void SetDeleteAt(const Aws::Utils::DateTime& value) { m_deleteAtHasBeenSet = true; m_deleteAt = value; } /** *A timestamp that specifies when to delete a recovery point.
*/ inline void SetDeleteAt(Aws::Utils::DateTime&& value) { m_deleteAtHasBeenSet = true; m_deleteAt = std::move(value); } /** *A timestamp that specifies when to delete a recovery point.
*/ inline CalculatedLifecycle& WithDeleteAt(const Aws::Utils::DateTime& value) { SetDeleteAt(value); return *this;} /** *A timestamp that specifies when to delete a recovery point.
*/ inline CalculatedLifecycle& WithDeleteAt(Aws::Utils::DateTime&& value) { SetDeleteAt(std::move(value)); return *this;} private: Aws::Utils::DateTime m_moveToColdStorageAt; bool m_moveToColdStorageAtHasBeenSet = false; Aws::Utils::DateTime m_deleteAt; bool m_deleteAtHasBeenSet = false; }; } // namespace Model } // namespace Backup } // namespace Aws