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

Contains details of a table archival operation.

See Also:

AWS * API Reference

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

The date and time when table archival was initiated by DynamoDB, in UNIX * epoch time format.

*/ inline const Aws::Utils::DateTime& GetArchivalDateTime() const{ return m_archivalDateTime; } /** *

The date and time when table archival was initiated by DynamoDB, in UNIX * epoch time format.

*/ inline bool ArchivalDateTimeHasBeenSet() const { return m_archivalDateTimeHasBeenSet; } /** *

The date and time when table archival was initiated by DynamoDB, in UNIX * epoch time format.

*/ inline void SetArchivalDateTime(const Aws::Utils::DateTime& value) { m_archivalDateTimeHasBeenSet = true; m_archivalDateTime = value; } /** *

The date and time when table archival was initiated by DynamoDB, in UNIX * epoch time format.

*/ inline void SetArchivalDateTime(Aws::Utils::DateTime&& value) { m_archivalDateTimeHasBeenSet = true; m_archivalDateTime = std::move(value); } /** *

The date and time when table archival was initiated by DynamoDB, in UNIX * epoch time format.

*/ inline ArchivalSummary& WithArchivalDateTime(const Aws::Utils::DateTime& value) { SetArchivalDateTime(value); return *this;} /** *

The date and time when table archival was initiated by DynamoDB, in UNIX * epoch time format.

*/ inline ArchivalSummary& WithArchivalDateTime(Aws::Utils::DateTime&& value) { SetArchivalDateTime(std::move(value)); return *this;} /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline const Aws::String& GetArchivalReason() const{ return m_archivalReason; } /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline bool ArchivalReasonHasBeenSet() const { return m_archivalReasonHasBeenSet; } /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline void SetArchivalReason(const Aws::String& value) { m_archivalReasonHasBeenSet = true; m_archivalReason = value; } /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline void SetArchivalReason(Aws::String&& value) { m_archivalReasonHasBeenSet = true; m_archivalReason = std::move(value); } /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline void SetArchivalReason(const char* value) { m_archivalReasonHasBeenSet = true; m_archivalReason.assign(value); } /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline ArchivalSummary& WithArchivalReason(const Aws::String& value) { SetArchivalReason(value); return *this;} /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline ArchivalSummary& WithArchivalReason(Aws::String&& value) { SetArchivalReason(std::move(value)); return *this;} /** *

The reason DynamoDB archived the table. Currently, the only possible value * is:

  • INACCESSIBLE_ENCRYPTION_CREDENTIALS - The * table was archived due to the table's KMS key being inaccessible for more than * seven days. An On-Demand backup was created at the archival time.

  • *
*/ inline ArchivalSummary& WithArchivalReason(const char* value) { SetArchivalReason(value); return *this;} /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline const Aws::String& GetArchivalBackupArn() const{ return m_archivalBackupArn; } /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline bool ArchivalBackupArnHasBeenSet() const { return m_archivalBackupArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline void SetArchivalBackupArn(const Aws::String& value) { m_archivalBackupArnHasBeenSet = true; m_archivalBackupArn = value; } /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline void SetArchivalBackupArn(Aws::String&& value) { m_archivalBackupArnHasBeenSet = true; m_archivalBackupArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline void SetArchivalBackupArn(const char* value) { m_archivalBackupArnHasBeenSet = true; m_archivalBackupArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline ArchivalSummary& WithArchivalBackupArn(const Aws::String& value) { SetArchivalBackupArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline ArchivalSummary& WithArchivalBackupArn(Aws::String&& value) { SetArchivalBackupArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the backup the table was archived to, when * applicable in the archival reason. If you wish to restore this backup to the * same table name, you will need to delete the original table.

*/ inline ArchivalSummary& WithArchivalBackupArn(const char* value) { SetArchivalBackupArn(value); return *this;} private: Aws::Utils::DateTime m_archivalDateTime; bool m_archivalDateTimeHasBeenSet = false; Aws::String m_archivalReason; bool m_archivalReasonHasBeenSet = false; Aws::String m_archivalBackupArn; bool m_archivalBackupArnHasBeenSet = false; }; } // namespace Model } // namespace DynamoDB } // namespace Aws