7#include <aws/dynamodb/DynamoDB_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/dynamodb/model/BillingMode.h>
11#include <aws/dynamodb/model/ProvisionedThroughput.h>
12#include <aws/dynamodb/model/OnDemandThroughput.h>
13#include <aws/dynamodb/model/SSESpecification.h>
14#include <aws/dynamodb/model/AttributeDefinition.h>
15#include <aws/dynamodb/model/KeySchemaElement.h>
16#include <aws/dynamodb/model/GlobalSecondaryIndex.h>
55 template<
typename TableNameT = Aws::String>
56 void SetTableName(TableNameT&& value) { m_tableNameHasBeenSet =
true; m_tableName = std::forward<TableNameT>(value); }
57 template<
typename TableNameT = Aws::String>
67 template<
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
68 void SetAttributeDefinitions(AttributeDefinitionsT&& value) { m_attributeDefinitionsHasBeenSet =
true; m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value); }
69 template<
typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
71 template<
typename AttributeDefinitionsT = AttributeDefinition>
82 template<
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
83 void SetKeySchema(KeySchemaT&& value) { m_keySchemaHasBeenSet =
true; m_keySchema = std::forward<KeySchemaT>(value); }
84 template<
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
86 template<
typename KeySchemaT = KeySchemaElement>
105 template<
typename ProvisionedThroughputT = ProvisionedThroughput>
106 void SetProvisionedThroughput(ProvisionedThroughputT&& value) { m_provisionedThroughputHasBeenSet =
true; m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value); }
107 template<
typename ProvisionedThroughputT = ProvisionedThroughput>
115 template<
typename OnDemandThroughputT = OnDemandThroughput>
116 void SetOnDemandThroughput(OnDemandThroughputT&& value) { m_onDemandThroughputHasBeenSet =
true; m_onDemandThroughput = std::forward<OnDemandThroughputT>(value); }
117 template<
typename OnDemandThroughputT = OnDemandThroughput>
125 template<
typename SSESpecificationT = SSESpecification>
126 void SetSSESpecification(SSESpecificationT&& value) { m_sSESpecificationHasBeenSet =
true; m_sSESpecification = std::forward<SSESpecificationT>(value); }
127 template<
typename SSESpecificationT = SSESpecification>
138 template<
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
139 void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { m_globalSecondaryIndexesHasBeenSet =
true; m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value); }
140 template<
typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndex>>
142 template<
typename GlobalSecondaryIndexesT = GlobalSecondaryIndex>
148 bool m_tableNameHasBeenSet =
false;
151 bool m_attributeDefinitionsHasBeenSet =
false;
154 bool m_keySchemaHasBeenSet =
false;
157 bool m_billingModeHasBeenSet =
false;
159 ProvisionedThroughput m_provisionedThroughput;
160 bool m_provisionedThroughputHasBeenSet =
false;
162 OnDemandThroughput m_onDemandThroughput;
163 bool m_onDemandThroughputHasBeenSet =
false;
165 SSESpecification m_sSESpecification;
166 bool m_sSESpecificationHasBeenSet =
false;
169 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