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/KeySchemaElement.h>
11#include <aws/dynamodb/model/OnDemandThroughput.h>
12#include <aws/dynamodb/model/Projection.h>
13#include <aws/dynamodb/model/ProvisionedThroughput.h>
46 template <
typename IndexNameT = Aws::String>
48 m_indexNameHasBeenSet =
true;
49 m_indexName = std::forward<IndexNameT>(value);
51 template <
typename IndexNameT = Aws::String>
73 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
75 m_keySchemaHasBeenSet =
true;
76 m_keySchema = std::forward<KeySchemaT>(value);
78 template <
typename KeySchemaT = Aws::Vector<KeySchemaElement>>
83 template <
typename KeySchemaT = KeySchemaElement>
85 m_keySchemaHasBeenSet =
true;
86 m_keySchema.emplace_back(std::forward<KeySchemaT>(value));
99 template <
typename ProjectionT = Projection>
101 m_projectionHasBeenSet =
true;
102 m_projection = std::forward<ProjectionT>(value);
104 template <
typename ProjectionT = Projection>
118 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
120 m_provisionedThroughputHasBeenSet =
true;
121 m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value);
123 template <
typename ProvisionedThroughputT = ProvisionedThroughput>
134 template <
typename OnDemandThroughputT = OnDemandThroughput>
136 m_onDemandThroughputHasBeenSet =
true;
137 m_onDemandThroughput = std::forward<OnDemandThroughputT>(value);
139 template <
typename OnDemandThroughputT = OnDemandThroughput>
155 bool m_indexNameHasBeenSet =
false;
156 bool m_keySchemaHasBeenSet =
false;
157 bool m_projectionHasBeenSet =
false;
158 bool m_provisionedThroughputHasBeenSet =
false;
159 bool m_onDemandThroughputHasBeenSet =
false;
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
void SetOnDemandThroughput(OnDemandThroughputT &&value)
const ProvisionedThroughput & GetProvisionedThroughput() const
bool IndexNameHasBeenSet() const
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
bool OnDemandThroughputHasBeenSet() const
const Aws::String & GetIndexName() const
bool KeySchemaHasBeenSet() const
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
bool ProjectionHasBeenSet() const
const Projection & GetProjection() const
GlobalSecondaryIndexInfo & WithProvisionedThroughput(ProvisionedThroughputT &&value)
AWS_DYNAMODB_API GlobalSecondaryIndexInfo()=default
void SetProjection(ProjectionT &&value)
GlobalSecondaryIndexInfo & AddKeySchema(KeySchemaT &&value)
GlobalSecondaryIndexInfo & WithProjection(ProjectionT &&value)
const OnDemandThroughput & GetOnDemandThroughput() const
AWS_DYNAMODB_API GlobalSecondaryIndexInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_DYNAMODB_API GlobalSecondaryIndexInfo(Aws::Utils::Json::JsonView jsonValue)
GlobalSecondaryIndexInfo & WithIndexName(IndexNameT &&value)
void SetKeySchema(KeySchemaT &&value)
void SetIndexName(IndexNameT &&value)
bool ProvisionedThroughputHasBeenSet() const
GlobalSecondaryIndexInfo & WithKeySchema(KeySchemaT &&value)
GlobalSecondaryIndexInfo & WithOnDemandThroughput(OnDemandThroughputT &&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