AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateTableRequest.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/keyspaces/KeyspacesRequest.h>
10#include <aws/keyspaces/Keyspaces_EXPORTS.h>
11#include <aws/keyspaces/model/AutoScalingSpecification.h>
12#include <aws/keyspaces/model/CapacitySpecification.h>
13#include <aws/keyspaces/model/CdcSpecification.h>
14#include <aws/keyspaces/model/ClientSideTimestamps.h>
15#include <aws/keyspaces/model/Comment.h>
16#include <aws/keyspaces/model/EncryptionSpecification.h>
17#include <aws/keyspaces/model/PointInTimeRecovery.h>
18#include <aws/keyspaces/model/ReplicaSpecification.h>
19#include <aws/keyspaces/model/SchemaDefinition.h>
20#include <aws/keyspaces/model/Tag.h>
21#include <aws/keyspaces/model/TimeToLive.h>
22
23#include <utility>
24
25namespace Aws {
26namespace Keyspaces {
27namespace Model {
28
32 public:
33 AWS_KEYSPACES_API CreateTableRequest() = default;
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateTable"; }
40
41 AWS_KEYSPACES_API Aws::String SerializePayload() const override;
42
44
46
49 inline const Aws::String& GetKeyspaceName() const { return m_keyspaceName; }
50 inline bool KeyspaceNameHasBeenSet() const { return m_keyspaceNameHasBeenSet; }
51 template <typename KeyspaceNameT = Aws::String>
52 void SetKeyspaceName(KeyspaceNameT&& value) {
53 m_keyspaceNameHasBeenSet = true;
54 m_keyspaceName = std::forward<KeyspaceNameT>(value);
55 }
56 template <typename KeyspaceNameT = Aws::String>
57 CreateTableRequest& WithKeyspaceName(KeyspaceNameT&& value) {
58 SetKeyspaceName(std::forward<KeyspaceNameT>(value));
59 return *this;
60 }
62
64
67 inline const Aws::String& GetTableName() const { return m_tableName; }
68 inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; }
69 template <typename TableNameT = Aws::String>
70 void SetTableName(TableNameT&& value) {
71 m_tableNameHasBeenSet = true;
72 m_tableName = std::forward<TableNameT>(value);
73 }
74 template <typename TableNameT = Aws::String>
75 CreateTableRequest& WithTableName(TableNameT&& value) {
76 SetTableName(std::forward<TableNameT>(value));
77 return *this;
78 }
80
82
105 inline const SchemaDefinition& GetSchemaDefinition() const { return m_schemaDefinition; }
106 inline bool SchemaDefinitionHasBeenSet() const { return m_schemaDefinitionHasBeenSet; }
107 template <typename SchemaDefinitionT = SchemaDefinition>
108 void SetSchemaDefinition(SchemaDefinitionT&& value) {
109 m_schemaDefinitionHasBeenSet = true;
110 m_schemaDefinition = std::forward<SchemaDefinitionT>(value);
111 }
112 template <typename SchemaDefinitionT = SchemaDefinition>
113 CreateTableRequest& WithSchemaDefinition(SchemaDefinitionT&& value) {
114 SetSchemaDefinition(std::forward<SchemaDefinitionT>(value));
115 return *this;
116 }
118
120
123 inline const Comment& GetComment() const { return m_comment; }
124 inline bool CommentHasBeenSet() const { return m_commentHasBeenSet; }
125 template <typename CommentT = Comment>
126 void SetComment(CommentT&& value) {
127 m_commentHasBeenSet = true;
128 m_comment = std::forward<CommentT>(value);
129 }
130 template <typename CommentT = Comment>
131 CreateTableRequest& WithComment(CommentT&& value) {
132 SetComment(std::forward<CommentT>(value));
133 return *this;
134 }
136
138
149 inline const CapacitySpecification& GetCapacitySpecification() const { return m_capacitySpecification; }
150 inline bool CapacitySpecificationHasBeenSet() const { return m_capacitySpecificationHasBeenSet; }
151 template <typename CapacitySpecificationT = CapacitySpecification>
152 void SetCapacitySpecification(CapacitySpecificationT&& value) {
153 m_capacitySpecificationHasBeenSet = true;
154 m_capacitySpecification = std::forward<CapacitySpecificationT>(value);
155 }
156 template <typename CapacitySpecificationT = CapacitySpecification>
157 CreateTableRequest& WithCapacitySpecification(CapacitySpecificationT&& value) {
158 SetCapacitySpecification(std::forward<CapacitySpecificationT>(value));
159 return *this;
160 }
162
164
176 inline const EncryptionSpecification& GetEncryptionSpecification() const { return m_encryptionSpecification; }
177 inline bool EncryptionSpecificationHasBeenSet() const { return m_encryptionSpecificationHasBeenSet; }
178 template <typename EncryptionSpecificationT = EncryptionSpecification>
179 void SetEncryptionSpecification(EncryptionSpecificationT&& value) {
180 m_encryptionSpecificationHasBeenSet = true;
181 m_encryptionSpecification = std::forward<EncryptionSpecificationT>(value);
182 }
183 template <typename EncryptionSpecificationT = EncryptionSpecification>
184 CreateTableRequest& WithEncryptionSpecification(EncryptionSpecificationT&& value) {
185 SetEncryptionSpecification(std::forward<EncryptionSpecificationT>(value));
186 return *this;
187 }
189
191
199 inline const PointInTimeRecovery& GetPointInTimeRecovery() const { return m_pointInTimeRecovery; }
200 inline bool PointInTimeRecoveryHasBeenSet() const { return m_pointInTimeRecoveryHasBeenSet; }
201 template <typename PointInTimeRecoveryT = PointInTimeRecovery>
202 void SetPointInTimeRecovery(PointInTimeRecoveryT&& value) {
203 m_pointInTimeRecoveryHasBeenSet = true;
204 m_pointInTimeRecovery = std::forward<PointInTimeRecoveryT>(value);
205 }
206 template <typename PointInTimeRecoveryT = PointInTimeRecovery>
207 CreateTableRequest& WithPointInTimeRecovery(PointInTimeRecoveryT&& value) {
208 SetPointInTimeRecovery(std::forward<PointInTimeRecoveryT>(value));
209 return *this;
210 }
212
214
224 inline const TimeToLive& GetTtl() const { return m_ttl; }
225 inline bool TtlHasBeenSet() const { return m_ttlHasBeenSet; }
226 template <typename TtlT = TimeToLive>
227 void SetTtl(TtlT&& value) {
228 m_ttlHasBeenSet = true;
229 m_ttl = std::forward<TtlT>(value);
230 }
231 template <typename TtlT = TimeToLive>
233 SetTtl(std::forward<TtlT>(value));
234 return *this;
235 }
237
239
246 inline int GetDefaultTimeToLive() const { return m_defaultTimeToLive; }
247 inline bool DefaultTimeToLiveHasBeenSet() const { return m_defaultTimeToLiveHasBeenSet; }
248 inline void SetDefaultTimeToLive(int value) {
249 m_defaultTimeToLiveHasBeenSet = true;
250 m_defaultTimeToLive = value;
251 }
254 return *this;
255 }
257
259
266 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
267 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
268 template <typename TagsT = Aws::Vector<Tag>>
269 void SetTags(TagsT&& value) {
270 m_tagsHasBeenSet = true;
271 m_tags = std::forward<TagsT>(value);
272 }
273 template <typename TagsT = Aws::Vector<Tag>>
274 CreateTableRequest& WithTags(TagsT&& value) {
275 SetTags(std::forward<TagsT>(value));
276 return *this;
277 }
278 template <typename TagsT = Tag>
279 CreateTableRequest& AddTags(TagsT&& value) {
280 m_tagsHasBeenSet = true;
281 m_tags.emplace_back(std::forward<TagsT>(value));
282 return *this;
283 }
285
287
294 inline const ClientSideTimestamps& GetClientSideTimestamps() const { return m_clientSideTimestamps; }
295 inline bool ClientSideTimestampsHasBeenSet() const { return m_clientSideTimestampsHasBeenSet; }
296 template <typename ClientSideTimestampsT = ClientSideTimestamps>
297 void SetClientSideTimestamps(ClientSideTimestampsT&& value) {
298 m_clientSideTimestampsHasBeenSet = true;
299 m_clientSideTimestamps = std::forward<ClientSideTimestampsT>(value);
300 }
301 template <typename ClientSideTimestampsT = ClientSideTimestamps>
302 CreateTableRequest& WithClientSideTimestamps(ClientSideTimestampsT&& value) {
303 SetClientSideTimestamps(std::forward<ClientSideTimestampsT>(value));
304 return *this;
305 }
307
309
321 inline const AutoScalingSpecification& GetAutoScalingSpecification() const { return m_autoScalingSpecification; }
322 inline bool AutoScalingSpecificationHasBeenSet() const { return m_autoScalingSpecificationHasBeenSet; }
323 template <typename AutoScalingSpecificationT = AutoScalingSpecification>
324 void SetAutoScalingSpecification(AutoScalingSpecificationT&& value) {
325 m_autoScalingSpecificationHasBeenSet = true;
326 m_autoScalingSpecification = std::forward<AutoScalingSpecificationT>(value);
327 }
328 template <typename AutoScalingSpecificationT = AutoScalingSpecification>
329 CreateTableRequest& WithAutoScalingSpecification(AutoScalingSpecificationT&& value) {
330 SetAutoScalingSpecification(std::forward<AutoScalingSpecificationT>(value));
331 return *this;
332 }
334
336
350 inline const Aws::Vector<ReplicaSpecification>& GetReplicaSpecifications() const { return m_replicaSpecifications; }
351 inline bool ReplicaSpecificationsHasBeenSet() const { return m_replicaSpecificationsHasBeenSet; }
352 template <typename ReplicaSpecificationsT = Aws::Vector<ReplicaSpecification>>
353 void SetReplicaSpecifications(ReplicaSpecificationsT&& value) {
354 m_replicaSpecificationsHasBeenSet = true;
355 m_replicaSpecifications = std::forward<ReplicaSpecificationsT>(value);
356 }
357 template <typename ReplicaSpecificationsT = Aws::Vector<ReplicaSpecification>>
358 CreateTableRequest& WithReplicaSpecifications(ReplicaSpecificationsT&& value) {
359 SetReplicaSpecifications(std::forward<ReplicaSpecificationsT>(value));
360 return *this;
361 }
362 template <typename ReplicaSpecificationsT = ReplicaSpecification>
363 CreateTableRequest& AddReplicaSpecifications(ReplicaSpecificationsT&& value) {
364 m_replicaSpecificationsHasBeenSet = true;
365 m_replicaSpecifications.emplace_back(std::forward<ReplicaSpecificationsT>(value));
366 return *this;
367 }
369
371
374 inline const CdcSpecification& GetCdcSpecification() const { return m_cdcSpecification; }
375 inline bool CdcSpecificationHasBeenSet() const { return m_cdcSpecificationHasBeenSet; }
376 template <typename CdcSpecificationT = CdcSpecification>
377 void SetCdcSpecification(CdcSpecificationT&& value) {
378 m_cdcSpecificationHasBeenSet = true;
379 m_cdcSpecification = std::forward<CdcSpecificationT>(value);
380 }
381 template <typename CdcSpecificationT = CdcSpecification>
382 CreateTableRequest& WithCdcSpecification(CdcSpecificationT&& value) {
383 SetCdcSpecification(std::forward<CdcSpecificationT>(value));
384 return *this;
385 }
387 private:
388 Aws::String m_keyspaceName;
389
390 Aws::String m_tableName;
391
392 SchemaDefinition m_schemaDefinition;
393
394 Comment m_comment;
395
396 CapacitySpecification m_capacitySpecification;
397
398 EncryptionSpecification m_encryptionSpecification;
399
400 PointInTimeRecovery m_pointInTimeRecovery;
401
402 TimeToLive m_ttl;
403
404 int m_defaultTimeToLive{0};
405
406 Aws::Vector<Tag> m_tags;
407
408 ClientSideTimestamps m_clientSideTimestamps;
409
410 AutoScalingSpecification m_autoScalingSpecification;
411
412 Aws::Vector<ReplicaSpecification> m_replicaSpecifications;
413
414 CdcSpecification m_cdcSpecification;
415 bool m_keyspaceNameHasBeenSet = false;
416 bool m_tableNameHasBeenSet = false;
417 bool m_schemaDefinitionHasBeenSet = false;
418 bool m_commentHasBeenSet = false;
419 bool m_capacitySpecificationHasBeenSet = false;
420 bool m_encryptionSpecificationHasBeenSet = false;
421 bool m_pointInTimeRecoveryHasBeenSet = false;
422 bool m_ttlHasBeenSet = false;
423 bool m_defaultTimeToLiveHasBeenSet = false;
424 bool m_tagsHasBeenSet = false;
425 bool m_clientSideTimestampsHasBeenSet = false;
426 bool m_autoScalingSpecificationHasBeenSet = false;
427 bool m_replicaSpecificationsHasBeenSet = false;
428 bool m_cdcSpecificationHasBeenSet = false;
429};
430
431} // namespace Model
432} // namespace Keyspaces
433} // namespace Aws
CreateTableRequest & WithCapacitySpecification(CapacitySpecificationT &&value)
AWS_KEYSPACES_API CreateTableRequest()=default
CreateTableRequest & AddReplicaSpecifications(ReplicaSpecificationsT &&value)
CreateTableRequest & WithTtl(TtlT &&value)
void SetCdcSpecification(CdcSpecificationT &&value)
void SetAutoScalingSpecification(AutoScalingSpecificationT &&value)
CreateTableRequest & WithReplicaSpecifications(ReplicaSpecificationsT &&value)
CreateTableRequest & WithPointInTimeRecovery(PointInTimeRecoveryT &&value)
CreateTableRequest & WithTableName(TableNameT &&value)
const Aws::String & GetKeyspaceName() const
const SchemaDefinition & GetSchemaDefinition() const
CreateTableRequest & WithEncryptionSpecification(EncryptionSpecificationT &&value)
AWS_KEYSPACES_API Aws::String SerializePayload() const override
void SetCapacitySpecification(CapacitySpecificationT &&value)
CreateTableRequest & WithKeyspaceName(KeyspaceNameT &&value)
CreateTableRequest & AddTags(TagsT &&value)
void SetKeyspaceName(KeyspaceNameT &&value)
CreateTableRequest & WithAutoScalingSpecification(AutoScalingSpecificationT &&value)
const CapacitySpecification & GetCapacitySpecification() const
const EncryptionSpecification & GetEncryptionSpecification() const
void SetClientSideTimestamps(ClientSideTimestampsT &&value)
const ClientSideTimestamps & GetClientSideTimestamps() const
const CdcSpecification & GetCdcSpecification() const
void SetPointInTimeRecovery(PointInTimeRecoveryT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetEncryptionSpecification(EncryptionSpecificationT &&value)
void SetSchemaDefinition(SchemaDefinitionT &&value)
const Aws::Vector< ReplicaSpecification > & GetReplicaSpecifications() const
const AutoScalingSpecification & GetAutoScalingSpecification() const
CreateTableRequest & WithComment(CommentT &&value)
CreateTableRequest & WithSchemaDefinition(SchemaDefinitionT &&value)
CreateTableRequest & WithDefaultTimeToLive(int value)
CreateTableRequest & WithTags(TagsT &&value)
CreateTableRequest & WithCdcSpecification(CdcSpecificationT &&value)
const PointInTimeRecovery & GetPointInTimeRecovery() const
AWS_KEYSPACES_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
virtual const char * GetServiceRequestName() const override
void SetReplicaSpecifications(ReplicaSpecificationsT &&value)
CreateTableRequest & WithClientSideTimestamps(ClientSideTimestampsT &&value)
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