7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dynamodb/DynamoDBRequest.h>
10#include <aws/dynamodb/DynamoDB_EXPORTS.h>
11#include <aws/dynamodb/model/AttributeDefinition.h>
12#include <aws/dynamodb/model/BillingMode.h>
13#include <aws/dynamodb/model/GlobalSecondaryIndex.h>
14#include <aws/dynamodb/model/GlobalTableSettingsReplicationMode.h>
15#include <aws/dynamodb/model/KeySchemaElement.h>
16#include <aws/dynamodb/model/LocalSecondaryIndex.h>
17#include <aws/dynamodb/model/OnDemandThroughput.h>
18#include <aws/dynamodb/model/ProvisionedThroughput.h>
19#include <aws/dynamodb/model/SSESpecification.h>
20#include <aws/dynamodb/model/StreamSpecification.h>
21#include <aws/dynamodb/model/TableClass.h>
22#include <aws/dynamodb/model/Tag.h>
23#include <aws/dynamodb/model/VectorIndex.h>
24#include <aws/dynamodb/model/WarmThroughput.h>
64 template <
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
66 m_attributeDefinitionsHasBeenSet =
true;
67 m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value);
69 template <
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
74 template <
typename AttributeDefinitionsT = AttributeDefinition>
76 m_attributeDefinitionsHasBeenSet =
true;
77 m_attributeDefinitions.emplace_back(std::forward<AttributeDefinitionsT>(value));
89 template <
typename TableNameT = Aws::String>
91 m_tableNameHasBeenSet =
true;
92 m_tableName = std::forward<TableNameT>(value);
94 template <
typename TableNameT = Aws::String>
130 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
132 m_keySchemaHasBeenSet =
true;
133 m_keySchema = std::forward<KeySchemaT>(value);
135 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
140 template <
typename KeySchemaT = KeySchemaElement>
142 m_keySchemaHasBeenSet =
true;
143 m_keySchema.emplace_back(std::forward<KeySchemaT>(value));
180 template <
typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndex>>
182 m_localSecondaryIndexesHasBeenSet =
true;
183 m_localSecondaryIndexes = std::forward<LocalSecondaryIndexesT>(value);
185 template <
typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndex>>
190 template <
typename LocalSecondaryIndexesT = LocalSecondaryIndex>
192 m_localSecondaryIndexesHasBeenSet =
true;
193 m_localSecondaryIndexes.emplace_back(std::forward<LocalSecondaryIndexesT>(value));
231 template <
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
233 m_globalSecondaryIndexesHasBeenSet =
true;
234 m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value);
236 template <
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
241 template <
typename GlobalSecondaryIndexesT = GlobalSecondaryIndex>
243 m_globalSecondaryIndexesHasBeenSet =
true;
244 m_globalSecondaryIndexes.emplace_back(std::forward<GlobalSecondaryIndexesT>(value));
267 m_billingModeHasBeenSet =
true;
268 m_billingMode = value;
289 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
291 m_provisionedThroughputHasBeenSet =
true;
292 m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value);
294 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
319 template <
typename StreamSpecificationT = StreamSpecification>
321 m_streamSpecificationHasBeenSet =
true;
322 m_streamSpecification = std::forward<StreamSpecificationT>(value);
324 template <
typename StreamSpecificationT = StreamSpecification>
337 template <
typename SSESpecificationT = SSESpecification>
339 m_sSESpecificationHasBeenSet =
true;
340 m_sSESpecification = std::forward<SSESpecificationT>(value);
342 template <
typename SSESpecificationT = SSESpecification>
357 template <
typename TagsT = Aws::Vector<Tag>>
359 m_tagsHasBeenSet =
true;
360 m_tags = std::forward<TagsT>(value);
362 template <
typename TagsT = Aws::Vector<Tag>>
364 SetTags(std::forward<TagsT>(value));
367 template <
typename TagsT = Tag>
369 m_tagsHasBeenSet =
true;
370 m_tags.emplace_back(std::forward<TagsT>(value));
383 m_tableClassHasBeenSet =
true;
384 m_tableClass = value;
400 m_deletionProtectionEnabledHasBeenSet =
true;
401 m_deletionProtectionEnabled = value;
416 template <
typename WarmThroughputT = WarmThroughput>
418 m_warmThroughputHasBeenSet =
true;
419 m_warmThroughput = std::forward<WarmThroughputT>(value);
421 template <
typename WarmThroughputT = WarmThroughput>
444 template <
typename ResourcePolicyT = Aws::String>
446 m_resourcePolicyHasBeenSet =
true;
447 m_resourcePolicy = std::forward<ResourcePolicyT>(value);
449 template <
typename ResourcePolicyT = Aws::String>
465 template <
typename OnDemandThroughputT = OnDemandThroughput>
467 m_onDemandThroughputHasBeenSet =
true;
468 m_onDemandThroughput = std::forward<OnDemandThroughputT>(value);
470 template <
typename OnDemandThroughputT = OnDemandThroughput>
484 template <
typename GlobalTableSourceArnT = Aws::String>
486 m_globalTableSourceArnHasBeenSet =
true;
487 m_globalTableSourceArn = std::forward<GlobalTableSourceArnT>(value);
489 template <
typename GlobalTableSourceArnT = Aws::String>
506 m_globalTableSettingsReplicationModeHasBeenSet =
true;
507 m_globalTableSettingsReplicationMode = value;
538 template <
typename VectorIndexesT = Aws::Vector<VectorIndex>>
540 m_vectorIndexesHasBeenSet =
true;
541 m_vectorIndexes = std::forward<VectorIndexesT>(value);
543 template <
typename VectorIndexesT = Aws::Vector<VectorIndex>>
548 template <
typename VectorIndexesT = VectorIndex>
550 m_vectorIndexesHasBeenSet =
true;
551 m_vectorIndexes.emplace_back(std::forward<VectorIndexesT>(value));
568 ProvisionedThroughput m_provisionedThroughput;
570 StreamSpecification m_streamSpecification;
572 SSESpecification m_sSESpecification;
578 bool m_deletionProtectionEnabled{
false};
580 WarmThroughput m_warmThroughput;
584 OnDemandThroughput m_onDemandThroughput;
591 bool m_attributeDefinitionsHasBeenSet =
false;
592 bool m_tableNameHasBeenSet =
false;
593 bool m_keySchemaHasBeenSet =
false;
594 bool m_localSecondaryIndexesHasBeenSet =
false;
595 bool m_globalSecondaryIndexesHasBeenSet =
false;
596 bool m_billingModeHasBeenSet =
false;
597 bool m_provisionedThroughputHasBeenSet =
false;
598 bool m_streamSpecificationHasBeenSet =
false;
599 bool m_sSESpecificationHasBeenSet =
false;
600 bool m_tagsHasBeenSet =
false;
601 bool m_tableClassHasBeenSet =
false;
602 bool m_deletionProtectionEnabledHasBeenSet =
false;
603 bool m_warmThroughputHasBeenSet =
false;
604 bool m_resourcePolicyHasBeenSet =
false;
605 bool m_onDemandThroughputHasBeenSet =
false;
606 bool m_globalTableSourceArnHasBeenSet =
false;
607 bool m_globalTableSettingsReplicationModeHasBeenSet =
false;
608 bool m_vectorIndexesHasBeenSet =
false;
Aws::Endpoint::EndpointParameters EndpointParameters
const Aws::Vector< GlobalSecondaryIndex > & GetGlobalSecondaryIndexes() const
CreateTableRequest & WithProvisionedThroughput(ProvisionedThroughputT &&value)
bool VectorIndexesHasBeenSet() const
void SetTableName(TableNameT &&value)
void SetOnDemandThroughput(OnDemandThroughputT &&value)
void SetKeySchema(KeySchemaT &&value)
CreateTableRequest & WithGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
const Aws::String & GetTableName() const
bool ResourcePolicyHasBeenSet() const
CreateTableRequest & WithVectorIndexes(VectorIndexesT &&value)
void SetDeletionProtectionEnabled(bool value)
CreateTableRequest & WithBillingMode(BillingMode value)
CreateTableRequest & AddVectorIndexes(VectorIndexesT &&value)
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
void SetWarmThroughput(WarmThroughputT &&value)
void SetTags(TagsT &&value)
void SetResourcePolicy(ResourcePolicyT &&value)
void SetAttributeDefinitions(AttributeDefinitionsT &&value)
void SetGlobalTableSourceArn(GlobalTableSourceArnT &&value)
const Aws::Vector< VectorIndex > & GetVectorIndexes() const
CreateTableRequest & WithTags(TagsT &&value)
bool AttributeDefinitionsHasBeenSet() const
const WarmThroughput & GetWarmThroughput() const
TableClass GetTableClass() const
CreateTableRequest & WithDeletionProtectionEnabled(bool value)
bool GlobalTableSourceArnHasBeenSet() const
CreateTableRequest & AddLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
void SetVectorIndexes(VectorIndexesT &&value)
void SetSSESpecification(SSESpecificationT &&value)
bool TableClassHasBeenSet() const
GlobalTableSettingsReplicationMode GetGlobalTableSettingsReplicationMode() const
BillingMode GetBillingMode() const
bool OnDemandThroughputHasBeenSet() const
AWS_DYNAMODB_API EndpointParameters GetEndpointContextParams() const override
bool TableNameHasBeenSet() const
bool KeySchemaHasBeenSet() const
CreateTableRequest & WithGlobalTableSourceArn(GlobalTableSourceArnT &&value)
const Aws::String & GetGlobalTableSourceArn() const
bool LocalSecondaryIndexesHasBeenSet() const
bool WarmThroughputHasBeenSet() const
const Aws::Vector< AttributeDefinition > & GetAttributeDefinitions() const
const Aws::Vector< Tag > & GetTags() const
virtual const char * GetServiceRequestName() const override
bool StreamSpecificationHasBeenSet() const
void SetGlobalTableSettingsReplicationMode(GlobalTableSettingsReplicationMode value)
CreateTableRequest & AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
CreateTableRequest & WithLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
bool GlobalSecondaryIndexesHasBeenSet() const
const SSESpecification & GetSSESpecification() const
CreateTableRequest & WithSSESpecification(SSESpecificationT &&value)
CreateTableRequest & WithGlobalTableSettingsReplicationMode(GlobalTableSettingsReplicationMode value)
const Aws::String & GetResourcePolicy() const
CreateTableRequest & WithResourcePolicy(ResourcePolicyT &&value)
void SetBillingMode(BillingMode value)
bool TagsHasBeenSet() const
void SetLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
CreateTableRequest & AddKeySchema(KeySchemaT &&value)
CreateTableRequest & WithTableName(TableNameT &&value)
CreateTableRequest & AddTags(TagsT &&value)
bool GlobalTableSettingsReplicationModeHasBeenSet() const
CreateTableRequest & WithOnDemandThroughput(OnDemandThroughputT &&value)
CreateTableRequest & WithAttributeDefinitions(AttributeDefinitionsT &&value)
CreateTableRequest & WithStreamSpecification(StreamSpecificationT &&value)
AWS_DYNAMODB_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateTableRequest & WithTableClass(TableClass value)
void SetTableClass(TableClass value)
bool DeletionProtectionEnabledHasBeenSet() const
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
const OnDemandThroughput & GetOnDemandThroughput() const
const StreamSpecification & GetStreamSpecification() const
AWS_DYNAMODB_API Aws::String SerializePayload() const override
bool BillingModeHasBeenSet() const
CreateTableRequest & AddAttributeDefinitions(AttributeDefinitionsT &&value)
AWS_DYNAMODB_API CreateTableRequest()=default
CreateTableRequest & WithWarmThroughput(WarmThroughputT &&value)
const Aws::Vector< LocalSecondaryIndex > & GetLocalSecondaryIndexes() const
void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
CreateTableRequest & WithKeySchema(KeySchemaT &&value)
bool SSESpecificationHasBeenSet() const
bool GetDeletionProtectionEnabled() const
void SetStreamSpecification(StreamSpecificationT &&value)
bool ProvisionedThroughputHasBeenSet() const
const ProvisionedThroughput & GetProvisionedThroughput() const
GlobalTableSettingsReplicationMode
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector