7#include <aws/dynamodb/DynamoDB_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/dynamodb/model/TableStatus.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/dynamodb/model/ProvisionedThroughputDescription.h>
13#include <aws/dynamodb/model/BillingModeSummary.h>
14#include <aws/dynamodb/model/StreamSpecification.h>
15#include <aws/dynamodb/model/RestoreSummary.h>
16#include <aws/dynamodb/model/SSEDescription.h>
17#include <aws/dynamodb/model/ArchivalSummary.h>
18#include <aws/dynamodb/model/TableClassSummary.h>
19#include <aws/dynamodb/model/OnDemandThroughput.h>
20#include <aws/dynamodb/model/TableWarmThroughputDescription.h>
21#include <aws/dynamodb/model/MultiRegionConsistency.h>
22#include <aws/dynamodb/model/AttributeDefinition.h>
23#include <aws/dynamodb/model/KeySchemaElement.h>
24#include <aws/dynamodb/model/LocalSecondaryIndexDescription.h>
25#include <aws/dynamodb/model/GlobalSecondaryIndexDescription.h>
26#include <aws/dynamodb/model/ReplicaDescription.h>
27#include <aws/dynamodb/model/GlobalTableWitnessDescription.h>
70 template<
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
71 void SetAttributeDefinitions(AttributeDefinitionsT&& value) { m_attributeDefinitionsHasBeenSet =
true; m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value); }
72 template<
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
74 template<
typename AttributeDefinitionsT = AttributeDefinition>
75 TableDescription&
AddAttributeDefinitions(AttributeDefinitionsT&& value) { m_attributeDefinitionsHasBeenSet =
true; m_attributeDefinitions.emplace_back(std::forward<AttributeDefinitionsT>(value));
return *
this; }
84 template<
typename TableNameT = Aws::String>
85 void SetTableName(TableNameT&& value) { m_tableNameHasBeenSet =
true; m_tableName = std::forward<TableNameT>(value); }
86 template<
typename TableNameT = Aws::String>
109 template<
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
110 void SetKeySchema(KeySchemaT&& value) { m_keySchemaHasBeenSet =
true; m_keySchema = std::forward<KeySchemaT>(value); }
111 template<
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
113 template<
typename KeySchemaT = KeySchemaElement>
114 TableDescription&
AddKeySchema(KeySchemaT&& value) { m_keySchemaHasBeenSet =
true; m_keySchema.emplace_back(std::forward<KeySchemaT>(value));
return *
this; }
147 template<
typename CreationDateTimeT = Aws::Utils::DateTime>
148 void SetCreationDateTime(CreationDateTimeT&& value) { m_creationDateTimeHasBeenSet =
true; m_creationDateTime = std::forward<CreationDateTimeT>(value); }
149 template<
typename CreationDateTimeT = Aws::Utils::DateTime>
160 template<
typename ProvisionedThroughputT = ProvisionedThroughputDescription>
161 void SetProvisionedThroughput(ProvisionedThroughputT&& value) { m_provisionedThroughputHasBeenSet =
true; m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value); }
162 template<
typename ProvisionedThroughputT = ProvisionedThroughputDescription>
174 inline void SetTableSizeBytes(
long long value) { m_tableSizeBytesHasBeenSet =
true; m_tableSizeBytes = value; }
186 inline void SetItemCount(
long long value) { m_itemCountHasBeenSet =
true; m_itemCount = value; }
196 template<
typename TableArnT = Aws::String>
197 void SetTableArn(TableArnT&& value) { m_tableArnHasBeenSet =
true; m_tableArn = std::forward<TableArnT>(value); }
198 template<
typename TableArnT = Aws::String>
208 template<
typename TableIdT = Aws::String>
209 void SetTableId(TableIdT&& value) { m_tableIdHasBeenSet =
true; m_tableId = std::forward<TableIdT>(value); }
210 template<
typename TableIdT = Aws::String>
220 template<
typename BillingModeSummaryT = BillingModeSummary>
221 void SetBillingModeSummary(BillingModeSummaryT&& value) { m_billingModeSummaryHasBeenSet =
true; m_billingModeSummary = std::forward<BillingModeSummaryT>(value); }
222 template<
typename BillingModeSummaryT = BillingModeSummary>
265 template<
typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndexDescription>>
266 void SetLocalSecondaryIndexes(LocalSecondaryIndexesT&& value) { m_localSecondaryIndexesHasBeenSet =
true; m_localSecondaryIndexes = std::forward<LocalSecondaryIndexesT>(value); }
267 template<
typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndexDescription>>
269 template<
typename LocalSecondaryIndexesT = LocalSecondaryIndexDescription>
270 TableDescription&
AddLocalSecondaryIndexes(LocalSecondaryIndexesT&& value) { m_localSecondaryIndexesHasBeenSet =
true; m_localSecondaryIndexes.emplace_back(std::forward<LocalSecondaryIndexesT>(value));
return *
this; }
328 template<
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndexDescription>>
329 void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { m_globalSecondaryIndexesHasBeenSet =
true; m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value); }
330 template<
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndexDescription>>
332 template<
typename GlobalSecondaryIndexesT = GlobalSecondaryIndexDescription>
333 TableDescription&
AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { m_globalSecondaryIndexesHasBeenSet =
true; m_globalSecondaryIndexes.emplace_back(std::forward<GlobalSecondaryIndexesT>(value));
return *
this; }
342 template<
typename StreamSpecificationT = StreamSpecification>
343 void SetStreamSpecification(StreamSpecificationT&& value) { m_streamSpecificationHasBeenSet =
true; m_streamSpecification = std::forward<StreamSpecificationT>(value); }
344 template<
typename StreamSpecificationT = StreamSpecification>
360 template<
typename LatestStreamLabelT = Aws::String>
361 void SetLatestStreamLabel(LatestStreamLabelT&& value) { m_latestStreamLabelHasBeenSet =
true; m_latestStreamLabel = std::forward<LatestStreamLabelT>(value); }
362 template<
typename LatestStreamLabelT = Aws::String>
373 template<
typename LatestStreamArnT = Aws::String>
374 void SetLatestStreamArn(LatestStreamArnT&& value) { m_latestStreamArnHasBeenSet =
true; m_latestStreamArn = std::forward<LatestStreamArnT>(value); }
375 template<
typename LatestStreamArnT = Aws::String>
388 template<
typename GlobalTableVersionT = Aws::String>
389 void SetGlobalTableVersion(GlobalTableVersionT&& value) { m_globalTableVersionHasBeenSet =
true; m_globalTableVersion = std::forward<GlobalTableVersionT>(value); }
390 template<
typename GlobalTableVersionT = Aws::String>
400 template<
typename ReplicasT = Aws::Vector<ReplicaDescription>>
401 void SetReplicas(ReplicasT&& value) { m_replicasHasBeenSet =
true; m_replicas = std::forward<ReplicasT>(value); }
402 template<
typename ReplicasT = Aws::Vector<ReplicaDescription>>
404 template<
typename ReplicasT = ReplicaDescription>
405 TableDescription&
AddReplicas(ReplicasT&& value) { m_replicasHasBeenSet =
true; m_replicas.emplace_back(std::forward<ReplicasT>(value));
return *
this; }
415 template<
typename GlobalTableWitnessesT = Aws::Vector<GlobalTableWitnessDescription>>
416 void SetGlobalTableWitnesses(GlobalTableWitnessesT&& value) { m_globalTableWitnessesHasBeenSet =
true; m_globalTableWitnesses = std::forward<GlobalTableWitnessesT>(value); }
417 template<
typename GlobalTableWitnessesT = Aws::Vector<GlobalTableWitnessDescription>>
419 template<
typename GlobalTableWitnessesT = GlobalTableWitnessDescription>
420 TableDescription&
AddGlobalTableWitnesses(GlobalTableWitnessesT&& value) { m_globalTableWitnessesHasBeenSet =
true; m_globalTableWitnesses.emplace_back(std::forward<GlobalTableWitnessesT>(value));
return *
this; }
429 template<
typename RestoreSummaryT = RestoreSummary>
430 void SetRestoreSummary(RestoreSummaryT&& value) { m_restoreSummaryHasBeenSet =
true; m_restoreSummary = std::forward<RestoreSummaryT>(value); }
431 template<
typename RestoreSummaryT = RestoreSummary>
442 template<
typename SSEDescriptionT = SSEDescription>
443 void SetSSEDescription(SSEDescriptionT&& value) { m_sSEDescriptionHasBeenSet =
true; m_sSEDescription = std::forward<SSEDescriptionT>(value); }
444 template<
typename SSEDescriptionT = SSEDescription>
454 template<
typename ArchivalSummaryT = ArchivalSummary>
455 void SetArchivalSummary(ArchivalSummaryT&& value) { m_archivalSummaryHasBeenSet =
true; m_archivalSummary = std::forward<ArchivalSummaryT>(value); }
456 template<
typename ArchivalSummaryT = ArchivalSummary>
466 template<
typename TableClassSummaryT = TableClassSummary>
467 void SetTableClassSummary(TableClassSummaryT&& value) { m_tableClassSummaryHasBeenSet =
true; m_tableClassSummary = std::forward<TableClassSummaryT>(value); }
468 template<
typename TableClassSummaryT = TableClassSummary>
491 template<
typename OnDemandThroughputT = OnDemandThroughput>
492 void SetOnDemandThroughput(OnDemandThroughputT&& value) { m_onDemandThroughputHasBeenSet =
true; m_onDemandThroughput = std::forward<OnDemandThroughputT>(value); }
493 template<
typename OnDemandThroughputT = OnDemandThroughput>
503 template<
typename WarmThroughputT = TableWarmThroughputDescription>
504 void SetWarmThroughput(WarmThroughputT&& value) { m_warmThroughputHasBeenSet =
true; m_warmThroughput = std::forward<WarmThroughputT>(value); }
505 template<
typename WarmThroughputT = TableWarmThroughputDescription>
529 bool m_attributeDefinitionsHasBeenSet =
false;
532 bool m_tableNameHasBeenSet =
false;
535 bool m_keySchemaHasBeenSet =
false;
538 bool m_tableStatusHasBeenSet =
false;
541 bool m_creationDateTimeHasBeenSet =
false;
543 ProvisionedThroughputDescription m_provisionedThroughput;
544 bool m_provisionedThroughputHasBeenSet =
false;
546 long long m_tableSizeBytes{0};
547 bool m_tableSizeBytesHasBeenSet =
false;
549 long long m_itemCount{0};
550 bool m_itemCountHasBeenSet =
false;
553 bool m_tableArnHasBeenSet =
false;
556 bool m_tableIdHasBeenSet =
false;
558 BillingModeSummary m_billingModeSummary;
559 bool m_billingModeSummaryHasBeenSet =
false;
562 bool m_localSecondaryIndexesHasBeenSet =
false;
565 bool m_globalSecondaryIndexesHasBeenSet =
false;
567 StreamSpecification m_streamSpecification;
568 bool m_streamSpecificationHasBeenSet =
false;
571 bool m_latestStreamLabelHasBeenSet =
false;
574 bool m_latestStreamArnHasBeenSet =
false;
577 bool m_globalTableVersionHasBeenSet =
false;
580 bool m_replicasHasBeenSet =
false;
583 bool m_globalTableWitnessesHasBeenSet =
false;
585 RestoreSummary m_restoreSummary;
586 bool m_restoreSummaryHasBeenSet =
false;
588 SSEDescription m_sSEDescription;
589 bool m_sSEDescriptionHasBeenSet =
false;
591 ArchivalSummary m_archivalSummary;
592 bool m_archivalSummaryHasBeenSet =
false;
594 TableClassSummary m_tableClassSummary;
595 bool m_tableClassSummaryHasBeenSet =
false;
597 bool m_deletionProtectionEnabled{
false};
598 bool m_deletionProtectionEnabledHasBeenSet =
false;
600 OnDemandThroughput m_onDemandThroughput;
601 bool m_onDemandThroughputHasBeenSet =
false;
603 TableWarmThroughputDescription m_warmThroughput;
604 bool m_warmThroughputHasBeenSet =
false;
607 bool m_multiRegionConsistencyHasBeenSet =
false;
bool ProvisionedThroughputHasBeenSet() const
const Aws::String & GetTableArn() const
void SetTableStatus(TableStatus value)
const TableWarmThroughputDescription & GetWarmThroughput() const
bool WarmThroughputHasBeenSet() const
bool ReplicasHasBeenSet() const
AWS_DYNAMODB_API TableDescription()=default
void SetWarmThroughput(WarmThroughputT &&value)
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
bool CreationDateTimeHasBeenSet() const
TableDescription & AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
void SetArchivalSummary(ArchivalSummaryT &&value)
void SetRestoreSummary(RestoreSummaryT &&value)
const TableClassSummary & GetTableClassSummary() const
bool LocalSecondaryIndexesHasBeenSet() const
bool DeletionProtectionEnabledHasBeenSet() const
TableDescription & WithKeySchema(KeySchemaT &&value)
bool OnDemandThroughputHasBeenSet() const
bool TableIdHasBeenSet() const
bool GlobalTableVersionHasBeenSet() const
const RestoreSummary & GetRestoreSummary() const
void SetMultiRegionConsistency(MultiRegionConsistency value)
TableDescription & WithItemCount(long long value)
bool MultiRegionConsistencyHasBeenSet() const
bool GetDeletionProtectionEnabled() const
TableDescription & WithLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
void SetTableSizeBytes(long long value)
bool RestoreSummaryHasBeenSet() const
bool LatestStreamArnHasBeenSet() const
void SetOnDemandThroughput(OnDemandThroughputT &&value)
const Aws::String & GetTableName() const
void SetGlobalTableVersion(GlobalTableVersionT &&value)
const Aws::Vector< GlobalSecondaryIndexDescription > & GetGlobalSecondaryIndexes() const
const Aws::String & GetLatestStreamLabel() const
AWS_DYNAMODB_API TableDescription(Aws::Utils::Json::JsonView jsonValue)
TableDescription & WithGlobalTableVersion(GlobalTableVersionT &&value)
void SetKeySchema(KeySchemaT &&value)
TableDescription & WithGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
TableDescription & WithLatestStreamLabel(LatestStreamLabelT &&value)
const Aws::String & GetTableId() const
TableDescription & WithLatestStreamArn(LatestStreamArnT &&value)
TableDescription & WithTableSizeBytes(long long value)
long long GetTableSizeBytes() const
TableDescription & WithTableId(TableIdT &&value)
bool TableStatusHasBeenSet() const
void SetLatestStreamArn(LatestStreamArnT &&value)
void SetTableArn(TableArnT &&value)
TableDescription & AddLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
void SetSSEDescription(SSEDescriptionT &&value)
const BillingModeSummary & GetBillingModeSummary() const
bool BillingModeSummaryHasBeenSet() const
void SetCreationDateTime(CreationDateTimeT &&value)
TableDescription & WithReplicas(ReplicasT &&value)
bool TableSizeBytesHasBeenSet() const
bool AttributeDefinitionsHasBeenSet() const
void SetAttributeDefinitions(AttributeDefinitionsT &&value)
void SetTableClassSummary(TableClassSummaryT &&value)
bool LatestStreamLabelHasBeenSet() const
const Aws::String & GetLatestStreamArn() const
TableDescription & WithTableArn(TableArnT &&value)
TableDescription & WithBillingModeSummary(BillingModeSummaryT &&value)
const OnDemandThroughput & GetOnDemandThroughput() const
const StreamSpecification & GetStreamSpecification() const
TableDescription & WithGlobalTableWitnesses(GlobalTableWitnessesT &&value)
void SetLatestStreamLabel(LatestStreamLabelT &&value)
TableDescription & WithArchivalSummary(ArchivalSummaryT &&value)
TableDescription & WithTableClassSummary(TableClassSummaryT &&value)
TableDescription & AddGlobalTableWitnesses(GlobalTableWitnessesT &&value)
const ProvisionedThroughputDescription & GetProvisionedThroughput() const
TableDescription & WithWarmThroughput(WarmThroughputT &&value)
TableDescription & WithAttributeDefinitions(AttributeDefinitionsT &&value)
bool TableNameHasBeenSet() const
void SetLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
TableDescription & WithDeletionProtectionEnabled(bool value)
void SetDeletionProtectionEnabled(bool value)
const Aws::Utils::DateTime & GetCreationDateTime() const
void SetBillingModeSummary(BillingModeSummaryT &&value)
TableDescription & WithStreamSpecification(StreamSpecificationT &&value)
void SetTableName(TableNameT &&value)
const Aws::Vector< ReplicaDescription > & GetReplicas() const
bool ArchivalSummaryHasBeenSet() const
bool GlobalTableWitnessesHasBeenSet() const
TableDescription & WithRestoreSummary(RestoreSummaryT &&value)
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
TableStatus GetTableStatus() const
void SetTableId(TableIdT &&value)
const ArchivalSummary & GetArchivalSummary() const
TableDescription & WithTableStatus(TableStatus value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
bool GlobalSecondaryIndexesHasBeenSet() const
bool StreamSpecificationHasBeenSet() const
const Aws::Vector< GlobalTableWitnessDescription > & GetGlobalTableWitnesses() const
bool TableArnHasBeenSet() const
TableDescription & AddKeySchema(KeySchemaT &&value)
TableDescription & AddReplicas(ReplicasT &&value)
void SetReplicas(ReplicasT &&value)
void SetItemCount(long long value)
const Aws::Vector< LocalSecondaryIndexDescription > & GetLocalSecondaryIndexes() const
bool TableClassSummaryHasBeenSet() const
void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
TableDescription & WithMultiRegionConsistency(MultiRegionConsistency value)
TableDescription & WithSSEDescription(SSEDescriptionT &&value)
bool KeySchemaHasBeenSet() const
TableDescription & WithTableName(TableNameT &&value)
void SetStreamSpecification(StreamSpecificationT &&value)
bool ItemCountHasBeenSet() const
bool SSEDescriptionHasBeenSet() const
TableDescription & WithCreationDateTime(CreationDateTimeT &&value)
TableDescription & AddAttributeDefinitions(AttributeDefinitionsT &&value)
AWS_DYNAMODB_API TableDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
TableDescription & WithProvisionedThroughput(ProvisionedThroughputT &&value)
const SSEDescription & GetSSEDescription() const
long long GetItemCount() const
void SetGlobalTableWitnesses(GlobalTableWitnessesT &&value)
MultiRegionConsistency GetMultiRegionConsistency() const
const Aws::Vector< AttributeDefinition > & GetAttributeDefinitions() const
const Aws::String & GetGlobalTableVersion() const
TableDescription & WithOnDemandThroughput(OnDemandThroughputT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue