AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
SourceTableDetails.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/dynamodb/DynamoDB_EXPORTS.h>
11#include <aws/dynamodb/model/BillingMode.h>
12#include <aws/dynamodb/model/KeySchemaElement.h>
13#include <aws/dynamodb/model/OnDemandThroughput.h>
14#include <aws/dynamodb/model/ProvisionedThroughput.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace DynamoDB {
26namespace Model {
27
35 public:
36 AWS_DYNAMODB_API SourceTableDetails() = default;
39 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
45 inline const Aws::String& GetTableName() const { return m_tableName; }
46 inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; }
47 template <typename TableNameT = Aws::String>
48 void SetTableName(TableNameT&& value) {
49 m_tableNameHasBeenSet = true;
50 m_tableName = std::forward<TableNameT>(value);
51 }
52 template <typename TableNameT = Aws::String>
53 SourceTableDetails& WithTableName(TableNameT&& value) {
54 SetTableName(std::forward<TableNameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetTableId() const { return m_tableId; }
64 inline bool TableIdHasBeenSet() const { return m_tableIdHasBeenSet; }
65 template <typename TableIdT = Aws::String>
66 void SetTableId(TableIdT&& value) {
67 m_tableIdHasBeenSet = true;
68 m_tableId = std::forward<TableIdT>(value);
69 }
70 template <typename TableIdT = Aws::String>
71 SourceTableDetails& WithTableId(TableIdT&& value) {
72 SetTableId(std::forward<TableIdT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetTableArn() const { return m_tableArn; }
82 inline bool TableArnHasBeenSet() const { return m_tableArnHasBeenSet; }
83 template <typename TableArnT = Aws::String>
84 void SetTableArn(TableArnT&& value) {
85 m_tableArnHasBeenSet = true;
86 m_tableArn = std::forward<TableArnT>(value);
87 }
88 template <typename TableArnT = Aws::String>
89 SourceTableDetails& WithTableArn(TableArnT&& value) {
90 SetTableArn(std::forward<TableArnT>(value));
91 return *this;
92 }
94
96
99 inline long long GetTableSizeBytes() const { return m_tableSizeBytes; }
100 inline bool TableSizeBytesHasBeenSet() const { return m_tableSizeBytesHasBeenSet; }
101 inline void SetTableSizeBytes(long long value) {
102 m_tableSizeBytesHasBeenSet = true;
103 m_tableSizeBytes = value;
104 }
105 inline SourceTableDetails& WithTableSizeBytes(long long value) {
106 SetTableSizeBytes(value);
107 return *this;
108 }
110
112
115 inline const Aws::Vector<KeySchemaElement>& GetKeySchema() const { return m_keySchema; }
116 inline bool KeySchemaHasBeenSet() const { return m_keySchemaHasBeenSet; }
117 template <typename KeySchemaT = Aws::Vector<KeySchemaElement>>
118 void SetKeySchema(KeySchemaT&& value) {
119 m_keySchemaHasBeenSet = true;
120 m_keySchema = std::forward<KeySchemaT>(value);
121 }
122 template <typename KeySchemaT = Aws::Vector<KeySchemaElement>>
123 SourceTableDetails& WithKeySchema(KeySchemaT&& value) {
124 SetKeySchema(std::forward<KeySchemaT>(value));
125 return *this;
126 }
127 template <typename KeySchemaT = KeySchemaElement>
128 SourceTableDetails& AddKeySchema(KeySchemaT&& value) {
129 m_keySchemaHasBeenSet = true;
130 m_keySchema.emplace_back(std::forward<KeySchemaT>(value));
131 return *this;
132 }
134
136
139 inline const Aws::Utils::DateTime& GetTableCreationDateTime() const { return m_tableCreationDateTime; }
140 inline bool TableCreationDateTimeHasBeenSet() const { return m_tableCreationDateTimeHasBeenSet; }
141 template <typename TableCreationDateTimeT = Aws::Utils::DateTime>
142 void SetTableCreationDateTime(TableCreationDateTimeT&& value) {
143 m_tableCreationDateTimeHasBeenSet = true;
144 m_tableCreationDateTime = std::forward<TableCreationDateTimeT>(value);
145 }
146 template <typename TableCreationDateTimeT = Aws::Utils::DateTime>
147 SourceTableDetails& WithTableCreationDateTime(TableCreationDateTimeT&& value) {
148 SetTableCreationDateTime(std::forward<TableCreationDateTimeT>(value));
149 return *this;
150 }
152
154
157 inline const ProvisionedThroughput& GetProvisionedThroughput() const { return m_provisionedThroughput; }
158 inline bool ProvisionedThroughputHasBeenSet() const { return m_provisionedThroughputHasBeenSet; }
159 template <typename ProvisionedThroughputT = ProvisionedThroughput>
160 void SetProvisionedThroughput(ProvisionedThroughputT&& value) {
161 m_provisionedThroughputHasBeenSet = true;
162 m_provisionedThroughput = std::forward<ProvisionedThroughputT>(value);
163 }
164 template <typename ProvisionedThroughputT = ProvisionedThroughput>
165 SourceTableDetails& WithProvisionedThroughput(ProvisionedThroughputT&& value) {
166 SetProvisionedThroughput(std::forward<ProvisionedThroughputT>(value));
167 return *this;
168 }
170
172
173 inline const OnDemandThroughput& GetOnDemandThroughput() const { return m_onDemandThroughput; }
174 inline bool OnDemandThroughputHasBeenSet() const { return m_onDemandThroughputHasBeenSet; }
175 template <typename OnDemandThroughputT = OnDemandThroughput>
176 void SetOnDemandThroughput(OnDemandThroughputT&& value) {
177 m_onDemandThroughputHasBeenSet = true;
178 m_onDemandThroughput = std::forward<OnDemandThroughputT>(value);
179 }
180 template <typename OnDemandThroughputT = OnDemandThroughput>
181 SourceTableDetails& WithOnDemandThroughput(OnDemandThroughputT&& value) {
182 SetOnDemandThroughput(std::forward<OnDemandThroughputT>(value));
183 return *this;
184 }
186
188
191 inline long long GetItemCount() const { return m_itemCount; }
192 inline bool ItemCountHasBeenSet() const { return m_itemCountHasBeenSet; }
193 inline void SetItemCount(long long value) {
194 m_itemCountHasBeenSet = true;
195 m_itemCount = value;
196 }
197 inline SourceTableDetails& WithItemCount(long long value) {
198 SetItemCount(value);
199 return *this;
200 }
202
204
213 inline BillingMode GetBillingMode() const { return m_billingMode; }
214 inline bool BillingModeHasBeenSet() const { return m_billingModeHasBeenSet; }
215 inline void SetBillingMode(BillingMode value) {
216 m_billingModeHasBeenSet = true;
217 m_billingMode = value;
218 }
220 SetBillingMode(value);
221 return *this;
222 }
224 private:
225 Aws::String m_tableName;
226
227 Aws::String m_tableId;
228
229 Aws::String m_tableArn;
230
231 long long m_tableSizeBytes{0};
232
234
235 Aws::Utils::DateTime m_tableCreationDateTime{};
236
237 ProvisionedThroughput m_provisionedThroughput;
238
239 OnDemandThroughput m_onDemandThroughput;
240
241 long long m_itemCount{0};
242
243 BillingMode m_billingMode{BillingMode::NOT_SET};
244 bool m_tableNameHasBeenSet = false;
245 bool m_tableIdHasBeenSet = false;
246 bool m_tableArnHasBeenSet = false;
247 bool m_tableSizeBytesHasBeenSet = false;
248 bool m_keySchemaHasBeenSet = false;
249 bool m_tableCreationDateTimeHasBeenSet = false;
250 bool m_provisionedThroughputHasBeenSet = false;
251 bool m_onDemandThroughputHasBeenSet = false;
252 bool m_itemCountHasBeenSet = false;
253 bool m_billingModeHasBeenSet = false;
254};
255
256} // namespace Model
257} // namespace DynamoDB
258} // namespace Aws
SourceTableDetails & WithTableCreationDateTime(TableCreationDateTimeT &&value)
const Aws::Utils::DateTime & GetTableCreationDateTime() const
const ProvisionedThroughput & GetProvisionedThroughput() const
SourceTableDetails & WithTableSizeBytes(long long value)
SourceTableDetails & WithBillingMode(BillingMode value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
void SetOnDemandThroughput(OnDemandThroughputT &&value)
SourceTableDetails & WithTableName(TableNameT &&value)
SourceTableDetails & WithItemCount(long long value)
SourceTableDetails & WithKeySchema(KeySchemaT &&value)
SourceTableDetails & WithProvisionedThroughput(ProvisionedThroughputT &&value)
SourceTableDetails & WithTableId(TableIdT &&value)
void SetTableCreationDateTime(TableCreationDateTimeT &&value)
const OnDemandThroughput & GetOnDemandThroughput() const
AWS_DYNAMODB_API SourceTableDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetProvisionedThroughput(ProvisionedThroughputT &&value)
SourceTableDetails & WithTableArn(TableArnT &&value)
SourceTableDetails & AddKeySchema(KeySchemaT &&value)
SourceTableDetails & WithOnDemandThroughput(OnDemandThroughputT &&value)
AWS_DYNAMODB_API SourceTableDetails(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
AWS_DYNAMODB_API SourceTableDetails()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue