AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateGlobalSecondaryIndexAction.h
1
6#pragma once
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/Projection.h>
11#include <aws/dynamodb/model/ProvisionedThroughput.h>
12#include <aws/dynamodb/model/OnDemandThroughput.h>
13#include <aws/dynamodb/model/KeySchemaElement.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace DynamoDB
27{
28namespace Model
29{
30
38 {
39 public:
43 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
50 inline const Aws::String& GetIndexName() const{ return m_indexName; }
51 inline bool IndexNameHasBeenSet() const { return m_indexNameHasBeenSet; }
52 inline void SetIndexName(const Aws::String& value) { m_indexNameHasBeenSet = true; m_indexName = value; }
53 inline void SetIndexName(Aws::String&& value) { m_indexNameHasBeenSet = true; m_indexName = std::move(value); }
54 inline void SetIndexName(const char* value) { m_indexNameHasBeenSet = true; m_indexName.assign(value); }
55 inline CreateGlobalSecondaryIndexAction& WithIndexName(const Aws::String& value) { SetIndexName(value); return *this;}
56 inline CreateGlobalSecondaryIndexAction& WithIndexName(Aws::String&& value) { SetIndexName(std::move(value)); return *this;}
57 inline CreateGlobalSecondaryIndexAction& WithIndexName(const char* value) { SetIndexName(value); return *this;}
59
61
64 inline const Aws::Vector<KeySchemaElement>& GetKeySchema() const{ return m_keySchema; }
65 inline bool KeySchemaHasBeenSet() const { return m_keySchemaHasBeenSet; }
66 inline void SetKeySchema(const Aws::Vector<KeySchemaElement>& value) { m_keySchemaHasBeenSet = true; m_keySchema = value; }
67 inline void SetKeySchema(Aws::Vector<KeySchemaElement>&& value) { m_keySchemaHasBeenSet = true; m_keySchema = std::move(value); }
70 inline CreateGlobalSecondaryIndexAction& AddKeySchema(const KeySchemaElement& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(value); return *this; }
71 inline CreateGlobalSecondaryIndexAction& AddKeySchema(KeySchemaElement&& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(std::move(value)); return *this; }
73
75
80 inline const Projection& GetProjection() const{ return m_projection; }
81 inline bool ProjectionHasBeenSet() const { return m_projectionHasBeenSet; }
82 inline void SetProjection(const Projection& value) { m_projectionHasBeenSet = true; m_projection = value; }
83 inline void SetProjection(Projection&& value) { m_projectionHasBeenSet = true; m_projection = std::move(value); }
84 inline CreateGlobalSecondaryIndexAction& WithProjection(const Projection& value) { SetProjection(value); return *this;}
85 inline CreateGlobalSecondaryIndexAction& WithProjection(Projection&& value) { SetProjection(std::move(value)); return *this;}
87
89
96 inline const ProvisionedThroughput& GetProvisionedThroughput() const{ return m_provisionedThroughput; }
97 inline bool ProvisionedThroughputHasBeenSet() const { return m_provisionedThroughputHasBeenSet; }
98 inline void SetProvisionedThroughput(const ProvisionedThroughput& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; }
99 inline void SetProvisionedThroughput(ProvisionedThroughput&& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = std::move(value); }
103
105
111 inline const OnDemandThroughput& GetOnDemandThroughput() const{ return m_onDemandThroughput; }
112 inline bool OnDemandThroughputHasBeenSet() const { return m_onDemandThroughputHasBeenSet; }
113 inline void SetOnDemandThroughput(const OnDemandThroughput& value) { m_onDemandThroughputHasBeenSet = true; m_onDemandThroughput = value; }
114 inline void SetOnDemandThroughput(OnDemandThroughput&& value) { m_onDemandThroughputHasBeenSet = true; m_onDemandThroughput = std::move(value); }
118 private:
119
120 Aws::String m_indexName;
121 bool m_indexNameHasBeenSet = false;
122
124 bool m_keySchemaHasBeenSet = false;
125
126 Projection m_projection;
127 bool m_projectionHasBeenSet = false;
128
129 ProvisionedThroughput m_provisionedThroughput;
130 bool m_provisionedThroughputHasBeenSet = false;
131
132 OnDemandThroughput m_onDemandThroughput;
133 bool m_onDemandThroughputHasBeenSet = false;
134 };
135
136} // namespace Model
137} // namespace DynamoDB
138} // namespace Aws
AWS_DYNAMODB_API CreateGlobalSecondaryIndexAction & operator=(Aws::Utils::Json::JsonView jsonValue)
CreateGlobalSecondaryIndexAction & WithOnDemandThroughput(OnDemandThroughput &&value)
CreateGlobalSecondaryIndexAction & WithIndexName(Aws::String &&value)
CreateGlobalSecondaryIndexAction & WithProvisionedThroughput(ProvisionedThroughput &&value)
CreateGlobalSecondaryIndexAction & WithProjection(const Projection &value)
CreateGlobalSecondaryIndexAction & WithOnDemandThroughput(const OnDemandThroughput &value)
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
CreateGlobalSecondaryIndexAction & WithKeySchema(Aws::Vector< KeySchemaElement > &&value)
CreateGlobalSecondaryIndexAction & WithIndexName(const char *value)
void SetKeySchema(const Aws::Vector< KeySchemaElement > &value)
CreateGlobalSecondaryIndexAction & AddKeySchema(KeySchemaElement &&value)
CreateGlobalSecondaryIndexAction & AddKeySchema(const KeySchemaElement &value)
CreateGlobalSecondaryIndexAction & WithProvisionedThroughput(const ProvisionedThroughput &value)
CreateGlobalSecondaryIndexAction & WithProjection(Projection &&value)
AWS_DYNAMODB_API CreateGlobalSecondaryIndexAction(Aws::Utils::Json::JsonView jsonValue)
CreateGlobalSecondaryIndexAction & WithIndexName(const Aws::String &value)
CreateGlobalSecondaryIndexAction & WithKeySchema(const Aws::Vector< KeySchemaElement > &value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue