AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
GlobalSecondaryIndexDescription.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/IndexStatus.h>
12#include <aws/dynamodb/model/ProvisionedThroughputDescription.h>
13#include <aws/dynamodb/model/OnDemandThroughput.h>
14#include <aws/dynamodb/model/KeySchemaElement.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace DynamoDB
28{
29namespace Model
30{
31
39 {
40 public:
44 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetIndexName() const{ return m_indexName; }
52 inline bool IndexNameHasBeenSet() const { return m_indexNameHasBeenSet; }
53 inline void SetIndexName(const Aws::String& value) { m_indexNameHasBeenSet = true; m_indexName = value; }
54 inline void SetIndexName(Aws::String&& value) { m_indexNameHasBeenSet = true; m_indexName = std::move(value); }
55 inline void SetIndexName(const char* value) { m_indexNameHasBeenSet = true; m_indexName.assign(value); }
56 inline GlobalSecondaryIndexDescription& WithIndexName(const Aws::String& value) { SetIndexName(value); return *this;}
57 inline GlobalSecondaryIndexDescription& WithIndexName(Aws::String&& value) { SetIndexName(std::move(value)); return *this;}
58 inline GlobalSecondaryIndexDescription& WithIndexName(const char* value) { SetIndexName(value); return *this;}
60
62
74 inline const Aws::Vector<KeySchemaElement>& GetKeySchema() const{ return m_keySchema; }
75 inline bool KeySchemaHasBeenSet() const { return m_keySchemaHasBeenSet; }
76 inline void SetKeySchema(const Aws::Vector<KeySchemaElement>& value) { m_keySchemaHasBeenSet = true; m_keySchema = value; }
77 inline void SetKeySchema(Aws::Vector<KeySchemaElement>&& value) { m_keySchemaHasBeenSet = true; m_keySchema = std::move(value); }
80 inline GlobalSecondaryIndexDescription& AddKeySchema(const KeySchemaElement& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(value); return *this; }
81 inline GlobalSecondaryIndexDescription& AddKeySchema(KeySchemaElement&& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(std::move(value)); return *this; }
83
85
90 inline const Projection& GetProjection() const{ return m_projection; }
91 inline bool ProjectionHasBeenSet() const { return m_projectionHasBeenSet; }
92 inline void SetProjection(const Projection& value) { m_projectionHasBeenSet = true; m_projection = value; }
93 inline void SetProjection(Projection&& value) { m_projectionHasBeenSet = true; m_projection = std::move(value); }
94 inline GlobalSecondaryIndexDescription& WithProjection(const Projection& value) { SetProjection(value); return *this;}
95 inline GlobalSecondaryIndexDescription& WithProjection(Projection&& value) { SetProjection(std::move(value)); return *this;}
97
99
106 inline const IndexStatus& GetIndexStatus() const{ return m_indexStatus; }
107 inline bool IndexStatusHasBeenSet() const { return m_indexStatusHasBeenSet; }
108 inline void SetIndexStatus(const IndexStatus& value) { m_indexStatusHasBeenSet = true; m_indexStatus = value; }
109 inline void SetIndexStatus(IndexStatus&& value) { m_indexStatusHasBeenSet = true; m_indexStatus = std::move(value); }
110 inline GlobalSecondaryIndexDescription& WithIndexStatus(const IndexStatus& value) { SetIndexStatus(value); return *this;}
111 inline GlobalSecondaryIndexDescription& WithIndexStatus(IndexStatus&& value) { SetIndexStatus(std::move(value)); return *this;}
113
115
130 inline bool GetBackfilling() const{ return m_backfilling; }
131 inline bool BackfillingHasBeenSet() const { return m_backfillingHasBeenSet; }
132 inline void SetBackfilling(bool value) { m_backfillingHasBeenSet = true; m_backfilling = value; }
133 inline GlobalSecondaryIndexDescription& WithBackfilling(bool value) { SetBackfilling(value); return *this;}
135
137
144 inline const ProvisionedThroughputDescription& GetProvisionedThroughput() const{ return m_provisionedThroughput; }
145 inline bool ProvisionedThroughputHasBeenSet() const { return m_provisionedThroughputHasBeenSet; }
146 inline void SetProvisionedThroughput(const ProvisionedThroughputDescription& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; }
147 inline void SetProvisionedThroughput(ProvisionedThroughputDescription&& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = std::move(value); }
151
153
158 inline long long GetIndexSizeBytes() const{ return m_indexSizeBytes; }
159 inline bool IndexSizeBytesHasBeenSet() const { return m_indexSizeBytesHasBeenSet; }
160 inline void SetIndexSizeBytes(long long value) { m_indexSizeBytesHasBeenSet = true; m_indexSizeBytes = value; }
161 inline GlobalSecondaryIndexDescription& WithIndexSizeBytes(long long value) { SetIndexSizeBytes(value); return *this;}
163
165
170 inline long long GetItemCount() const{ return m_itemCount; }
171 inline bool ItemCountHasBeenSet() const { return m_itemCountHasBeenSet; }
172 inline void SetItemCount(long long value) { m_itemCountHasBeenSet = true; m_itemCount = value; }
173 inline GlobalSecondaryIndexDescription& WithItemCount(long long value) { SetItemCount(value); return *this;}
175
177
180 inline const Aws::String& GetIndexArn() const{ return m_indexArn; }
181 inline bool IndexArnHasBeenSet() const { return m_indexArnHasBeenSet; }
182 inline void SetIndexArn(const Aws::String& value) { m_indexArnHasBeenSet = true; m_indexArn = value; }
183 inline void SetIndexArn(Aws::String&& value) { m_indexArnHasBeenSet = true; m_indexArn = std::move(value); }
184 inline void SetIndexArn(const char* value) { m_indexArnHasBeenSet = true; m_indexArn.assign(value); }
185 inline GlobalSecondaryIndexDescription& WithIndexArn(const Aws::String& value) { SetIndexArn(value); return *this;}
186 inline GlobalSecondaryIndexDescription& WithIndexArn(Aws::String&& value) { SetIndexArn(std::move(value)); return *this;}
187 inline GlobalSecondaryIndexDescription& WithIndexArn(const char* value) { SetIndexArn(value); return *this;}
189
191
197 inline const OnDemandThroughput& GetOnDemandThroughput() const{ return m_onDemandThroughput; }
198 inline bool OnDemandThroughputHasBeenSet() const { return m_onDemandThroughputHasBeenSet; }
199 inline void SetOnDemandThroughput(const OnDemandThroughput& value) { m_onDemandThroughputHasBeenSet = true; m_onDemandThroughput = value; }
200 inline void SetOnDemandThroughput(OnDemandThroughput&& value) { m_onDemandThroughputHasBeenSet = true; m_onDemandThroughput = std::move(value); }
204 private:
205
206 Aws::String m_indexName;
207 bool m_indexNameHasBeenSet = false;
208
210 bool m_keySchemaHasBeenSet = false;
211
212 Projection m_projection;
213 bool m_projectionHasBeenSet = false;
214
215 IndexStatus m_indexStatus;
216 bool m_indexStatusHasBeenSet = false;
217
218 bool m_backfilling;
219 bool m_backfillingHasBeenSet = false;
220
221 ProvisionedThroughputDescription m_provisionedThroughput;
222 bool m_provisionedThroughputHasBeenSet = false;
223
224 long long m_indexSizeBytes;
225 bool m_indexSizeBytesHasBeenSet = false;
226
227 long long m_itemCount;
228 bool m_itemCountHasBeenSet = false;
229
230 Aws::String m_indexArn;
231 bool m_indexArnHasBeenSet = false;
232
233 OnDemandThroughput m_onDemandThroughput;
234 bool m_onDemandThroughputHasBeenSet = false;
235 };
236
237} // namespace Model
238} // namespace DynamoDB
239} // namespace Aws
GlobalSecondaryIndexDescription & WithIndexSizeBytes(long long value)
const ProvisionedThroughputDescription & GetProvisionedThroughput() const
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
GlobalSecondaryIndexDescription & WithOnDemandThroughput(OnDemandThroughput &&value)
GlobalSecondaryIndexDescription & WithIndexName(Aws::String &&value)
GlobalSecondaryIndexDescription & WithBackfilling(bool value)
GlobalSecondaryIndexDescription & WithIndexStatus(IndexStatus &&value)
GlobalSecondaryIndexDescription & WithKeySchema(const Aws::Vector< KeySchemaElement > &value)
GlobalSecondaryIndexDescription & WithIndexName(const Aws::String &value)
GlobalSecondaryIndexDescription & WithIndexArn(const char *value)
GlobalSecondaryIndexDescription & WithItemCount(long long value)
void SetProvisionedThroughput(ProvisionedThroughputDescription &&value)
GlobalSecondaryIndexDescription & WithProjection(const Projection &value)
void SetKeySchema(const Aws::Vector< KeySchemaElement > &value)
GlobalSecondaryIndexDescription & AddKeySchema(const KeySchemaElement &value)
GlobalSecondaryIndexDescription & WithProvisionedThroughput(const ProvisionedThroughputDescription &value)
GlobalSecondaryIndexDescription & WithProvisionedThroughput(ProvisionedThroughputDescription &&value)
AWS_DYNAMODB_API GlobalSecondaryIndexDescription(Aws::Utils::Json::JsonView jsonValue)
GlobalSecondaryIndexDescription & WithProjection(Projection &&value)
void SetProvisionedThroughput(const ProvisionedThroughputDescription &value)
GlobalSecondaryIndexDescription & WithIndexName(const char *value)
GlobalSecondaryIndexDescription & WithIndexArn(Aws::String &&value)
GlobalSecondaryIndexDescription & WithIndexArn(const Aws::String &value)
AWS_DYNAMODB_API GlobalSecondaryIndexDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
GlobalSecondaryIndexDescription & WithKeySchema(Aws::Vector< KeySchemaElement > &&value)
GlobalSecondaryIndexDescription & WithIndexStatus(const IndexStatus &value)
GlobalSecondaryIndexDescription & WithOnDemandThroughput(const OnDemandThroughput &value)
GlobalSecondaryIndexDescription & AddKeySchema(KeySchemaElement &&value)
void SetKeySchema(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