AWS SDK for C++  0.12.9
AWS SDK for C++
UpdateTableRequest.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
24 
25 namespace Aws
26 {
27 namespace DynamoDB
28 {
29 namespace Model
30 {
31 
36  {
37  public:
39  Aws::String SerializePayload() const override;
40 
41  Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
42 
49  inline const Aws::Vector<AttributeDefinition>& GetAttributeDefinitions() const{ return m_attributeDefinitions; }
50 
57  inline void SetAttributeDefinitions(const Aws::Vector<AttributeDefinition>& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions = value; }
58 
65  inline void SetAttributeDefinitions(Aws::Vector<AttributeDefinition>&& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions = value; }
66 
73  inline UpdateTableRequest& WithAttributeDefinitions(const Aws::Vector<AttributeDefinition>& value) { SetAttributeDefinitions(value); return *this;}
74 
81  inline UpdateTableRequest& WithAttributeDefinitions(Aws::Vector<AttributeDefinition>&& value) { SetAttributeDefinitions(value); return *this;}
82 
89  inline UpdateTableRequest& AddAttributeDefinitions(const AttributeDefinition& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions.push_back(value); return *this; }
90 
97  inline UpdateTableRequest& AddAttributeDefinitions(AttributeDefinition&& value) { m_attributeDefinitionsHasBeenSet = true; m_attributeDefinitions.push_back(value); return *this; }
98 
102  inline const Aws::String& GetTableName() const{ return m_tableName; }
103 
107  inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; }
108 
112  inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = value; }
113 
117  inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); }
118 
122  inline UpdateTableRequest& WithTableName(const Aws::String& value) { SetTableName(value); return *this;}
123 
127  inline UpdateTableRequest& WithTableName(Aws::String&& value) { SetTableName(value); return *this;}
128 
132  inline UpdateTableRequest& WithTableName(const char* value) { SetTableName(value); return *this;}
133 
134 
135  inline const ProvisionedThroughput& GetProvisionedThroughput() const{ return m_provisionedThroughput; }
136 
137 
138  inline void SetProvisionedThroughput(const ProvisionedThroughput& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; }
139 
140 
141  inline void SetProvisionedThroughput(ProvisionedThroughput&& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; }
142 
143 
144  inline UpdateTableRequest& WithProvisionedThroughput(const ProvisionedThroughput& value) { SetProvisionedThroughput(value); return *this;}
145 
146 
147  inline UpdateTableRequest& WithProvisionedThroughput(ProvisionedThroughput&& value) { SetProvisionedThroughput(value); return *this;}
148 
159  inline const Aws::Vector<GlobalSecondaryIndexUpdate>& GetGlobalSecondaryIndexUpdates() const{ return m_globalSecondaryIndexUpdates; }
160 
171  inline void SetGlobalSecondaryIndexUpdates(const Aws::Vector<GlobalSecondaryIndexUpdate>& value) { m_globalSecondaryIndexUpdatesHasBeenSet = true; m_globalSecondaryIndexUpdates = value; }
172 
183  inline void SetGlobalSecondaryIndexUpdates(Aws::Vector<GlobalSecondaryIndexUpdate>&& value) { m_globalSecondaryIndexUpdatesHasBeenSet = true; m_globalSecondaryIndexUpdates = value; }
184 
195  inline UpdateTableRequest& WithGlobalSecondaryIndexUpdates(const Aws::Vector<GlobalSecondaryIndexUpdate>& value) { SetGlobalSecondaryIndexUpdates(value); return *this;}
196 
207  inline UpdateTableRequest& WithGlobalSecondaryIndexUpdates(Aws::Vector<GlobalSecondaryIndexUpdate>&& value) { SetGlobalSecondaryIndexUpdates(value); return *this;}
208 
219  inline UpdateTableRequest& AddGlobalSecondaryIndexUpdates(const GlobalSecondaryIndexUpdate& value) { m_globalSecondaryIndexUpdatesHasBeenSet = true; m_globalSecondaryIndexUpdates.push_back(value); return *this; }
220 
231  inline UpdateTableRequest& AddGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdate&& value) { m_globalSecondaryIndexUpdatesHasBeenSet = true; m_globalSecondaryIndexUpdates.push_back(value); return *this; }
232 
239  inline const StreamSpecification& GetStreamSpecification() const{ return m_streamSpecification; }
240 
247  inline void SetStreamSpecification(const StreamSpecification& value) { m_streamSpecificationHasBeenSet = true; m_streamSpecification = value; }
248 
255  inline void SetStreamSpecification(StreamSpecification&& value) { m_streamSpecificationHasBeenSet = true; m_streamSpecification = value; }
256 
263  inline UpdateTableRequest& WithStreamSpecification(const StreamSpecification& value) { SetStreamSpecification(value); return *this;}
264 
271  inline UpdateTableRequest& WithStreamSpecification(StreamSpecification&& value) { SetStreamSpecification(value); return *this;}
272 
273  private:
274  Aws::Vector<AttributeDefinition> m_attributeDefinitions;
275  bool m_attributeDefinitionsHasBeenSet;
276  Aws::String m_tableName;
277  bool m_tableNameHasBeenSet;
278  ProvisionedThroughput m_provisionedThroughput;
279  bool m_provisionedThroughputHasBeenSet;
280  Aws::Vector<GlobalSecondaryIndexUpdate> m_globalSecondaryIndexUpdates;
281  bool m_globalSecondaryIndexUpdatesHasBeenSet;
282  StreamSpecification m_streamSpecification;
283  bool m_streamSpecificationHasBeenSet;
284  };
285 
286 } // namespace Model
287 } // namespace DynamoDB
288 } // namespace Aws
UpdateTableRequest & WithStreamSpecification(const StreamSpecification &value)
UpdateTableRequest & WithStreamSpecification(StreamSpecification &&value)
void SetProvisionedThroughput(ProvisionedThroughput &&value)
const Aws::Vector< AttributeDefinition > & GetAttributeDefinitions() const
const ProvisionedThroughput & GetProvisionedThroughput() const
void SetGlobalSecondaryIndexUpdates(const Aws::Vector< GlobalSecondaryIndexUpdate > &value)
UpdateTableRequest & WithTableName(const Aws::String &value)
UpdateTableRequest & WithProvisionedThroughput(const ProvisionedThroughput &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:63
const StreamSpecification & GetStreamSpecification() const
#define AWS_DYNAMODB_API
UpdateTableRequest & WithTableName(const char *value)
const Aws::Vector< GlobalSecondaryIndexUpdate > & GetGlobalSecondaryIndexUpdates() const
UpdateTableRequest & WithAttributeDefinitions(Aws::Vector< AttributeDefinition > &&value)
void SetAttributeDefinitions(Aws::Vector< AttributeDefinition > &&value)
UpdateTableRequest & AddGlobalSecondaryIndexUpdates(const GlobalSecondaryIndexUpdate &value)
UpdateTableRequest & WithGlobalSecondaryIndexUpdates(const Aws::Vector< GlobalSecondaryIndexUpdate > &value)
UpdateTableRequest & WithProvisionedThroughput(ProvisionedThroughput &&value)
UpdateTableRequest & AddGlobalSecondaryIndexUpdates(GlobalSecondaryIndexUpdate &&value)
const Aws::String & GetTableName() const
void SetAttributeDefinitions(const Aws::Vector< AttributeDefinition > &value)
void SetStreamSpecification(StreamSpecification &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
UpdateTableRequest & WithTableName(Aws::String &&value)
void SetGlobalSecondaryIndexUpdates(Aws::Vector< GlobalSecondaryIndexUpdate > &&value)
UpdateTableRequest & AddAttributeDefinitions(AttributeDefinition &&value)
void SetProvisionedThroughput(const ProvisionedThroughput &value)
void SetTableName(const Aws::String &value)
UpdateTableRequest & AddAttributeDefinitions(const AttributeDefinition &value)
UpdateTableRequest & WithGlobalSecondaryIndexUpdates(Aws::Vector< GlobalSecondaryIndexUpdate > &&value)
JSON (JavaScript Object Notation).
UpdateTableRequest & WithAttributeDefinitions(const Aws::Vector< AttributeDefinition > &value)
void SetStreamSpecification(const StreamSpecification &value)