7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dynamodb/DynamoDB_EXPORTS.h>
10#include <aws/dynamodb/model/AttributeDefinition.h>
11#include <aws/dynamodb/model/BillingMode.h>
12#include <aws/dynamodb/model/GlobalSecondaryIndex.h>
13#include <aws/dynamodb/model/KeySchemaElement.h>
14#include <aws/dynamodb/model/OnDemandThroughput.h>
15#include <aws/dynamodb/model/ProvisionedThroughput.h>
16#include <aws/dynamodb/model/SSESpecification.h>
49 template <
typename TableNameT = Aws::String>
51 m_tableNameHasBeenSet =
true;
52 m_tableName = std::forward<TableNameT>(value);
54 template <
typename TableNameT = Aws::String>
67 template <
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
69 m_attributeDefinitionsHasBeenSet =
true;
70 m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value);
72 template <
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
77 template <
typename AttributeDefinitionsT = AttributeDefinition>
79 m_attributeDefinitionsHasBeenSet =
true;
80 m_attributeDefinitions.emplace_back(std::forward<AttributeDefinitionsT>(value));
92 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
94 m_keySchemaHasBeenSet =
true;
95 m_keySchema = std::forward<KeySchemaT>(value);
97 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
102 template <
typename KeySchemaT = KeySchemaElement>
104 m_keySchemaHasBeenSet =
true;
105 m_keySchema.emplace_back(std::forward<KeySchemaT>(value));
118 m_billingModeHasBeenSet =
true;
119 m_billingMode = value;
131 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
133 m_provisionedThroughputHasBeenSet =
true;
134 m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value);
136 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
147 template <
typename OnDemandThroughputT = OnDemandThroughput>
149 m_onDemandThroughputHasBeenSet =
true;
150 m_onDemandThroughput = std::forward<OnDemandThroughputT>(value);
152 template <
typename OnDemandThroughputT = OnDemandThroughput>
163 template <
typename SSESpecificationT = SSESpecification>
165 m_sSESpecificationHasBeenSet =
true;
166 m_sSESpecification = std::forward<SSESpecificationT>(value);
168 template <
typename SSESpecificationT = SSESpecification>
182 template <
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
184 m_globalSecondaryIndexesHasBeenSet =
true;
185 m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value);
187 template <
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
192 template <
typename GlobalSecondaryIndexesT = GlobalSecondaryIndex>
194 m_globalSecondaryIndexesHasBeenSet =
true;
195 m_globalSecondaryIndexes.emplace_back(std::forward<GlobalSecondaryIndexesT>(value));
208 ProvisionedThroughput m_provisionedThroughput;
210 OnDemandThroughput m_onDemandThroughput;
212 SSESpecification m_sSESpecification;
215 bool m_tableNameHasBeenSet =
false;
216 bool m_attributeDefinitionsHasBeenSet =
false;
217 bool m_keySchemaHasBeenSet =
false;
218 bool m_billingModeHasBeenSet =
false;
219 bool m_provisionedThroughputHasBeenSet =
false;
220 bool m_onDemandThroughputHasBeenSet =
false;
221 bool m_sSESpecificationHasBeenSet =
false;
222 bool m_globalSecondaryIndexesHasBeenSet =
false;
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_DYNAMODB_API TableCreationParameters(Aws::Utils::Json::JsonView jsonValue)
bool KeySchemaHasBeenSet() const
TableCreationParameters & AddAttributeDefinitions(AttributeDefinitionsT &&value)
void SetTableName(TableNameT &&value)
bool ProvisionedThroughputHasBeenSet() const
bool OnDemandThroughputHasBeenSet() const
AWS_DYNAMODB_API TableCreationParameters()=default
void SetSSESpecification(SSESpecificationT &&value)
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
TableCreationParameters & WithAttributeDefinitions(AttributeDefinitionsT &&value)
TableCreationParameters & WithSSESpecification(SSESpecificationT &&value)
const SSESpecification & GetSSESpecification() const
bool GlobalSecondaryIndexesHasBeenSet() const
bool AttributeDefinitionsHasBeenSet() const
void SetAttributeDefinitions(AttributeDefinitionsT &&value)
bool SSESpecificationHasBeenSet() const
bool BillingModeHasBeenSet() const
const ProvisionedThroughput & GetProvisionedThroughput() const
const Aws::Vector< GlobalSecondaryIndex > & GetGlobalSecondaryIndexes() const
void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
TableCreationParameters & WithOnDemandThroughput(OnDemandThroughputT &&value)
TableCreationParameters & AddKeySchema(KeySchemaT &&value)
TableCreationParameters & AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
bool TableNameHasBeenSet() const
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
TableCreationParameters & WithGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
AWS_DYNAMODB_API TableCreationParameters & operator=(Aws::Utils::Json::JsonView jsonValue)
TableCreationParameters & WithBillingMode(BillingMode value)
BillingMode GetBillingMode() const
TableCreationParameters & WithProvisionedThroughput(ProvisionedThroughputT &&value)
const OnDemandThroughput & GetOnDemandThroughput() const
void SetOnDemandThroughput(OnDemandThroughputT &&value)
const Aws::String & GetTableName() const
const Aws::Vector< AttributeDefinition > & GetAttributeDefinitions() const
void SetBillingMode(BillingMode value)
TableCreationParameters & WithKeySchema(KeySchemaT &&value)
void SetKeySchema(KeySchemaT &&value)
TableCreationParameters & WithTableName(TableNameT &&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