AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
CreateTableRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/s3tables/S3TablesRequest.h>
10#include <aws/s3tables/S3Tables_EXPORTS.h>
11#include <aws/s3tables/model/EncryptionConfiguration.h>
12#include <aws/s3tables/model/OpenTableFormat.h>
13#include <aws/s3tables/model/StorageClassConfiguration.h>
14#include <aws/s3tables/model/TableMetadata.h>
15
16#include <utility>
17
18namespace Aws {
19namespace S3Tables {
20namespace Model {
21
25 public:
26 AWS_S3TABLES_API CreateTableRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateTable"; }
33
34 AWS_S3TABLES_API Aws::String SerializePayload() const override;
35
37
41 inline const Aws::String& GetTableBucketARN() const { return m_tableBucketARN; }
42 inline bool TableBucketARNHasBeenSet() const { return m_tableBucketARNHasBeenSet; }
43 template <typename TableBucketARNT = Aws::String>
44 void SetTableBucketARN(TableBucketARNT&& value) {
45 m_tableBucketARNHasBeenSet = true;
46 m_tableBucketARN = std::forward<TableBucketARNT>(value);
47 }
48 template <typename TableBucketARNT = Aws::String>
49 CreateTableRequest& WithTableBucketARN(TableBucketARNT&& value) {
50 SetTableBucketARN(std::forward<TableBucketARNT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetNamespace() const { return m_namespace; }
60 inline bool NamespaceHasBeenSet() const { return m_namespaceHasBeenSet; }
61 template <typename NamespaceT = Aws::String>
62 void SetNamespace(NamespaceT&& value) {
63 m_namespaceHasBeenSet = true;
64 m_namespace = std::forward<NamespaceT>(value);
65 }
66 template <typename NamespaceT = Aws::String>
67 CreateTableRequest& WithNamespace(NamespaceT&& value) {
68 SetNamespace(std::forward<NamespaceT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetName() const { return m_name; }
78 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
79 template <typename NameT = Aws::String>
80 void SetName(NameT&& value) {
81 m_nameHasBeenSet = true;
82 m_name = std::forward<NameT>(value);
83 }
84 template <typename NameT = Aws::String>
85 CreateTableRequest& WithName(NameT&& value) {
86 SetName(std::forward<NameT>(value));
87 return *this;
88 }
90
92
95 inline OpenTableFormat GetFormat() const { return m_format; }
96 inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
97 inline void SetFormat(OpenTableFormat value) {
98 m_formatHasBeenSet = true;
99 m_format = value;
100 }
102 SetFormat(value);
103 return *this;
104 }
106
108
111 inline const TableMetadata& GetMetadata() const { return m_metadata; }
112 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
113 template <typename MetadataT = TableMetadata>
114 void SetMetadata(MetadataT&& value) {
115 m_metadataHasBeenSet = true;
116 m_metadata = std::forward<MetadataT>(value);
117 }
118 template <typename MetadataT = TableMetadata>
119 CreateTableRequest& WithMetadata(MetadataT&& value) {
120 SetMetadata(std::forward<MetadataT>(value));
121 return *this;
122 }
124
126
135 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
136 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
137 template <typename EncryptionConfigurationT = EncryptionConfiguration>
138 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) {
139 m_encryptionConfigurationHasBeenSet = true;
140 m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value);
141 }
142 template <typename EncryptionConfigurationT = EncryptionConfiguration>
143 CreateTableRequest& WithEncryptionConfiguration(EncryptionConfigurationT&& value) {
144 SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value));
145 return *this;
146 }
148
150
155 inline const StorageClassConfiguration& GetStorageClassConfiguration() const { return m_storageClassConfiguration; }
156 inline bool StorageClassConfigurationHasBeenSet() const { return m_storageClassConfigurationHasBeenSet; }
157 template <typename StorageClassConfigurationT = StorageClassConfiguration>
158 void SetStorageClassConfiguration(StorageClassConfigurationT&& value) {
159 m_storageClassConfigurationHasBeenSet = true;
160 m_storageClassConfiguration = std::forward<StorageClassConfigurationT>(value);
161 }
162 template <typename StorageClassConfigurationT = StorageClassConfiguration>
163 CreateTableRequest& WithStorageClassConfiguration(StorageClassConfigurationT&& value) {
164 SetStorageClassConfiguration(std::forward<StorageClassConfigurationT>(value));
165 return *this;
166 }
168
170
181 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
182 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
183 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
184 void SetTags(TagsT&& value) {
185 m_tagsHasBeenSet = true;
186 m_tags = std::forward<TagsT>(value);
187 }
188 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
189 CreateTableRequest& WithTags(TagsT&& value) {
190 SetTags(std::forward<TagsT>(value));
191 return *this;
192 }
193 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
194 CreateTableRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
195 m_tagsHasBeenSet = true;
196 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
197 return *this;
198 }
200 private:
201 Aws::String m_tableBucketARN;
202
203 Aws::String m_namespace;
204
205 Aws::String m_name;
206
208
209 TableMetadata m_metadata;
210
211 EncryptionConfiguration m_encryptionConfiguration;
212
213 StorageClassConfiguration m_storageClassConfiguration;
214
216 bool m_tableBucketARNHasBeenSet = false;
217 bool m_namespaceHasBeenSet = false;
218 bool m_nameHasBeenSet = false;
219 bool m_formatHasBeenSet = false;
220 bool m_metadataHasBeenSet = false;
221 bool m_encryptionConfigurationHasBeenSet = false;
222 bool m_storageClassConfigurationHasBeenSet = false;
223 bool m_tagsHasBeenSet = false;
224};
225
226} // namespace Model
227} // namespace S3Tables
228} // namespace Aws
AWS_S3TABLES_API Aws::String SerializePayload() const override
CreateTableRequest & WithTags(TagsT &&value)
void SetTableBucketARN(TableBucketARNT &&value)
void SetStorageClassConfiguration(StorageClassConfigurationT &&value)
CreateTableRequest & WithStorageClassConfiguration(StorageClassConfigurationT &&value)
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
CreateTableRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const StorageClassConfiguration & GetStorageClassConfiguration() const
CreateTableRequest & WithNamespace(NamespaceT &&value)
CreateTableRequest & WithFormat(OpenTableFormat value)
AWS_S3TABLES_API CreateTableRequest()=default
CreateTableRequest & WithTableBucketARN(TableBucketARNT &&value)
const TableMetadata & GetMetadata() const
CreateTableRequest & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
const EncryptionConfiguration & GetEncryptionConfiguration() const
virtual const char * GetServiceRequestName() const override
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateTableRequest & WithName(NameT &&value)
const Aws::String & GetTableBucketARN() const
CreateTableRequest & WithMetadata(MetadataT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String