7#include <aws/dynamodb/DynamoDB_EXPORTS.h>
8#include <aws/dynamodb/DynamoDBRequest.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/dynamodb/model/BillingMode.h>
12#include <aws/dynamodb/model/ProvisionedThroughput.h>
13#include <aws/dynamodb/model/StreamSpecification.h>
14#include <aws/dynamodb/model/SSESpecification.h>
15#include <aws/dynamodb/model/TableClass.h>
16#include <aws/dynamodb/model/WarmThroughput.h>
17#include <aws/dynamodb/model/OnDemandThroughput.h>
18#include <aws/dynamodb/model/AttributeDefinition.h>
19#include <aws/dynamodb/model/KeySchemaElement.h>
20#include <aws/dynamodb/model/LocalSecondaryIndex.h>
21#include <aws/dynamodb/model/GlobalSecondaryIndex.h>
22#include <aws/dynamodb/model/Tag.h>
65 template<
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
66 void SetAttributeDefinitions(AttributeDefinitionsT&& value) { m_attributeDefinitionsHasBeenSet =
true; m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value); }
67 template<
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
69 template<
typename AttributeDefinitionsT = AttributeDefinition>
70 CreateTableRequest&
AddAttributeDefinitions(AttributeDefinitionsT&& value) { m_attributeDefinitionsHasBeenSet =
true; m_attributeDefinitions.emplace_back(std::forward<AttributeDefinitionsT>(value));
return *
this; }
80 template<
typename TableNameT = Aws::String>
81 void SetTableName(TableNameT&& value) { m_tableNameHasBeenSet =
true; m_tableName = std::forward<TableNameT>(value); }
82 template<
typename TableNameT = Aws::String>
115 template<
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
116 void SetKeySchema(KeySchemaT&& value) { m_keySchemaHasBeenSet =
true; m_keySchema = std::forward<KeySchemaT>(value); }
117 template<
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
119 template<
typename KeySchemaT = KeySchemaElement>
155 template<
typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndex>>
156 void SetLocalSecondaryIndexes(LocalSecondaryIndexesT&& value) { m_localSecondaryIndexesHasBeenSet =
true; m_localSecondaryIndexes = std::forward<LocalSecondaryIndexesT>(value); }
157 template<
typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndex>>
159 template<
typename LocalSecondaryIndexesT = LocalSecondaryIndex>
195 template<
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
196 void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { m_globalSecondaryIndexesHasBeenSet =
true; m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value); }
197 template<
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
199 template<
typename GlobalSecondaryIndexesT = GlobalSecondaryIndex>
237 template<
typename ProvisionedThroughputT = ProvisionedThroughput>
238 void SetProvisionedThroughput(ProvisionedThroughputT&& value) { m_provisionedThroughputHasBeenSet =
true; m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value); }
239 template<
typename ProvisionedThroughputT = ProvisionedThroughput>
261 template<
typename StreamSpecificationT = StreamSpecification>
262 void SetStreamSpecification(StreamSpecificationT&& value) { m_streamSpecificationHasBeenSet =
true; m_streamSpecification = std::forward<StreamSpecificationT>(value); }
263 template<
typename StreamSpecificationT = StreamSpecification>
273 template<
typename SSESpecificationT = SSESpecification>
274 void SetSSESpecification(SSESpecificationT&& value) { m_sSESpecificationHasBeenSet =
true; m_sSESpecification = std::forward<SSESpecificationT>(value); }
275 template<
typename SSESpecificationT = SSESpecification>
287 template<
typename TagsT = Aws::Vector<Tag>>
288 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
289 template<
typename TagsT = Aws::Vector<Tag>>
291 template<
typename TagsT = Tag>
324 template<
typename WarmThroughputT = WarmThroughput>
325 void SetWarmThroughput(WarmThroughputT&& value) { m_warmThroughputHasBeenSet =
true; m_warmThroughput = std::forward<WarmThroughputT>(value); }
326 template<
typename WarmThroughputT = WarmThroughput>
346 template<
typename ResourcePolicyT = Aws::String>
347 void SetResourcePolicy(ResourcePolicyT&& value) { m_resourcePolicyHasBeenSet =
true; m_resourcePolicy = std::forward<ResourcePolicyT>(value); }
348 template<
typename ResourcePolicyT = Aws::String>
361 template<
typename OnDemandThroughputT = OnDemandThroughput>
362 void SetOnDemandThroughput(OnDemandThroughputT&& value) { m_onDemandThroughputHasBeenSet =
true; m_onDemandThroughput = std::forward<OnDemandThroughputT>(value); }
363 template<
typename OnDemandThroughputT = OnDemandThroughput>
369 bool m_attributeDefinitionsHasBeenSet =
false;
372 bool m_tableNameHasBeenSet =
false;
375 bool m_keySchemaHasBeenSet =
false;
378 bool m_localSecondaryIndexesHasBeenSet =
false;
381 bool m_globalSecondaryIndexesHasBeenSet =
false;
384 bool m_billingModeHasBeenSet =
false;
386 ProvisionedThroughput m_provisionedThroughput;
387 bool m_provisionedThroughputHasBeenSet =
false;
389 StreamSpecification m_streamSpecification;
390 bool m_streamSpecificationHasBeenSet =
false;
392 SSESpecification m_sSESpecification;
393 bool m_sSESpecificationHasBeenSet =
false;
396 bool m_tagsHasBeenSet =
false;
399 bool m_tableClassHasBeenSet =
false;
401 bool m_deletionProtectionEnabled{
false};
402 bool m_deletionProtectionEnabledHasBeenSet =
false;
404 WarmThroughput m_warmThroughput;
405 bool m_warmThroughputHasBeenSet =
false;
408 bool m_resourcePolicyHasBeenSet =
false;
410 OnDemandThroughput m_onDemandThroughput;
411 bool m_onDemandThroughputHasBeenSet =
false;
Aws::Endpoint::EndpointParameters EndpointParameters
const Aws::Vector< GlobalSecondaryIndex > & GetGlobalSecondaryIndexes() const
CreateTableRequest & WithProvisionedThroughput(ProvisionedThroughputT &&value)
void SetTableName(TableNameT &&value)
void SetOnDemandThroughput(OnDemandThroughputT &&value)
void SetKeySchema(KeySchemaT &&value)
CreateTableRequest & WithGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
const Aws::String & GetTableName() const
bool ResourcePolicyHasBeenSet() const
void SetDeletionProtectionEnabled(bool value)
CreateTableRequest & WithBillingMode(BillingMode value)
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
void SetWarmThroughput(WarmThroughputT &&value)
void SetTags(TagsT &&value)
void SetResourcePolicy(ResourcePolicyT &&value)
void SetAttributeDefinitions(AttributeDefinitionsT &&value)
CreateTableRequest & WithTags(TagsT &&value)
bool AttributeDefinitionsHasBeenSet() const
const WarmThroughput & GetWarmThroughput() const
TableClass GetTableClass() const
CreateTableRequest & WithDeletionProtectionEnabled(bool value)
CreateTableRequest & AddLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
void SetSSESpecification(SSESpecificationT &&value)
bool TableClassHasBeenSet() const
BillingMode GetBillingMode() const
bool OnDemandThroughputHasBeenSet() const
AWS_DYNAMODB_API EndpointParameters GetEndpointContextParams() const override
bool TableNameHasBeenSet() const
bool KeySchemaHasBeenSet() 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
CreateTableRequest & AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
CreateTableRequest & WithLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
bool GlobalSecondaryIndexesHasBeenSet() const
const SSESpecification & GetSSESpecification() const
CreateTableRequest & WithSSESpecification(SSESpecificationT &&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)
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
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