AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
LocalSecondaryIndexInfo.h
1
6#pragma once
7#include <aws/dynamodb/DynamoDB_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/dynamodb/model/Projection.h>
11#include <aws/dynamodb/model/KeySchemaElement.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace DynamoDB
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_DYNAMODB_API LocalSecondaryIndexInfo();
41 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetIndexName() const{ return m_indexName; }
49 inline bool IndexNameHasBeenSet() const { return m_indexNameHasBeenSet; }
50 inline void SetIndexName(const Aws::String& value) { m_indexNameHasBeenSet = true; m_indexName = value; }
51 inline void SetIndexName(Aws::String&& value) { m_indexNameHasBeenSet = true; m_indexName = std::move(value); }
52 inline void SetIndexName(const char* value) { m_indexNameHasBeenSet = true; m_indexName.assign(value); }
53 inline LocalSecondaryIndexInfo& WithIndexName(const Aws::String& value) { SetIndexName(value); return *this;}
54 inline LocalSecondaryIndexInfo& WithIndexName(Aws::String&& value) { SetIndexName(std::move(value)); return *this;}
55 inline LocalSecondaryIndexInfo& WithIndexName(const char* value) { SetIndexName(value); return *this;}
57
59
71 inline const Aws::Vector<KeySchemaElement>& GetKeySchema() const{ return m_keySchema; }
72 inline bool KeySchemaHasBeenSet() const { return m_keySchemaHasBeenSet; }
73 inline void SetKeySchema(const Aws::Vector<KeySchemaElement>& value) { m_keySchemaHasBeenSet = true; m_keySchema = value; }
74 inline void SetKeySchema(Aws::Vector<KeySchemaElement>&& value) { m_keySchemaHasBeenSet = true; m_keySchema = std::move(value); }
76 inline LocalSecondaryIndexInfo& WithKeySchema(Aws::Vector<KeySchemaElement>&& value) { SetKeySchema(std::move(value)); return *this;}
77 inline LocalSecondaryIndexInfo& AddKeySchema(const KeySchemaElement& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(value); return *this; }
78 inline LocalSecondaryIndexInfo& AddKeySchema(KeySchemaElement&& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(std::move(value)); return *this; }
80
82
87 inline const Projection& GetProjection() const{ return m_projection; }
88 inline bool ProjectionHasBeenSet() const { return m_projectionHasBeenSet; }
89 inline void SetProjection(const Projection& value) { m_projectionHasBeenSet = true; m_projection = value; }
90 inline void SetProjection(Projection&& value) { m_projectionHasBeenSet = true; m_projection = std::move(value); }
91 inline LocalSecondaryIndexInfo& WithProjection(const Projection& value) { SetProjection(value); return *this;}
92 inline LocalSecondaryIndexInfo& WithProjection(Projection&& value) { SetProjection(std::move(value)); return *this;}
94 private:
95
96 Aws::String m_indexName;
97 bool m_indexNameHasBeenSet = false;
98
100 bool m_keySchemaHasBeenSet = false;
101
102 Projection m_projection;
103 bool m_projectionHasBeenSet = false;
104 };
105
106} // namespace Model
107} // namespace DynamoDB
108} // namespace Aws
LocalSecondaryIndexInfo & WithIndexName(const char *value)
LocalSecondaryIndexInfo & WithProjection(Projection &&value)
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
LocalSecondaryIndexInfo & WithKeySchema(const Aws::Vector< KeySchemaElement > &value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
void SetKeySchema(const Aws::Vector< KeySchemaElement > &value)
LocalSecondaryIndexInfo & AddKeySchema(KeySchemaElement &&value)
LocalSecondaryIndexInfo & AddKeySchema(const KeySchemaElement &value)
void SetKeySchema(Aws::Vector< KeySchemaElement > &&value)
LocalSecondaryIndexInfo & WithIndexName(const Aws::String &value)
AWS_DYNAMODB_API LocalSecondaryIndexInfo(Aws::Utils::Json::JsonView jsonValue)
LocalSecondaryIndexInfo & WithIndexName(Aws::String &&value)
LocalSecondaryIndexInfo & WithKeySchema(Aws::Vector< KeySchemaElement > &&value)
AWS_DYNAMODB_API LocalSecondaryIndexInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
LocalSecondaryIndexInfo & WithProjection(const Projection &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue