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>
17#include <aws/dynamodb/model/VectorIndex.h>
50 template <
typename TableNameT = Aws::String>
52 m_tableNameHasBeenSet =
true;
53 m_tableName = std::forward<TableNameT>(value);
55 template <
typename TableNameT = Aws::String>
68 template <
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
70 m_attributeDefinitionsHasBeenSet =
true;
71 m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value);
73 template <
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
78 template <
typename AttributeDefinitionsT = AttributeDefinition>
80 m_attributeDefinitionsHasBeenSet =
true;
81 m_attributeDefinitions.emplace_back(std::forward<AttributeDefinitionsT>(value));
93 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
95 m_keySchemaHasBeenSet =
true;
96 m_keySchema = std::forward<KeySchemaT>(value);
98 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
103 template <
typename KeySchemaT = KeySchemaElement>
105 m_keySchemaHasBeenSet =
true;
106 m_keySchema.emplace_back(std::forward<KeySchemaT>(value));
119 m_billingModeHasBeenSet =
true;
120 m_billingMode = value;
132 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
134 m_provisionedThroughputHasBeenSet =
true;
135 m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value);
137 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
148 template <
typename OnDemandThroughputT = OnDemandThroughput>
150 m_onDemandThroughputHasBeenSet =
true;
151 m_onDemandThroughput = std::forward<OnDemandThroughputT>(value);
153 template <
typename OnDemandThroughputT = OnDemandThroughput>
164 template <
typename SSESpecificationT = SSESpecification>
166 m_sSESpecificationHasBeenSet =
true;
167 m_sSESpecification = std::forward<SSESpecificationT>(value);
169 template <
typename SSESpecificationT = SSESpecification>
183 template <
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
185 m_globalSecondaryIndexesHasBeenSet =
true;
186 m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value);
188 template <
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
193 template <
typename GlobalSecondaryIndexesT = GlobalSecondaryIndex>
195 m_globalSecondaryIndexesHasBeenSet =
true;
196 m_globalSecondaryIndexes.emplace_back(std::forward<GlobalSecondaryIndexesT>(value));
208 template <
typename VectorIndexesT = Aws::Vector<VectorIndex>>
210 m_vectorIndexesHasBeenSet =
true;
211 m_vectorIndexes = std::forward<VectorIndexesT>(value);
213 template <
typename VectorIndexesT = Aws::Vector<VectorIndex>>
218 template <
typename VectorIndexesT = VectorIndex>
220 m_vectorIndexesHasBeenSet =
true;
221 m_vectorIndexes.emplace_back(std::forward<VectorIndexesT>(value));
234 ProvisionedThroughput m_provisionedThroughput;
236 OnDemandThroughput m_onDemandThroughput;
238 SSESpecification m_sSESpecification;
243 bool m_tableNameHasBeenSet =
false;
244 bool m_attributeDefinitionsHasBeenSet =
false;
245 bool m_keySchemaHasBeenSet =
false;
246 bool m_billingModeHasBeenSet =
false;
247 bool m_provisionedThroughputHasBeenSet =
false;
248 bool m_onDemandThroughputHasBeenSet =
false;
249 bool m_sSESpecificationHasBeenSet =
false;
250 bool m_globalSecondaryIndexesHasBeenSet =
false;
251 bool m_vectorIndexesHasBeenSet =
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
TableCreationParameters & AddVectorIndexes(VectorIndexesT &&value)
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
TableCreationParameters & WithVectorIndexes(VectorIndexesT &&value)
const Aws::Vector< GlobalSecondaryIndex > & GetGlobalSecondaryIndexes() const
void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
void SetVectorIndexes(VectorIndexesT &&value)
TableCreationParameters & WithOnDemandThroughput(OnDemandThroughputT &&value)
TableCreationParameters & AddKeySchema(KeySchemaT &&value)
const Aws::Vector< VectorIndex > & GetVectorIndexes() const
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
bool VectorIndexesHasBeenSet() 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