/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the details of the features enabled on the table when the backup was
* created. For example, LSIs, GSIs, streams, TTL. See Also:
AWS
* API Reference
Represents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline const Aws::VectorRepresents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline bool LocalSecondaryIndexesHasBeenSet() const { return m_localSecondaryIndexesHasBeenSet; } /** *Represents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline void SetLocalSecondaryIndexes(const Aws::VectorRepresents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline void SetLocalSecondaryIndexes(Aws::VectorRepresents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline SourceTableFeatureDetails& WithLocalSecondaryIndexes(const Aws::VectorRepresents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline SourceTableFeatureDetails& WithLocalSecondaryIndexes(Aws::VectorRepresents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline SourceTableFeatureDetails& AddLocalSecondaryIndexes(const LocalSecondaryIndexInfo& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes.push_back(value); return *this; } /** *Represents the LSI properties for the table when the backup was created. It * includes the IndexName, KeySchema and Projection for the LSIs on the table at * the time of backup.
*/ inline SourceTableFeatureDetails& AddLocalSecondaryIndexes(LocalSecondaryIndexInfo&& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes.push_back(std::move(value)); return *this; } /** *Represents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline const Aws::VectorRepresents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline bool GlobalSecondaryIndexesHasBeenSet() const { return m_globalSecondaryIndexesHasBeenSet; } /** *Represents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline void SetGlobalSecondaryIndexes(const Aws::VectorRepresents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline void SetGlobalSecondaryIndexes(Aws::VectorRepresents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline SourceTableFeatureDetails& WithGlobalSecondaryIndexes(const Aws::VectorRepresents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline SourceTableFeatureDetails& WithGlobalSecondaryIndexes(Aws::VectorRepresents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline SourceTableFeatureDetails& AddGlobalSecondaryIndexes(const GlobalSecondaryIndexInfo& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.push_back(value); return *this; } /** *Represents the GSI properties for the table when the backup was created. It * includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the * GSIs on the table at the time of backup.
*/ inline SourceTableFeatureDetails& AddGlobalSecondaryIndexes(GlobalSecondaryIndexInfo&& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.push_back(std::move(value)); return *this; } /** *Stream settings on the table when the backup was created.
*/ inline const StreamSpecification& GetStreamDescription() const{ return m_streamDescription; } /** *Stream settings on the table when the backup was created.
*/ inline bool StreamDescriptionHasBeenSet() const { return m_streamDescriptionHasBeenSet; } /** *Stream settings on the table when the backup was created.
*/ inline void SetStreamDescription(const StreamSpecification& value) { m_streamDescriptionHasBeenSet = true; m_streamDescription = value; } /** *Stream settings on the table when the backup was created.
*/ inline void SetStreamDescription(StreamSpecification&& value) { m_streamDescriptionHasBeenSet = true; m_streamDescription = std::move(value); } /** *Stream settings on the table when the backup was created.
*/ inline SourceTableFeatureDetails& WithStreamDescription(const StreamSpecification& value) { SetStreamDescription(value); return *this;} /** *Stream settings on the table when the backup was created.
*/ inline SourceTableFeatureDetails& WithStreamDescription(StreamSpecification&& value) { SetStreamDescription(std::move(value)); return *this;} /** *Time to Live settings on the table when the backup was created.
*/ inline const TimeToLiveDescription& GetTimeToLiveDescription() const{ return m_timeToLiveDescription; } /** *Time to Live settings on the table when the backup was created.
*/ inline bool TimeToLiveDescriptionHasBeenSet() const { return m_timeToLiveDescriptionHasBeenSet; } /** *Time to Live settings on the table when the backup was created.
*/ inline void SetTimeToLiveDescription(const TimeToLiveDescription& value) { m_timeToLiveDescriptionHasBeenSet = true; m_timeToLiveDescription = value; } /** *Time to Live settings on the table when the backup was created.
*/ inline void SetTimeToLiveDescription(TimeToLiveDescription&& value) { m_timeToLiveDescriptionHasBeenSet = true; m_timeToLiveDescription = std::move(value); } /** *Time to Live settings on the table when the backup was created.
*/ inline SourceTableFeatureDetails& WithTimeToLiveDescription(const TimeToLiveDescription& value) { SetTimeToLiveDescription(value); return *this;} /** *Time to Live settings on the table when the backup was created.
*/ inline SourceTableFeatureDetails& WithTimeToLiveDescription(TimeToLiveDescription&& value) { SetTimeToLiveDescription(std::move(value)); return *this;} /** *The description of the server-side encryption status on the table when the * backup was created.
*/ inline const SSEDescription& GetSSEDescription() const{ return m_sSEDescription; } /** *The description of the server-side encryption status on the table when the * backup was created.
*/ inline bool SSEDescriptionHasBeenSet() const { return m_sSEDescriptionHasBeenSet; } /** *The description of the server-side encryption status on the table when the * backup was created.
*/ inline void SetSSEDescription(const SSEDescription& value) { m_sSEDescriptionHasBeenSet = true; m_sSEDescription = value; } /** *The description of the server-side encryption status on the table when the * backup was created.
*/ inline void SetSSEDescription(SSEDescription&& value) { m_sSEDescriptionHasBeenSet = true; m_sSEDescription = std::move(value); } /** *The description of the server-side encryption status on the table when the * backup was created.
*/ inline SourceTableFeatureDetails& WithSSEDescription(const SSEDescription& value) { SetSSEDescription(value); return *this;} /** *The description of the server-side encryption status on the table when the * backup was created.
*/ inline SourceTableFeatureDetails& WithSSEDescription(SSEDescription&& value) { SetSSEDescription(std::move(value)); return *this;} private: Aws::Vector