AWS SDK for C++  0.12.9
AWS SDK for C++
TableDescription.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
27 
28 namespace Aws
29 {
30 namespace Utils
31 {
32 namespace Json
33 {
34  class JsonValue;
35 } // namespace Json
36 } // namespace Utils
37 namespace DynamoDB
38 {
39 namespace Model
40 {
41 
46  {
47  public:
50  TableDescription& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
51  Aws::Utils::Json::JsonValue Jsonize() const;
52 
60  inline const Aws::Vector<AttributeDefinition>& GetAttributeDefinitions() const{ return m_attributeDefinitions; }
61 
69  inline void SetAttributeDefinitions(const Aws::Vector<AttributeDefinition>& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions = value; }
70 
78  inline void SetAttributeDefinitions(Aws::Vector<AttributeDefinition>&& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions = value; }
79 
87  inline TableDescription& WithAttributeDefinitions(const Aws::Vector<AttributeDefinition>& value) { SetAttributeDefinitions(value); return *this;}
88 
96  inline TableDescription& WithAttributeDefinitions(Aws::Vector<AttributeDefinition>&& value) { SetAttributeDefinitions(value); return *this;}
97 
105  inline TableDescription& AddAttributeDefinitions(const AttributeDefinition& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions.push_back(value); return *this; }
106 
114  inline TableDescription& AddAttributeDefinitions(AttributeDefinition&& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions.push_back(value); return *this; }
115 
119  inline const Aws::String& GetTableName() const{ return m_tableName; }
120 
124  inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; }
125 
129  inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = value; }
130 
134  inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); }
135 
139  inline TableDescription& WithTableName(const Aws::String& value) { SetTableName(value); return *this;}
140 
144  inline TableDescription& WithTableName(Aws::String&& value) { SetTableName(value); return *this;}
145 
149  inline TableDescription& WithTableName(const char* value) { SetTableName(value); return *this;}
150 
167  inline const Aws::Vector<KeySchemaElement>& GetKeySchema() const{ return m_keySchema; }
168 
185  inline void SetKeySchema(const Aws::Vector<KeySchemaElement>& value) { m_keySchemaHasBeenSet = true; m_keySchema = value; }
186 
203  inline void SetKeySchema(Aws::Vector<KeySchemaElement>&& value) { m_keySchemaHasBeenSet = true; m_keySchema = value; }
204 
221  inline TableDescription& WithKeySchema(const Aws::Vector<KeySchemaElement>& value) { SetKeySchema(value); return *this;}
222 
239  inline TableDescription& WithKeySchema(Aws::Vector<KeySchemaElement>&& value) { SetKeySchema(value); return *this;}
240 
257  inline TableDescription& AddKeySchema(const KeySchemaElement& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(value); return *this; }
258 
275  inline TableDescription& AddKeySchema(KeySchemaElement&& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(value); return *this; }
276 
283  inline const TableStatus& GetTableStatus() const{ return m_tableStatus; }
284 
291  inline void SetTableStatus(const TableStatus& value) { m_tableStatusHasBeenSet = true; m_tableStatus = value; }
292 
299  inline void SetTableStatus(TableStatus&& value) { m_tableStatusHasBeenSet = true; m_tableStatus = value; }
300 
307  inline TableDescription& WithTableStatus(const TableStatus& value) { SetTableStatus(value); return *this;}
308 
315  inline TableDescription& WithTableStatus(TableStatus&& value) { SetTableStatus(value); return *this;}
316 
321  inline const Aws::Utils::DateTime& GetCreationDateTime() const{ return m_creationDateTime; }
322 
327  inline void SetCreationDateTime(const Aws::Utils::DateTime& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = value; }
328 
333  inline void SetCreationDateTime(Aws::Utils::DateTime&& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = value; }
334 
339  inline TableDescription& WithCreationDateTime(const Aws::Utils::DateTime& value) { SetCreationDateTime(value); return *this;}
340 
345  inline TableDescription& WithCreationDateTime(Aws::Utils::DateTime&& value) { SetCreationDateTime(value); return *this;}
346 
351  inline const ProvisionedThroughputDescription& GetProvisionedThroughput() const{ return m_provisionedThroughput; }
352 
357  inline void SetProvisionedThroughput(const ProvisionedThroughputDescription& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; }
358 
363  inline void SetProvisionedThroughput(ProvisionedThroughputDescription&& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; }
364 
369  inline TableDescription& WithProvisionedThroughput(const ProvisionedThroughputDescription& value) { SetProvisionedThroughput(value); return *this;}
370 
375  inline TableDescription& WithProvisionedThroughput(ProvisionedThroughputDescription&& value) { SetProvisionedThroughput(value); return *this;}
376 
382  inline long long GetTableSizeBytes() const{ return m_tableSizeBytes; }
383 
389  inline void SetTableSizeBytes(long long value) { m_tableSizeBytesHasBeenSet = true; m_tableSizeBytes = value; }
390 
396  inline TableDescription& WithTableSizeBytes(long long value) { SetTableSizeBytes(value); return *this;}
397 
403  inline long long GetItemCount() const{ return m_itemCount; }
404 
410  inline void SetItemCount(long long value) { m_itemCountHasBeenSet = true; m_itemCount = value; }
411 
417  inline TableDescription& WithItemCount(long long value) { SetItemCount(value); return *this;}
418 
422  inline const Aws::String& GetTableArn() const{ return m_tableArn; }
423 
427  inline void SetTableArn(const Aws::String& value) { m_tableArnHasBeenSet = true; m_tableArn = value; }
428 
432  inline void SetTableArn(Aws::String&& value) { m_tableArnHasBeenSet = true; m_tableArn = value; }
433 
437  inline void SetTableArn(const char* value) { m_tableArnHasBeenSet = true; m_tableArn.assign(value); }
438 
442  inline TableDescription& WithTableArn(const Aws::String& value) { SetTableArn(value); return *this;}
443 
447  inline TableDescription& WithTableArn(Aws::String&& value) { SetTableArn(value); return *this;}
448 
452  inline TableDescription& WithTableArn(const char* value) { SetTableArn(value); return *this;}
453 
486  inline const Aws::Vector<LocalSecondaryIndexDescription>& GetLocalSecondaryIndexes() const{ return m_localSecondaryIndexes; }
487 
520  inline void SetLocalSecondaryIndexes(const Aws::Vector<LocalSecondaryIndexDescription>& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes = value; }
521 
554  inline void SetLocalSecondaryIndexes(Aws::Vector<LocalSecondaryIndexDescription>&& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes = value; }
555 
588  inline TableDescription& WithLocalSecondaryIndexes(const Aws::Vector<LocalSecondaryIndexDescription>& value) { SetLocalSecondaryIndexes(value); return *this;}
589 
622  inline TableDescription& WithLocalSecondaryIndexes(Aws::Vector<LocalSecondaryIndexDescription>&& value) { SetLocalSecondaryIndexes(value); return *this;}
623 
656  inline TableDescription& AddLocalSecondaryIndexes(const LocalSecondaryIndexDescription& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes.push_back(value); return *this; }
657 
690  inline TableDescription& AddLocalSecondaryIndexes(LocalSecondaryIndexDescription&& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes.push_back(value); return *this; }
691 
734  inline const Aws::Vector<GlobalSecondaryIndexDescription>& GetGlobalSecondaryIndexes() const{ return m_globalSecondaryIndexes; }
735 
778  inline void SetGlobalSecondaryIndexes(const Aws::Vector<GlobalSecondaryIndexDescription>& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes = value; }
779 
822  inline void SetGlobalSecondaryIndexes(Aws::Vector<GlobalSecondaryIndexDescription>&& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes = value; }
823 
866  inline TableDescription& WithGlobalSecondaryIndexes(const Aws::Vector<GlobalSecondaryIndexDescription>& value) { SetGlobalSecondaryIndexes(value); return *this;}
867 
910  inline TableDescription& WithGlobalSecondaryIndexes(Aws::Vector<GlobalSecondaryIndexDescription>&& value) { SetGlobalSecondaryIndexes(value); return *this;}
911 
954  inline TableDescription& AddGlobalSecondaryIndexes(const GlobalSecondaryIndexDescription& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.push_back(value); return *this; }
955 
998  inline TableDescription& AddGlobalSecondaryIndexes(GlobalSecondaryIndexDescription&& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.push_back(value); return *this; }
999 
1003  inline const StreamSpecification& GetStreamSpecification() const{ return m_streamSpecification; }
1004 
1008  inline void SetStreamSpecification(const StreamSpecification& value) { m_streamSpecificationHasBeenSet = true; m_streamSpecification = value; }
1009 
1013  inline void SetStreamSpecification(StreamSpecification&& value) { m_streamSpecificationHasBeenSet = true; m_streamSpecification = value; }
1014 
1018  inline TableDescription& WithStreamSpecification(const StreamSpecification& value) { SetStreamSpecification(value); return *this;}
1019 
1023  inline TableDescription& WithStreamSpecification(StreamSpecification&& value) { SetStreamSpecification(value); return *this;}
1024 
1033  inline const Aws::String& GetLatestStreamLabel() const{ return m_latestStreamLabel; }
1034 
1043  inline void SetLatestStreamLabel(const Aws::String& value) { m_latestStreamLabelHasBeenSet = true; m_latestStreamLabel = value; }
1044 
1053  inline void SetLatestStreamLabel(Aws::String&& value) { m_latestStreamLabelHasBeenSet = true; m_latestStreamLabel = value; }
1054 
1063  inline void SetLatestStreamLabel(const char* value) { m_latestStreamLabelHasBeenSet = true; m_latestStreamLabel.assign(value); }
1064 
1073  inline TableDescription& WithLatestStreamLabel(const Aws::String& value) { SetLatestStreamLabel(value); return *this;}
1074 
1083  inline TableDescription& WithLatestStreamLabel(Aws::String&& value) { SetLatestStreamLabel(value); return *this;}
1084 
1093  inline TableDescription& WithLatestStreamLabel(const char* value) { SetLatestStreamLabel(value); return *this;}
1094 
1099  inline const Aws::String& GetLatestStreamArn() const{ return m_latestStreamArn; }
1100 
1105  inline void SetLatestStreamArn(const Aws::String& value) { m_latestStreamArnHasBeenSet = true; m_latestStreamArn = value; }
1106 
1111  inline void SetLatestStreamArn(Aws::String&& value) { m_latestStreamArnHasBeenSet = true; m_latestStreamArn = value; }
1112 
1117  inline void SetLatestStreamArn(const char* value) { m_latestStreamArnHasBeenSet = true; m_latestStreamArn.assign(value); }
1118 
1123  inline TableDescription& WithLatestStreamArn(const Aws::String& value) { SetLatestStreamArn(value); return *this;}
1124 
1129  inline TableDescription& WithLatestStreamArn(Aws::String&& value) { SetLatestStreamArn(value); return *this;}
1130 
1135  inline TableDescription& WithLatestStreamArn(const char* value) { SetLatestStreamArn(value); return *this;}
1136 
1137  private:
1138  Aws::Vector<AttributeDefinition> m_attributeDefinitions;
1139  bool m_attributeDefinitionsHasBeenSet;
1140  Aws::String m_tableName;
1141  bool m_tableNameHasBeenSet;
1142  Aws::Vector<KeySchemaElement> m_keySchema;
1143  bool m_keySchemaHasBeenSet;
1144  TableStatus m_tableStatus;
1145  bool m_tableStatusHasBeenSet;
1146  Aws::Utils::DateTime m_creationDateTime;
1147  bool m_creationDateTimeHasBeenSet;
1148  ProvisionedThroughputDescription m_provisionedThroughput;
1149  bool m_provisionedThroughputHasBeenSet;
1150  long long m_tableSizeBytes;
1151  bool m_tableSizeBytesHasBeenSet;
1152  long long m_itemCount;
1153  bool m_itemCountHasBeenSet;
1154  Aws::String m_tableArn;
1155  bool m_tableArnHasBeenSet;
1156  Aws::Vector<LocalSecondaryIndexDescription> m_localSecondaryIndexes;
1157  bool m_localSecondaryIndexesHasBeenSet;
1158  Aws::Vector<GlobalSecondaryIndexDescription> m_globalSecondaryIndexes;
1159  bool m_globalSecondaryIndexesHasBeenSet;
1160  StreamSpecification m_streamSpecification;
1161  bool m_streamSpecificationHasBeenSet;
1162  Aws::String m_latestStreamLabel;
1163  bool m_latestStreamLabelHasBeenSet;
1164  Aws::String m_latestStreamArn;
1165  bool m_latestStreamArnHasBeenSet;
1166  };
1167 
1168 } // namespace Model
1169 } // namespace DynamoDB
1170 } // namespace Aws
TableDescription & WithProvisionedThroughput(ProvisionedThroughputDescription &&value)
const Aws::Utils::DateTime & GetCreationDateTime() const
TableDescription & WithLatestStreamArn(const char *value)
TableDescription & WithLatestStreamLabel(const Aws::String &value)
void SetLatestStreamArn(const char *value)
TableDescription & WithTableStatus(TableStatus &&value)
TableDescription & WithGlobalSecondaryIndexes(const Aws::Vector< GlobalSecondaryIndexDescription > &value)
void SetAttributeDefinitions(Aws::Vector< AttributeDefinition > &&value)
void SetProvisionedThroughput(const ProvisionedThroughputDescription &value)
void SetAttributeDefinitions(const Aws::Vector< AttributeDefinition > &value)
void SetStreamSpecification(StreamSpecification &&value)
TableDescription & WithItemCount(long long value)
TableDescription & WithAttributeDefinitions(const Aws::Vector< AttributeDefinition > &value)
TableDescription & WithKeySchema(const Aws::Vector< KeySchemaElement > &value)
const Aws::String & GetTableName() const
TableDescription & AddGlobalSecondaryIndexes(const GlobalSecondaryIndexDescription &value)
TableDescription & WithTableName(Aws::String &&value)
TableDescription & WithTableArn(const char *value)
void SetTableArn(const Aws::String &value)
const ProvisionedThroughputDescription & GetProvisionedThroughput() const
TableDescription & AddLocalSecondaryIndexes(LocalSecondaryIndexDescription &&value)
TableDescription & WithTableName(const Aws::String &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetTableName(const Aws::String &value)
TableDescription & WithTableStatus(const TableStatus &value)
const Aws::Vector< GlobalSecondaryIndexDescription > & GetGlobalSecondaryIndexes() const
void SetLatestStreamLabel(const char *value)
void SetGlobalSecondaryIndexes(const Aws::Vector< GlobalSecondaryIndexDescription > &value)
TableDescription & WithTableSizeBytes(long long value)
#define AWS_DYNAMODB_API
TableDescription & WithKeySchema(Aws::Vector< KeySchemaElement > &&value)
void SetTableArn(Aws::String &&value)
TableDescription & AddKeySchema(const KeySchemaElement &value)
const TableStatus & GetTableStatus() const
void SetKeySchema(Aws::Vector< KeySchemaElement > &&value)
TableDescription & WithGlobalSecondaryIndexes(Aws::Vector< GlobalSecondaryIndexDescription > &&value)
TableDescription & WithTableArn(const Aws::String &value)
void SetTableStatus(TableStatus &&value)
const Aws::String & GetLatestStreamArn() const
void SetLocalSecondaryIndexes(const Aws::Vector< LocalSecondaryIndexDescription > &value)
TableDescription & WithStreamSpecification(const StreamSpecification &value)
const Aws::Vector< AttributeDefinition > & GetAttributeDefinitions() const
const Aws::String & GetLatestStreamLabel() const
void SetTableStatus(const TableStatus &value)
TableDescription & AddAttributeDefinitions(AttributeDefinition &&value)
void SetLatestStreamArn(Aws::String &&value)
void SetTableName(Aws::String &&value)
TableDescription & WithLocalSecondaryIndexes(const Aws::Vector< LocalSecondaryIndexDescription > &value)
void SetCreationDateTime(Aws::Utils::DateTime &&value)
const Aws::Vector< LocalSecondaryIndexDescription > & GetLocalSecondaryIndexes() const
TableDescription & WithLatestStreamArn(Aws::String &&value)
void SetLocalSecondaryIndexes(Aws::Vector< LocalSecondaryIndexDescription > &&value)
void SetLatestStreamLabel(const Aws::String &value)
TableDescription & WithTableArn(Aws::String &&value)
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
void SetLatestStreamLabel(Aws::String &&value)
TableDescription & WithLatestStreamLabel(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
TableDescription & WithAttributeDefinitions(Aws::Vector< AttributeDefinition > &&value)
const StreamSpecification & GetStreamSpecification() const
TableDescription & AddAttributeDefinitions(const AttributeDefinition &value)
void SetCreationDateTime(const Aws::Utils::DateTime &value)
const Aws::String & GetTableArn() const
TableDescription & AddKeySchema(KeySchemaElement &&value)
TableDescription & WithLocalSecondaryIndexes(Aws::Vector< LocalSecondaryIndexDescription > &&value)
TableDescription & WithStreamSpecification(StreamSpecification &&value)
TableDescription & WithCreationDateTime(const Aws::Utils::DateTime &value)
void SetProvisionedThroughput(ProvisionedThroughputDescription &&value)
TableDescription & AddGlobalSecondaryIndexes(GlobalSecondaryIndexDescription &&value)
void SetLatestStreamArn(const Aws::String &value)
TableDescription & WithCreationDateTime(Aws::Utils::DateTime &&value)
TableDescription & WithLatestStreamArn(const Aws::String &value)
TableDescription & WithProvisionedThroughput(const ProvisionedThroughputDescription &value)
void SetGlobalSecondaryIndexes(Aws::Vector< GlobalSecondaryIndexDescription > &&value)
void SetKeySchema(const Aws::Vector< KeySchemaElement > &value)
void SetStreamSpecification(const StreamSpecification &value)
TableDescription & WithLatestStreamLabel(const char *value)
JSON (JavaScript Object Notation).
TableDescription & WithTableName(const char *value)
TableDescription & AddLocalSecondaryIndexes(const LocalSecondaryIndexDescription &value)