AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SourceTableFeatureDetails.h
1
6#pragma once
7#include <aws/dynamodb/DynamoDB_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dynamodb/model/StreamSpecification.h>
10#include <aws/dynamodb/model/TimeToLiveDescription.h>
11#include <aws/dynamodb/model/SSEDescription.h>
12#include <aws/dynamodb/model/LocalSecondaryIndexInfo.h>
13#include <aws/dynamodb/model/GlobalSecondaryIndexInfo.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace DynamoDB
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_DYNAMODB_API SourceTableFeatureDetails() = default;
43 AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
52 inline const Aws::Vector<LocalSecondaryIndexInfo>& GetLocalSecondaryIndexes() const { return m_localSecondaryIndexes; }
53 inline bool LocalSecondaryIndexesHasBeenSet() const { return m_localSecondaryIndexesHasBeenSet; }
54 template<typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndexInfo>>
55 void SetLocalSecondaryIndexes(LocalSecondaryIndexesT&& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes = std::forward<LocalSecondaryIndexesT>(value); }
56 template<typename LocalSecondaryIndexesT = Aws::Vector<LocalSecondaryIndexInfo>>
57 SourceTableFeatureDetails& WithLocalSecondaryIndexes(LocalSecondaryIndexesT&& value) { SetLocalSecondaryIndexes(std::forward<LocalSecondaryIndexesT>(value)); return *this;}
58 template<typename LocalSecondaryIndexesT = LocalSecondaryIndexInfo>
59 SourceTableFeatureDetails& AddLocalSecondaryIndexes(LocalSecondaryIndexesT&& value) { m_localSecondaryIndexesHasBeenSet = true; m_localSecondaryIndexes.emplace_back(std::forward<LocalSecondaryIndexesT>(value)); return *this; }
61
63
68 inline const Aws::Vector<GlobalSecondaryIndexInfo>& GetGlobalSecondaryIndexes() const { return m_globalSecondaryIndexes; }
69 inline bool GlobalSecondaryIndexesHasBeenSet() const { return m_globalSecondaryIndexesHasBeenSet; }
70 template<typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndexInfo>>
71 void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes = std::forward<GlobalSecondaryIndexesT>(value); }
72 template<typename GlobalSecondaryIndexesT = Aws::Vector<GlobalSecondaryIndexInfo>>
73 SourceTableFeatureDetails& WithGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { SetGlobalSecondaryIndexes(std::forward<GlobalSecondaryIndexesT>(value)); return *this;}
74 template<typename GlobalSecondaryIndexesT = GlobalSecondaryIndexInfo>
75 SourceTableFeatureDetails& AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT&& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.emplace_back(std::forward<GlobalSecondaryIndexesT>(value)); return *this; }
77
79
82 inline const StreamSpecification& GetStreamDescription() const { return m_streamDescription; }
83 inline bool StreamDescriptionHasBeenSet() const { return m_streamDescriptionHasBeenSet; }
84 template<typename StreamDescriptionT = StreamSpecification>
85 void SetStreamDescription(StreamDescriptionT&& value) { m_streamDescriptionHasBeenSet = true; m_streamDescription = std::forward<StreamDescriptionT>(value); }
86 template<typename StreamDescriptionT = StreamSpecification>
87 SourceTableFeatureDetails& WithStreamDescription(StreamDescriptionT&& value) { SetStreamDescription(std::forward<StreamDescriptionT>(value)); return *this;}
89
91
94 inline const TimeToLiveDescription& GetTimeToLiveDescription() const { return m_timeToLiveDescription; }
95 inline bool TimeToLiveDescriptionHasBeenSet() const { return m_timeToLiveDescriptionHasBeenSet; }
96 template<typename TimeToLiveDescriptionT = TimeToLiveDescription>
97 void SetTimeToLiveDescription(TimeToLiveDescriptionT&& value) { m_timeToLiveDescriptionHasBeenSet = true; m_timeToLiveDescription = std::forward<TimeToLiveDescriptionT>(value); }
98 template<typename TimeToLiveDescriptionT = TimeToLiveDescription>
99 SourceTableFeatureDetails& WithTimeToLiveDescription(TimeToLiveDescriptionT&& value) { SetTimeToLiveDescription(std::forward<TimeToLiveDescriptionT>(value)); return *this;}
101
103
107 inline const SSEDescription& GetSSEDescription() const { return m_sSEDescription; }
108 inline bool SSEDescriptionHasBeenSet() const { return m_sSEDescriptionHasBeenSet; }
109 template<typename SSEDescriptionT = SSEDescription>
110 void SetSSEDescription(SSEDescriptionT&& value) { m_sSEDescriptionHasBeenSet = true; m_sSEDescription = std::forward<SSEDescriptionT>(value); }
111 template<typename SSEDescriptionT = SSEDescription>
112 SourceTableFeatureDetails& WithSSEDescription(SSEDescriptionT&& value) { SetSSEDescription(std::forward<SSEDescriptionT>(value)); return *this;}
114 private:
115
116 Aws::Vector<LocalSecondaryIndexInfo> m_localSecondaryIndexes;
117 bool m_localSecondaryIndexesHasBeenSet = false;
118
119 Aws::Vector<GlobalSecondaryIndexInfo> m_globalSecondaryIndexes;
120 bool m_globalSecondaryIndexesHasBeenSet = false;
121
122 StreamSpecification m_streamDescription;
123 bool m_streamDescriptionHasBeenSet = false;
124
125 TimeToLiveDescription m_timeToLiveDescription;
126 bool m_timeToLiveDescriptionHasBeenSet = false;
127
128 SSEDescription m_sSEDescription;
129 bool m_sSEDescriptionHasBeenSet = false;
130 };
131
132} // namespace Model
133} // namespace DynamoDB
134} // namespace Aws
SourceTableFeatureDetails & WithStreamDescription(StreamDescriptionT &&value)
SourceTableFeatureDetails & WithTimeToLiveDescription(TimeToLiveDescriptionT &&value)
SourceTableFeatureDetails & AddGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
const Aws::Vector< LocalSecondaryIndexInfo > & GetLocalSecondaryIndexes() const
void SetGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
const Aws::Vector< GlobalSecondaryIndexInfo > & GetGlobalSecondaryIndexes() const
SourceTableFeatureDetails & WithLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
SourceTableFeatureDetails & WithGlobalSecondaryIndexes(GlobalSecondaryIndexesT &&value)
void SetTimeToLiveDescription(TimeToLiveDescriptionT &&value)
const StreamSpecification & GetStreamDescription() const
void SetLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
AWS_DYNAMODB_API SourceTableFeatureDetails()=default
const TimeToLiveDescription & GetTimeToLiveDescription() const
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_DYNAMODB_API SourceTableFeatureDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
SourceTableFeatureDetails & AddLocalSecondaryIndexes(LocalSecondaryIndexesT &&value)
AWS_DYNAMODB_API SourceTableFeatureDetails(Aws::Utils::Json::JsonView jsonValue)
SourceTableFeatureDetails & WithSSEDescription(SSEDescriptionT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue