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

Contains the description of the backup created for the table.

See * Also:

AWS * API Reference

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

Contains the details of the backup created for the table.

*/ inline const BackupDetails& GetBackupDetails() const{ return m_backupDetails; } /** *

Contains the details of the backup created for the table.

*/ inline bool BackupDetailsHasBeenSet() const { return m_backupDetailsHasBeenSet; } /** *

Contains the details of the backup created for the table.

*/ inline void SetBackupDetails(const BackupDetails& value) { m_backupDetailsHasBeenSet = true; m_backupDetails = value; } /** *

Contains the details of the backup created for the table.

*/ inline void SetBackupDetails(BackupDetails&& value) { m_backupDetailsHasBeenSet = true; m_backupDetails = std::move(value); } /** *

Contains the details of the backup created for the table.

*/ inline BackupDescription& WithBackupDetails(const BackupDetails& value) { SetBackupDetails(value); return *this;} /** *

Contains the details of the backup created for the table.

*/ inline BackupDescription& WithBackupDetails(BackupDetails&& value) { SetBackupDetails(std::move(value)); return *this;} /** *

Contains the details of the table when the backup was created.

*/ inline const SourceTableDetails& GetSourceTableDetails() const{ return m_sourceTableDetails; } /** *

Contains the details of the table when the backup was created.

*/ inline bool SourceTableDetailsHasBeenSet() const { return m_sourceTableDetailsHasBeenSet; } /** *

Contains the details of the table when the backup was created.

*/ inline void SetSourceTableDetails(const SourceTableDetails& value) { m_sourceTableDetailsHasBeenSet = true; m_sourceTableDetails = value; } /** *

Contains the details of the table when the backup was created.

*/ inline void SetSourceTableDetails(SourceTableDetails&& value) { m_sourceTableDetailsHasBeenSet = true; m_sourceTableDetails = std::move(value); } /** *

Contains the details of the table when the backup was created.

*/ inline BackupDescription& WithSourceTableDetails(const SourceTableDetails& value) { SetSourceTableDetails(value); return *this;} /** *

Contains the details of the table when the backup was created.

*/ inline BackupDescription& WithSourceTableDetails(SourceTableDetails&& value) { SetSourceTableDetails(std::move(value)); return *this;} /** *

Contains the details of the features enabled on the table when the backup was * created. For example, LSIs, GSIs, streams, TTL.

*/ inline const SourceTableFeatureDetails& GetSourceTableFeatureDetails() const{ return m_sourceTableFeatureDetails; } /** *

Contains the details of the features enabled on the table when the backup was * created. For example, LSIs, GSIs, streams, TTL.

*/ inline bool SourceTableFeatureDetailsHasBeenSet() const { return m_sourceTableFeatureDetailsHasBeenSet; } /** *

Contains the details of the features enabled on the table when the backup was * created. For example, LSIs, GSIs, streams, TTL.

*/ inline void SetSourceTableFeatureDetails(const SourceTableFeatureDetails& value) { m_sourceTableFeatureDetailsHasBeenSet = true; m_sourceTableFeatureDetails = value; } /** *

Contains the details of the features enabled on the table when the backup was * created. For example, LSIs, GSIs, streams, TTL.

*/ inline void SetSourceTableFeatureDetails(SourceTableFeatureDetails&& value) { m_sourceTableFeatureDetailsHasBeenSet = true; m_sourceTableFeatureDetails = std::move(value); } /** *

Contains the details of the features enabled on the table when the backup was * created. For example, LSIs, GSIs, streams, TTL.

*/ inline BackupDescription& WithSourceTableFeatureDetails(const SourceTableFeatureDetails& value) { SetSourceTableFeatureDetails(value); return *this;} /** *

Contains the details of the features enabled on the table when the backup was * created. For example, LSIs, GSIs, streams, TTL.

*/ inline BackupDescription& WithSourceTableFeatureDetails(SourceTableFeatureDetails&& value) { SetSourceTableFeatureDetails(std::move(value)); return *this;} private: BackupDetails m_backupDetails; bool m_backupDetailsHasBeenSet = false; SourceTableDetails m_sourceTableDetails; bool m_sourceTableDetailsHasBeenSet = false; SourceTableFeatureDetails m_sourceTableFeatureDetails; bool m_sourceTableFeatureDetailsHasBeenSet = false; }; } // namespace Model } // namespace DynamoDB } // namespace Aws