AWS SDK for C++

AWS SDK for C++ Version 1.11.870

Loading...
Searching...
No Matches
UpdateTableRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dynamodb/DynamoDBRequest.h>
10#include <aws/dynamodb/DynamoDB_EXPORTS.h>
11#include <aws/dynamodb/model/AttributeDefinition.h>
12#include <aws/dynamodb/model/BillingMode.h>
13#include <aws/dynamodb/model/GlobalSecondaryIndexUpdate.h>
14#include <aws/dynamodb/model/GlobalTableSettingsReplicationMode.h>
15#include <aws/dynamodb/model/GlobalTableWitnessGroupUpdate.h>
16#include <aws/dynamodb/model/MultiRegionConsistency.h>
17#include <aws/dynamodb/model/OnDemandThroughput.h>
18#include <aws/dynamodb/model/ProvisionedThroughput.h>
19#include <aws/dynamodb/model/ReplicationGroupUpdate.h>
20#include <aws/dynamodb/model/SSESpecification.h>
21#include <aws/dynamodb/model/StreamSpecification.h>
22#include <aws/dynamodb/model/TableClass.h>
23#include <aws/dynamodb/model/VectorIndexUpdate.h>
24#include <aws/dynamodb/model/WarmThroughput.h>
25
26#include <utility>
27
28namespace Aws {
29namespace DynamoDB {
30namespace Model {
31
39 public:
40 AWS_DYNAMODB_API UpdateTableRequest() = default;
41
42 // Service request name is the Operation name which will send this request out,
43 // each operation should has unique request name, so that we can get operation's name from this request.
44 // Note: this is not true for response, multiple operations may have the same response name,
45 // so we can not get operation's name from response.
46 inline virtual const char* GetServiceRequestName() const override { return "UpdateTable"; }
47
48 AWS_DYNAMODB_API Aws::String SerializePayload() const override;
49
51
55 AWS_DYNAMODB_API EndpointParameters GetEndpointContextParams() const override;
56
58
64 inline const Aws::Vector<AttributeDefinition>& GetAttributeDefinitions() const { return m_attributeDefinitions; }
65 inline bool AttributeDefinitionsHasBeenSet() const { return m_attributeDefinitionsHasBeenSet; }
66 template <typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
67 void SetAttributeDefinitions(AttributeDefinitionsT&& value) {
68 m_attributeDefinitionsHasBeenSet = true;
69 m_attributeDefinitions = std::forward<AttributeDefinitionsT>(value);
70 }
71 template <typename AttributeDefinitionsT = Aws::Vector<AttributeDefinition>>
72 UpdateTableRequest& WithAttributeDefinitions(AttributeDefinitionsT&& value) {
73 SetAttributeDefinitions(std::forward<AttributeDefinitionsT>(value));
74 return *this;
75 }
76 template <typename AttributeDefinitionsT = AttributeDefinition>
77 UpdateTableRequest& AddAttributeDefinitions(AttributeDefinitionsT&& value) {
78 m_attributeDefinitionsHasBeenSet = true;
79 m_attributeDefinitions.emplace_back(std::forward<AttributeDefinitionsT>(value));
80 return *this;
81 }
83
85
89 inline const Aws::String& GetTableName() const { return m_tableName; }
90 inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; }
91 template <typename TableNameT = Aws::String>
92 void SetTableName(TableNameT&& value) {
93 m_tableNameHasBeenSet = true;
94 m_tableName = std::forward<TableNameT>(value);
95 }
96 template <typename TableNameT = Aws::String>
97 UpdateTableRequest& WithTableName(TableNameT&& value) {
98 SetTableName(std::forward<TableNameT>(value));
99 return *this;
100 }
102
104
121 inline BillingMode GetBillingMode() const { return m_billingMode; }
122 inline bool BillingModeHasBeenSet() const { return m_billingModeHasBeenSet; }
123 inline void SetBillingMode(BillingMode value) {
124 m_billingModeHasBeenSet = true;
125 m_billingMode = value;
126 }
128 SetBillingMode(value);
129 return *this;
130 }
132
134
137 inline const ProvisionedThroughput& GetProvisionedThroughput() const { return m_provisionedThroughput; }
138 inline bool ProvisionedThroughputHasBeenSet() const { return m_provisionedThroughputHasBeenSet; }
139 template <typename ProvisionedThroughputT = ProvisionedThroughput>
140 void SetProvisionedThroughput(ProvisionedThroughputT&& value) {
141 m_provisionedThroughputHasBeenSet = true;
142 m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value);
143 }
144 template <typename ProvisionedThroughputT = ProvisionedThroughput>
145 UpdateTableRequest& WithProvisionedThroughput(ProvisionedThroughputT&& value) {
146 SetProvisionedThroughput(std::forward<ProvisionedThroughputT>(value));
147 return *this;
148 }
150
152
164 inline const Aws::Vector<GlobalSecondaryIndexUpdate>& GetGlobalSecondaryIndexUpdates() const { return m_globalSecondaryIndexUpdates; }
165 inline bool GlobalSecondaryIndexUpdatesHasBeenSet() const { return m_globalSecondaryIndexUpdatesHasBeenSet; }
166 template <typename GlobalSecondaryIndexUpdatesT = Aws::Vector<GlobalSecondaryIndexUpdate>>
167 void SetGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdatesT&& value) {
168 m_globalSecondaryIndexUpdatesHasBeenSet = true;
169 m_globalSecondaryIndexUpdates = std::forward<GlobalSecondaryIndexUpdatesT>(value);
170 }
171 template <typename GlobalSecondaryIndexUpdatesT = Aws::Vector<GlobalSecondaryIndexUpdate>>
172 UpdateTableRequest& WithGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdatesT&& value) {
173 SetGlobalSecondaryIndexUpdates(std::forward<GlobalSecondaryIndexUpdatesT>(value));
174 return *this;
175 }
176 template <typename GlobalSecondaryIndexUpdatesT = GlobalSecondaryIndexUpdate>
177 UpdateTableRequest& AddGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdatesT&& value) {
178 m_globalSecondaryIndexUpdatesHasBeenSet = true;
179 m_globalSecondaryIndexUpdates.emplace_back(std::forward<GlobalSecondaryIndexUpdatesT>(value));
180 return *this;
181 }
183
185
191 inline const StreamSpecification& GetStreamSpecification() const { return m_streamSpecification; }
192 inline bool StreamSpecificationHasBeenSet() const { return m_streamSpecificationHasBeenSet; }
193 template <typename StreamSpecificationT = StreamSpecification>
194 void SetStreamSpecification(StreamSpecificationT&& value) {
195 m_streamSpecificationHasBeenSet = true;
196 m_streamSpecification = std::forward<StreamSpecificationT>(value);
197 }
198 template <typename StreamSpecificationT = StreamSpecification>
199 UpdateTableRequest& WithStreamSpecification(StreamSpecificationT&& value) {
200 SetStreamSpecification(std::forward<StreamSpecificationT>(value));
201 return *this;
202 }
204
206
209 inline const SSESpecification& GetSSESpecification() const { return m_sSESpecification; }
210 inline bool SSESpecificationHasBeenSet() const { return m_sSESpecificationHasBeenSet; }
211 template <typename SSESpecificationT = SSESpecification>
212 void SetSSESpecification(SSESpecificationT&& value) {
213 m_sSESpecificationHasBeenSet = true;
214 m_sSESpecification = std::forward<SSESpecificationT>(value);
215 }
216 template <typename SSESpecificationT = SSESpecification>
217 UpdateTableRequest& WithSSESpecification(SSESpecificationT&& value) {
218 SetSSESpecification(std::forward<SSESpecificationT>(value));
219 return *this;
220 }
222
224
228 inline const Aws::Vector<ReplicationGroupUpdate>& GetReplicaUpdates() const { return m_replicaUpdates; }
229 inline bool ReplicaUpdatesHasBeenSet() const { return m_replicaUpdatesHasBeenSet; }
230 template <typename ReplicaUpdatesT = Aws::Vector<ReplicationGroupUpdate>>
231 void SetReplicaUpdates(ReplicaUpdatesT&& value) {
232 m_replicaUpdatesHasBeenSet = true;
233 m_replicaUpdates = std::forward<ReplicaUpdatesT>(value);
234 }
235 template <typename ReplicaUpdatesT = Aws::Vector<ReplicationGroupUpdate>>
236 UpdateTableRequest& WithReplicaUpdates(ReplicaUpdatesT&& value) {
237 SetReplicaUpdates(std::forward<ReplicaUpdatesT>(value));
238 return *this;
239 }
240 template <typename ReplicaUpdatesT = ReplicationGroupUpdate>
241 UpdateTableRequest& AddReplicaUpdates(ReplicaUpdatesT&& value) {
242 m_replicaUpdatesHasBeenSet = true;
243 m_replicaUpdates.emplace_back(std::forward<ReplicaUpdatesT>(value));
244 return *this;
245 }
247
249
253 inline TableClass GetTableClass() const { return m_tableClass; }
254 inline bool TableClassHasBeenSet() const { return m_tableClassHasBeenSet; }
255 inline void SetTableClass(TableClass value) {
256 m_tableClassHasBeenSet = true;
257 m_tableClass = value;
258 }
260 SetTableClass(value);
261 return *this;
262 }
264
266
270 inline bool GetDeletionProtectionEnabled() const { return m_deletionProtectionEnabled; }
271 inline bool DeletionProtectionEnabledHasBeenSet() const { return m_deletionProtectionEnabledHasBeenSet; }
272 inline void SetDeletionProtectionEnabled(bool value) {
273 m_deletionProtectionEnabledHasBeenSet = true;
274 m_deletionProtectionEnabled = value;
275 }
278 return *this;
279 }
281
283
300 inline MultiRegionConsistency GetMultiRegionConsistency() const { return m_multiRegionConsistency; }
301 inline bool MultiRegionConsistencyHasBeenSet() const { return m_multiRegionConsistencyHasBeenSet; }
303 m_multiRegionConsistencyHasBeenSet = true;
304 m_multiRegionConsistency = value;
305 }
308 return *this;
309 }
311
313
325 inline const Aws::Vector<GlobalTableWitnessGroupUpdate>& GetGlobalTableWitnessUpdates() const { return m_globalTableWitnessUpdates; }
326 inline bool GlobalTableWitnessUpdatesHasBeenSet() const { return m_globalTableWitnessUpdatesHasBeenSet; }
327 template <typename GlobalTableWitnessUpdatesT = Aws::Vector<GlobalTableWitnessGroupUpdate>>
328 void SetGlobalTableWitnessUpdates(GlobalTableWitnessUpdatesT&& value) {
329 m_globalTableWitnessUpdatesHasBeenSet = true;
330 m_globalTableWitnessUpdates = std::forward<GlobalTableWitnessUpdatesT>(value);
331 }
332 template <typename GlobalTableWitnessUpdatesT = Aws::Vector<GlobalTableWitnessGroupUpdate>>
333 UpdateTableRequest& WithGlobalTableWitnessUpdates(GlobalTableWitnessUpdatesT&& value) {
334 SetGlobalTableWitnessUpdates(std::forward<GlobalTableWitnessUpdatesT>(value));
335 return *this;
336 }
337 template <typename GlobalTableWitnessUpdatesT = GlobalTableWitnessGroupUpdate>
338 UpdateTableRequest& AddGlobalTableWitnessUpdates(GlobalTableWitnessUpdatesT&& value) {
339 m_globalTableWitnessUpdatesHasBeenSet = true;
340 m_globalTableWitnessUpdates.emplace_back(std::forward<GlobalTableWitnessUpdatesT>(value));
341 return *this;
342 }
344
346
352 inline const OnDemandThroughput& GetOnDemandThroughput() const { return m_onDemandThroughput; }
353 inline bool OnDemandThroughputHasBeenSet() const { return m_onDemandThroughputHasBeenSet; }
354 template <typename OnDemandThroughputT = OnDemandThroughput>
355 void SetOnDemandThroughput(OnDemandThroughputT&& value) {
356 m_onDemandThroughputHasBeenSet = true;
357 m_onDemandThroughput = std::forward<OnDemandThroughputT>(value);
358 }
359 template <typename OnDemandThroughputT = OnDemandThroughput>
360 UpdateTableRequest& WithOnDemandThroughput(OnDemandThroughputT&& value) {
361 SetOnDemandThroughput(std::forward<OnDemandThroughputT>(value));
362 return *this;
363 }
365
367
371 inline const WarmThroughput& GetWarmThroughput() const { return m_warmThroughput; }
372 inline bool WarmThroughputHasBeenSet() const { return m_warmThroughputHasBeenSet; }
373 template <typename WarmThroughputT = WarmThroughput>
374 void SetWarmThroughput(WarmThroughputT&& value) {
375 m_warmThroughputHasBeenSet = true;
376 m_warmThroughput = std::forward<WarmThroughputT>(value);
377 }
378 template <typename WarmThroughputT = WarmThroughput>
379 UpdateTableRequest& WithWarmThroughput(WarmThroughputT&& value) {
380 SetWarmThroughput(std::forward<WarmThroughputT>(value));
381 return *this;
382 }
384
386
396 inline GlobalTableSettingsReplicationMode GetGlobalTableSettingsReplicationMode() const { return m_globalTableSettingsReplicationMode; }
397 inline bool GlobalTableSettingsReplicationModeHasBeenSet() const { return m_globalTableSettingsReplicationModeHasBeenSet; }
399 m_globalTableSettingsReplicationModeHasBeenSet = true;
400 m_globalTableSettingsReplicationMode = value;
401 }
404 return *this;
405 }
407
409
417 inline const Aws::Vector<VectorIndexUpdate>& GetVectorIndexUpdates() const { return m_vectorIndexUpdates; }
418 inline bool VectorIndexUpdatesHasBeenSet() const { return m_vectorIndexUpdatesHasBeenSet; }
419 template <typename VectorIndexUpdatesT = Aws::Vector<VectorIndexUpdate>>
420 void SetVectorIndexUpdates(VectorIndexUpdatesT&& value) {
421 m_vectorIndexUpdatesHasBeenSet = true;
422 m_vectorIndexUpdates = std::forward<VectorIndexUpdatesT>(value);
423 }
424 template <typename VectorIndexUpdatesT = Aws::Vector<VectorIndexUpdate>>
425 UpdateTableRequest& WithVectorIndexUpdates(VectorIndexUpdatesT&& value) {
426 SetVectorIndexUpdates(std::forward<VectorIndexUpdatesT>(value));
427 return *this;
428 }
429 template <typename VectorIndexUpdatesT = VectorIndexUpdate>
430 UpdateTableRequest& AddVectorIndexUpdates(VectorIndexUpdatesT&& value) {
431 m_vectorIndexUpdatesHasBeenSet = true;
432 m_vectorIndexUpdates.emplace_back(std::forward<VectorIndexUpdatesT>(value));
433 return *this;
434 }
436 private:
437 Aws::Vector<AttributeDefinition> m_attributeDefinitions;
438
439 Aws::String m_tableName;
440
441 BillingMode m_billingMode{BillingMode::NOT_SET};
442
443 ProvisionedThroughput m_provisionedThroughput;
444
445 Aws::Vector<GlobalSecondaryIndexUpdate> m_globalSecondaryIndexUpdates;
446
447 StreamSpecification m_streamSpecification;
448
449 SSESpecification m_sSESpecification;
450
452
453 TableClass m_tableClass{TableClass::NOT_SET};
454
455 bool m_deletionProtectionEnabled{false};
456
458
459 Aws::Vector<GlobalTableWitnessGroupUpdate> m_globalTableWitnessUpdates;
460
461 OnDemandThroughput m_onDemandThroughput;
462
463 WarmThroughput m_warmThroughput;
464
466
467 Aws::Vector<VectorIndexUpdate> m_vectorIndexUpdates;
468 bool m_attributeDefinitionsHasBeenSet = false;
469 bool m_tableNameHasBeenSet = false;
470 bool m_billingModeHasBeenSet = false;
471 bool m_provisionedThroughputHasBeenSet = false;
472 bool m_globalSecondaryIndexUpdatesHasBeenSet = false;
473 bool m_streamSpecificationHasBeenSet = false;
474 bool m_sSESpecificationHasBeenSet = false;
475 bool m_replicaUpdatesHasBeenSet = false;
476 bool m_tableClassHasBeenSet = false;
477 bool m_deletionProtectionEnabledHasBeenSet = false;
478 bool m_multiRegionConsistencyHasBeenSet = false;
479 bool m_globalTableWitnessUpdatesHasBeenSet = false;
480 bool m_onDemandThroughputHasBeenSet = false;
481 bool m_warmThroughputHasBeenSet = false;
482 bool m_globalTableSettingsReplicationModeHasBeenSet = false;
483 bool m_vectorIndexUpdatesHasBeenSet = false;
484};
485
486} // namespace Model
487} // namespace DynamoDB
488} // namespace Aws
Aws::Endpoint::EndpointParameters EndpointParameters
UpdateTableRequest & WithOnDemandThroughput(OnDemandThroughputT &&value)
UpdateTableRequest & WithAttributeDefinitions(AttributeDefinitionsT &&value)
UpdateTableRequest & WithWarmThroughput(WarmThroughputT &&value)
AWS_DYNAMODB_API Aws::String SerializePayload() const override
UpdateTableRequest & AddAttributeDefinitions(AttributeDefinitionsT &&value)
const Aws::Vector< AttributeDefinition > & GetAttributeDefinitions() const
UpdateTableRequest & WithDeletionProtectionEnabled(bool value)
const SSESpecification & GetSSESpecification() const
UpdateTableRequest & WithGlobalTableSettingsReplicationMode(GlobalTableSettingsReplicationMode value)
UpdateTableRequest & AddReplicaUpdates(ReplicaUpdatesT &&value)
void SetWarmThroughput(WarmThroughputT &&value)
const ProvisionedThroughput & GetProvisionedThroughput() const
UpdateTableRequest & WithTableName(TableNameT &&value)
const Aws::Vector< GlobalTableWitnessGroupUpdate > & GetGlobalTableWitnessUpdates() const
UpdateTableRequest & WithMultiRegionConsistency(MultiRegionConsistency value)
void SetGlobalTableWitnessUpdates(GlobalTableWitnessUpdatesT &&value)
UpdateTableRequest & WithGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdatesT &&value)
MultiRegionConsistency GetMultiRegionConsistency() const
AWS_DYNAMODB_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UpdateTableRequest & WithBillingMode(BillingMode value)
void SetGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdatesT &&value)
void SetVectorIndexUpdates(VectorIndexUpdatesT &&value)
UpdateTableRequest & WithStreamSpecification(StreamSpecificationT &&value)
UpdateTableRequest & WithGlobalTableWitnessUpdates(GlobalTableWitnessUpdatesT &&value)
UpdateTableRequest & WithTableClass(TableClass value)
AWS_DYNAMODB_API EndpointParameters GetEndpointContextParams() const override
const Aws::Vector< GlobalSecondaryIndexUpdate > & GetGlobalSecondaryIndexUpdates() const
void SetMultiRegionConsistency(MultiRegionConsistency value)
UpdateTableRequest & WithReplicaUpdates(ReplicaUpdatesT &&value)
void SetSSESpecification(SSESpecificationT &&value)
void SetReplicaUpdates(ReplicaUpdatesT &&value)
const OnDemandThroughput & GetOnDemandThroughput() const
UpdateTableRequest & WithSSESpecification(SSESpecificationT &&value)
UpdateTableRequest & AddGlobalTableWitnessUpdates(GlobalTableWitnessUpdatesT &&value)
GlobalTableSettingsReplicationMode GetGlobalTableSettingsReplicationMode() const
const StreamSpecification & GetStreamSpecification() const
const WarmThroughput & GetWarmThroughput() const
UpdateTableRequest & AddGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdatesT &&value)
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
UpdateTableRequest & WithVectorIndexUpdates(VectorIndexUpdatesT &&value)
virtual const char * GetServiceRequestName() const override
void SetGlobalTableSettingsReplicationMode(GlobalTableSettingsReplicationMode value)
AWS_DYNAMODB_API UpdateTableRequest()=default
const Aws::Vector< VectorIndexUpdate > & GetVectorIndexUpdates() const
UpdateTableRequest & AddVectorIndexUpdates(VectorIndexUpdatesT &&value)
void SetStreamSpecification(StreamSpecificationT &&value)
UpdateTableRequest & WithProvisionedThroughput(ProvisionedThroughputT &&value)
void SetAttributeDefinitions(AttributeDefinitionsT &&value)
void SetOnDemandThroughput(OnDemandThroughputT &&value)
const Aws::Vector< ReplicationGroupUpdate > & GetReplicaUpdates() const
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector