AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
StreamRecord.h
1
6#pragma once
7#include <aws/dynamodbstreams/DynamoDBStreams_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/dynamodbstreams/model/StreamViewType.h>
12#include <aws/dynamodbstreams/model/AttributeValue.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace DynamoDBStreams
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_DYNAMODBSTREAMS_API StreamRecord() = default;
40 AWS_DYNAMODBSTREAMS_API StreamRecord(Aws::Utils::Json::JsonView jsonValue);
41 AWS_DYNAMODBSTREAMS_API StreamRecord& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_DYNAMODBSTREAMS_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
51 inline const Aws::Utils::DateTime& GetApproximateCreationDateTime() const { return m_approximateCreationDateTime; }
52 inline bool ApproximateCreationDateTimeHasBeenSet() const { return m_approximateCreationDateTimeHasBeenSet; }
53 template<typename ApproximateCreationDateTimeT = Aws::Utils::DateTime>
54 void SetApproximateCreationDateTime(ApproximateCreationDateTimeT&& value) { m_approximateCreationDateTimeHasBeenSet = true; m_approximateCreationDateTime = std::forward<ApproximateCreationDateTimeT>(value); }
55 template<typename ApproximateCreationDateTimeT = Aws::Utils::DateTime>
56 StreamRecord& WithApproximateCreationDateTime(ApproximateCreationDateTimeT&& value) { SetApproximateCreationDateTime(std::forward<ApproximateCreationDateTimeT>(value)); return *this;}
58
60
63 inline const Aws::Map<Aws::String, AttributeValue>& GetKeys() const { return m_keys; }
64 inline bool KeysHasBeenSet() const { return m_keysHasBeenSet; }
65 template<typename KeysT = Aws::Map<Aws::String, AttributeValue>>
66 void SetKeys(KeysT&& value) { m_keysHasBeenSet = true; m_keys = std::forward<KeysT>(value); }
67 template<typename KeysT = Aws::Map<Aws::String, AttributeValue>>
68 StreamRecord& WithKeys(KeysT&& value) { SetKeys(std::forward<KeysT>(value)); return *this;}
69 template<typename KeysKeyT = Aws::String, typename KeysValueT = AttributeValue>
70 StreamRecord& AddKeys(KeysKeyT&& key, KeysValueT&& value) {
71 m_keysHasBeenSet = true; m_keys.emplace(std::forward<KeysKeyT>(key), std::forward<KeysValueT>(value)); return *this;
72 }
74
76
79 inline const Aws::Map<Aws::String, AttributeValue>& GetNewImage() const { return m_newImage; }
80 inline bool NewImageHasBeenSet() const { return m_newImageHasBeenSet; }
81 template<typename NewImageT = Aws::Map<Aws::String, AttributeValue>>
82 void SetNewImage(NewImageT&& value) { m_newImageHasBeenSet = true; m_newImage = std::forward<NewImageT>(value); }
83 template<typename NewImageT = Aws::Map<Aws::String, AttributeValue>>
84 StreamRecord& WithNewImage(NewImageT&& value) { SetNewImage(std::forward<NewImageT>(value)); return *this;}
85 template<typename NewImageKeyT = Aws::String, typename NewImageValueT = AttributeValue>
86 StreamRecord& AddNewImage(NewImageKeyT&& key, NewImageValueT&& value) {
87 m_newImageHasBeenSet = true; m_newImage.emplace(std::forward<NewImageKeyT>(key), std::forward<NewImageValueT>(value)); return *this;
88 }
90
92
95 inline const Aws::Map<Aws::String, AttributeValue>& GetOldImage() const { return m_oldImage; }
96 inline bool OldImageHasBeenSet() const { return m_oldImageHasBeenSet; }
97 template<typename OldImageT = Aws::Map<Aws::String, AttributeValue>>
98 void SetOldImage(OldImageT&& value) { m_oldImageHasBeenSet = true; m_oldImage = std::forward<OldImageT>(value); }
99 template<typename OldImageT = Aws::Map<Aws::String, AttributeValue>>
100 StreamRecord& WithOldImage(OldImageT&& value) { SetOldImage(std::forward<OldImageT>(value)); return *this;}
101 template<typename OldImageKeyT = Aws::String, typename OldImageValueT = AttributeValue>
102 StreamRecord& AddOldImage(OldImageKeyT&& key, OldImageValueT&& value) {
103 m_oldImageHasBeenSet = true; m_oldImage.emplace(std::forward<OldImageKeyT>(key), std::forward<OldImageValueT>(value)); return *this;
104 }
106
108
111 inline const Aws::String& GetSequenceNumber() const { return m_sequenceNumber; }
112 inline bool SequenceNumberHasBeenSet() const { return m_sequenceNumberHasBeenSet; }
113 template<typename SequenceNumberT = Aws::String>
114 void SetSequenceNumber(SequenceNumberT&& value) { m_sequenceNumberHasBeenSet = true; m_sequenceNumber = std::forward<SequenceNumberT>(value); }
115 template<typename SequenceNumberT = Aws::String>
116 StreamRecord& WithSequenceNumber(SequenceNumberT&& value) { SetSequenceNumber(std::forward<SequenceNumberT>(value)); return *this;}
118
120
123 inline long long GetSizeBytes() const { return m_sizeBytes; }
124 inline bool SizeBytesHasBeenSet() const { return m_sizeBytesHasBeenSet; }
125 inline void SetSizeBytes(long long value) { m_sizeBytesHasBeenSet = true; m_sizeBytes = value; }
126 inline StreamRecord& WithSizeBytes(long long value) { SetSizeBytes(value); return *this;}
128
130
139 inline StreamViewType GetStreamViewType() const { return m_streamViewType; }
140 inline bool StreamViewTypeHasBeenSet() const { return m_streamViewTypeHasBeenSet; }
141 inline void SetStreamViewType(StreamViewType value) { m_streamViewTypeHasBeenSet = true; m_streamViewType = value; }
142 inline StreamRecord& WithStreamViewType(StreamViewType value) { SetStreamViewType(value); return *this;}
144 private:
145
146 Aws::Utils::DateTime m_approximateCreationDateTime{};
147 bool m_approximateCreationDateTimeHasBeenSet = false;
148
150 bool m_keysHasBeenSet = false;
151
153 bool m_newImageHasBeenSet = false;
154
156 bool m_oldImageHasBeenSet = false;
157
158 Aws::String m_sequenceNumber;
159 bool m_sequenceNumberHasBeenSet = false;
160
161 long long m_sizeBytes{0};
162 bool m_sizeBytesHasBeenSet = false;
163
164 StreamViewType m_streamViewType{StreamViewType::NOT_SET};
165 bool m_streamViewTypeHasBeenSet = false;
166 };
167
168} // namespace Model
169} // namespace DynamoDBStreams
170} // namespace Aws
AWS_DYNAMODBSTREAMS_API StreamRecord & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetStreamViewType(StreamViewType value)
StreamRecord & WithNewImage(NewImageT &&value)
AWS_DYNAMODBSTREAMS_API StreamRecord()=default
const Aws::Map< Aws::String, AttributeValue > & GetNewImage() const
StreamRecord & AddNewImage(NewImageKeyT &&key, NewImageValueT &&value)
StreamRecord & AddKeys(KeysKeyT &&key, KeysValueT &&value)
StreamRecord & WithKeys(KeysT &&value)
void SetApproximateCreationDateTime(ApproximateCreationDateTimeT &&value)
const Aws::Map< Aws::String, AttributeValue > & GetKeys() const
StreamRecord & WithStreamViewType(StreamViewType value)
StreamRecord & WithSizeBytes(long long value)
StreamRecord & WithSequenceNumber(SequenceNumberT &&value)
const Aws::Map< Aws::String, AttributeValue > & GetOldImage() const
StreamRecord & AddOldImage(OldImageKeyT &&key, OldImageValueT &&value)
StreamRecord & WithApproximateCreationDateTime(ApproximateCreationDateTimeT &&value)
void SetSequenceNumber(SequenceNumberT &&value)
AWS_DYNAMODBSTREAMS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_DYNAMODBSTREAMS_API StreamRecord(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetSequenceNumber() const
const Aws::Utils::DateTime & GetApproximateCreationDateTime() const
StreamRecord & WithOldImage(OldImageT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue