AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Record.h
1
6#pragma once
7#include <aws/kinesis/Kinesis_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/Array.h>
11#include <aws/kinesis/model/EncryptionType.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 Kinesis
25{
26namespace Model
27{
28
35 class Record
36 {
37 public:
38 AWS_KINESIS_API Record() = default;
39 AWS_KINESIS_API Record(Aws::Utils::Json::JsonView jsonValue);
40 AWS_KINESIS_API Record& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetSequenceNumber() const { return m_sequenceNumber; }
49 inline bool SequenceNumberHasBeenSet() const { return m_sequenceNumberHasBeenSet; }
50 template<typename SequenceNumberT = Aws::String>
51 void SetSequenceNumber(SequenceNumberT&& value) { m_sequenceNumberHasBeenSet = true; m_sequenceNumber = std::forward<SequenceNumberT>(value); }
52 template<typename SequenceNumberT = Aws::String>
53 Record& WithSequenceNumber(SequenceNumberT&& value) { SetSequenceNumber(std::forward<SequenceNumberT>(value)); return *this;}
55
57
60 inline const Aws::Utils::DateTime& GetApproximateArrivalTimestamp() const { return m_approximateArrivalTimestamp; }
61 inline bool ApproximateArrivalTimestampHasBeenSet() const { return m_approximateArrivalTimestampHasBeenSet; }
62 template<typename ApproximateArrivalTimestampT = Aws::Utils::DateTime>
63 void SetApproximateArrivalTimestamp(ApproximateArrivalTimestampT&& value) { m_approximateArrivalTimestampHasBeenSet = true; m_approximateArrivalTimestamp = std::forward<ApproximateArrivalTimestampT>(value); }
64 template<typename ApproximateArrivalTimestampT = Aws::Utils::DateTime>
65 Record& WithApproximateArrivalTimestamp(ApproximateArrivalTimestampT&& value) { SetApproximateArrivalTimestamp(std::forward<ApproximateArrivalTimestampT>(value)); return *this;}
67
69
76 inline const Aws::Utils::ByteBuffer& GetData() const { return m_data; }
77 inline bool DataHasBeenSet() const { return m_dataHasBeenSet; }
78 template<typename DataT = Aws::Utils::ByteBuffer>
79 void SetData(DataT&& value) { m_dataHasBeenSet = true; m_data = std::forward<DataT>(value); }
80 template<typename DataT = Aws::Utils::ByteBuffer>
81 Record& WithData(DataT&& value) { SetData(std::forward<DataT>(value)); return *this;}
83
85
88 inline const Aws::String& GetPartitionKey() const { return m_partitionKey; }
89 inline bool PartitionKeyHasBeenSet() const { return m_partitionKeyHasBeenSet; }
90 template<typename PartitionKeyT = Aws::String>
91 void SetPartitionKey(PartitionKeyT&& value) { m_partitionKeyHasBeenSet = true; m_partitionKey = std::forward<PartitionKeyT>(value); }
92 template<typename PartitionKeyT = Aws::String>
93 Record& WithPartitionKey(PartitionKeyT&& value) { SetPartitionKey(std::forward<PartitionKeyT>(value)); return *this;}
95
97
104 inline EncryptionType GetEncryptionType() const { return m_encryptionType; }
105 inline bool EncryptionTypeHasBeenSet() const { return m_encryptionTypeHasBeenSet; }
106 inline void SetEncryptionType(EncryptionType value) { m_encryptionTypeHasBeenSet = true; m_encryptionType = value; }
107 inline Record& WithEncryptionType(EncryptionType value) { SetEncryptionType(value); return *this;}
109 private:
110
111 Aws::String m_sequenceNumber;
112 bool m_sequenceNumberHasBeenSet = false;
113
114 Aws::Utils::DateTime m_approximateArrivalTimestamp{};
115 bool m_approximateArrivalTimestampHasBeenSet = false;
116
117 Aws::Utils::ByteBuffer m_data{};
118 bool m_dataHasBeenSet = false;
119
120 Aws::String m_partitionKey;
121 bool m_partitionKeyHasBeenSet = false;
122
123 EncryptionType m_encryptionType{EncryptionType::NOT_SET};
124 bool m_encryptionTypeHasBeenSet = false;
125 };
126
127} // namespace Model
128} // namespace Kinesis
129} // namespace Aws
Record & WithSequenceNumber(SequenceNumberT &&value)
Definition Record.h:53
AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Utils::ByteBuffer & GetData() const
Definition Record.h:76
void SetData(DataT &&value)
Definition Record.h:79
Record & WithApproximateArrivalTimestamp(ApproximateArrivalTimestampT &&value)
Definition Record.h:65
void SetSequenceNumber(SequenceNumberT &&value)
Definition Record.h:51
void SetPartitionKey(PartitionKeyT &&value)
Definition Record.h:91
const Aws::Utils::DateTime & GetApproximateArrivalTimestamp() const
Definition Record.h:60
AWS_KINESIS_API Record & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetApproximateArrivalTimestamp(ApproximateArrivalTimestampT &&value)
Definition Record.h:63
AWS_KINESIS_API Record(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetPartitionKey() const
Definition Record.h:88
bool EncryptionTypeHasBeenSet() const
Definition Record.h:105
bool SequenceNumberHasBeenSet() const
Definition Record.h:49
Record & WithEncryptionType(EncryptionType value)
Definition Record.h:107
EncryptionType GetEncryptionType() const
Definition Record.h:104
bool PartitionKeyHasBeenSet() const
Definition Record.h:89
AWS_KINESIS_API Record()=default
const Aws::String & GetSequenceNumber() const
Definition Record.h:48
bool ApproximateArrivalTimestampHasBeenSet() const
Definition Record.h:61
void SetEncryptionType(EncryptionType value)
Definition Record.h:106
Record & WithPartitionKey(PartitionKeyT &&value)
Definition Record.h:93
bool DataHasBeenSet() const
Definition Record.h:77
Record & WithData(DataT &&value)
Definition Record.h:81
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue