AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
StreamDescription.h
1
6#pragma once
7#include <aws/dynamodbstreams/DynamoDBStreams_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/dynamodbstreams/model/StreamStatus.h>
10#include <aws/dynamodbstreams/model/StreamViewType.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/dynamodbstreams/model/KeySchemaElement.h>
14#include <aws/dynamodbstreams/model/Shard.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace DynamoDBStreams
28{
29namespace Model
30{
31
39 {
40 public:
41 AWS_DYNAMODBSTREAMS_API StreamDescription() = default;
42 AWS_DYNAMODBSTREAMS_API StreamDescription(Aws::Utils::Json::JsonView jsonValue);
43 AWS_DYNAMODBSTREAMS_API StreamDescription& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_DYNAMODBSTREAMS_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetStreamArn() const { return m_streamArn; }
52 inline bool StreamArnHasBeenSet() const { return m_streamArnHasBeenSet; }
53 template<typename StreamArnT = Aws::String>
54 void SetStreamArn(StreamArnT&& value) { m_streamArnHasBeenSet = true; m_streamArn = std::forward<StreamArnT>(value); }
55 template<typename StreamArnT = Aws::String>
56 StreamDescription& WithStreamArn(StreamArnT&& value) { SetStreamArn(std::forward<StreamArnT>(value)); return *this;}
58
60
69 inline const Aws::String& GetStreamLabel() const { return m_streamLabel; }
70 inline bool StreamLabelHasBeenSet() const { return m_streamLabelHasBeenSet; }
71 template<typename StreamLabelT = Aws::String>
72 void SetStreamLabel(StreamLabelT&& value) { m_streamLabelHasBeenSet = true; m_streamLabel = std::forward<StreamLabelT>(value); }
73 template<typename StreamLabelT = Aws::String>
74 StreamDescription& WithStreamLabel(StreamLabelT&& value) { SetStreamLabel(std::forward<StreamLabelT>(value)); return *this;}
76
78
86 inline StreamStatus GetStreamStatus() const { return m_streamStatus; }
87 inline bool StreamStatusHasBeenSet() const { return m_streamStatusHasBeenSet; }
88 inline void SetStreamStatus(StreamStatus value) { m_streamStatusHasBeenSet = true; m_streamStatus = value; }
89 inline StreamDescription& WithStreamStatus(StreamStatus value) { SetStreamStatus(value); return *this;}
91
93
102 inline StreamViewType GetStreamViewType() const { return m_streamViewType; }
103 inline bool StreamViewTypeHasBeenSet() const { return m_streamViewTypeHasBeenSet; }
104 inline void SetStreamViewType(StreamViewType value) { m_streamViewTypeHasBeenSet = true; m_streamViewType = value; }
107
109
112 inline const Aws::Utils::DateTime& GetCreationRequestDateTime() const { return m_creationRequestDateTime; }
113 inline bool CreationRequestDateTimeHasBeenSet() const { return m_creationRequestDateTimeHasBeenSet; }
114 template<typename CreationRequestDateTimeT = Aws::Utils::DateTime>
115 void SetCreationRequestDateTime(CreationRequestDateTimeT&& value) { m_creationRequestDateTimeHasBeenSet = true; m_creationRequestDateTime = std::forward<CreationRequestDateTimeT>(value); }
116 template<typename CreationRequestDateTimeT = Aws::Utils::DateTime>
117 StreamDescription& WithCreationRequestDateTime(CreationRequestDateTimeT&& value) { SetCreationRequestDateTime(std::forward<CreationRequestDateTimeT>(value)); return *this;}
119
121
124 inline const Aws::String& GetTableName() const { return m_tableName; }
125 inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; }
126 template<typename TableNameT = Aws::String>
127 void SetTableName(TableNameT&& value) { m_tableNameHasBeenSet = true; m_tableName = std::forward<TableNameT>(value); }
128 template<typename TableNameT = Aws::String>
129 StreamDescription& WithTableName(TableNameT&& value) { SetTableName(std::forward<TableNameT>(value)); return *this;}
131
133
136 inline const Aws::Vector<KeySchemaElement>& GetKeySchema() const { return m_keySchema; }
137 inline bool KeySchemaHasBeenSet() const { return m_keySchemaHasBeenSet; }
138 template<typename KeySchemaT = Aws::Vector<KeySchemaElement>>
139 void SetKeySchema(KeySchemaT&& value) { m_keySchemaHasBeenSet = true; m_keySchema = std::forward<KeySchemaT>(value); }
140 template<typename KeySchemaT = Aws::Vector<KeySchemaElement>>
141 StreamDescription& WithKeySchema(KeySchemaT&& value) { SetKeySchema(std::forward<KeySchemaT>(value)); return *this;}
142 template<typename KeySchemaT = KeySchemaElement>
143 StreamDescription& AddKeySchema(KeySchemaT&& value) { m_keySchemaHasBeenSet = true; m_keySchema.emplace_back(std::forward<KeySchemaT>(value)); return *this; }
145
147
150 inline const Aws::Vector<Shard>& GetShards() const { return m_shards; }
151 inline bool ShardsHasBeenSet() const { return m_shardsHasBeenSet; }
152 template<typename ShardsT = Aws::Vector<Shard>>
153 void SetShards(ShardsT&& value) { m_shardsHasBeenSet = true; m_shards = std::forward<ShardsT>(value); }
154 template<typename ShardsT = Aws::Vector<Shard>>
155 StreamDescription& WithShards(ShardsT&& value) { SetShards(std::forward<ShardsT>(value)); return *this;}
156 template<typename ShardsT = Shard>
157 StreamDescription& AddShards(ShardsT&& value) { m_shardsHasBeenSet = true; m_shards.emplace_back(std::forward<ShardsT>(value)); return *this; }
159
161
171 inline const Aws::String& GetLastEvaluatedShardId() const { return m_lastEvaluatedShardId; }
172 inline bool LastEvaluatedShardIdHasBeenSet() const { return m_lastEvaluatedShardIdHasBeenSet; }
173 template<typename LastEvaluatedShardIdT = Aws::String>
174 void SetLastEvaluatedShardId(LastEvaluatedShardIdT&& value) { m_lastEvaluatedShardIdHasBeenSet = true; m_lastEvaluatedShardId = std::forward<LastEvaluatedShardIdT>(value); }
175 template<typename LastEvaluatedShardIdT = Aws::String>
176 StreamDescription& WithLastEvaluatedShardId(LastEvaluatedShardIdT&& value) { SetLastEvaluatedShardId(std::forward<LastEvaluatedShardIdT>(value)); return *this;}
178 private:
179
180 Aws::String m_streamArn;
181 bool m_streamArnHasBeenSet = false;
182
183 Aws::String m_streamLabel;
184 bool m_streamLabelHasBeenSet = false;
185
186 StreamStatus m_streamStatus{StreamStatus::NOT_SET};
187 bool m_streamStatusHasBeenSet = false;
188
189 StreamViewType m_streamViewType{StreamViewType::NOT_SET};
190 bool m_streamViewTypeHasBeenSet = false;
191
192 Aws::Utils::DateTime m_creationRequestDateTime{};
193 bool m_creationRequestDateTimeHasBeenSet = false;
194
195 Aws::String m_tableName;
196 bool m_tableNameHasBeenSet = false;
197
199 bool m_keySchemaHasBeenSet = false;
200
201 Aws::Vector<Shard> m_shards;
202 bool m_shardsHasBeenSet = false;
203
204 Aws::String m_lastEvaluatedShardId;
205 bool m_lastEvaluatedShardIdHasBeenSet = false;
206 };
207
208} // namespace Model
209} // namespace DynamoDBStreams
210} // namespace Aws
StreamDescription & WithStreamArn(StreamArnT &&value)
const Aws::Utils::DateTime & GetCreationRequestDateTime() const
StreamDescription & WithCreationRequestDateTime(CreationRequestDateTimeT &&value)
void SetCreationRequestDateTime(CreationRequestDateTimeT &&value)
void SetLastEvaluatedShardId(LastEvaluatedShardIdT &&value)
AWS_DYNAMODBSTREAMS_API Aws::Utils::Json::JsonValue Jsonize() const
StreamDescription & AddKeySchema(KeySchemaT &&value)
AWS_DYNAMODBSTREAMS_API StreamDescription(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< KeySchemaElement > & GetKeySchema() const
StreamDescription & WithKeySchema(KeySchemaT &&value)
StreamDescription & AddShards(ShardsT &&value)
const Aws::Vector< Shard > & GetShards() const
StreamDescription & WithLastEvaluatedShardId(LastEvaluatedShardIdT &&value)
StreamDescription & WithTableName(TableNameT &&value)
StreamDescription & WithStreamStatus(StreamStatus value)
StreamDescription & WithStreamLabel(StreamLabelT &&value)
StreamDescription & WithShards(ShardsT &&value)
StreamDescription & WithStreamViewType(StreamViewType value)
AWS_DYNAMODBSTREAMS_API StreamDescription()=default
AWS_DYNAMODBSTREAMS_API StreamDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue