AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
StartingPosition.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/kinesis/Kinesis_EXPORTS.h>
10#include <aws/kinesis/model/ShardIteratorType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Kinesis {
22namespace Model {
23
31 public:
32 AWS_KINESIS_API StartingPosition() = default;
33 AWS_KINESIS_API StartingPosition(Aws::Utils::Json::JsonView jsonValue);
35 AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
51 inline ShardIteratorType GetType() const { return m_type; }
52 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
53 inline void SetType(ShardIteratorType value) {
54 m_typeHasBeenSet = true;
55 m_type = value;
56 }
58 SetType(value);
59 return *this;
60 }
62
64
69 inline const Aws::String& GetSequenceNumber() const { return m_sequenceNumber; }
70 inline bool SequenceNumberHasBeenSet() const { return m_sequenceNumberHasBeenSet; }
71 template <typename SequenceNumberT = Aws::String>
72 void SetSequenceNumber(SequenceNumberT&& value) {
73 m_sequenceNumberHasBeenSet = true;
74 m_sequenceNumber = std::forward<SequenceNumberT>(value);
75 }
76 template <typename SequenceNumberT = Aws::String>
77 StartingPosition& WithSequenceNumber(SequenceNumberT&& value) {
78 SetSequenceNumber(std::forward<SequenceNumberT>(value));
79 return *this;
80 }
82
84
94 inline const Aws::Utils::DateTime& GetTimestamp() const { return m_timestamp; }
95 inline bool TimestampHasBeenSet() const { return m_timestampHasBeenSet; }
96 template <typename TimestampT = Aws::Utils::DateTime>
97 void SetTimestamp(TimestampT&& value) {
98 m_timestampHasBeenSet = true;
99 m_timestamp = std::forward<TimestampT>(value);
100 }
101 template <typename TimestampT = Aws::Utils::DateTime>
102 StartingPosition& WithTimestamp(TimestampT&& value) {
103 SetTimestamp(std::forward<TimestampT>(value));
104 return *this;
105 }
107 private:
109
110 Aws::String m_sequenceNumber;
111
112 Aws::Utils::DateTime m_timestamp{};
113 bool m_typeHasBeenSet = false;
114 bool m_sequenceNumberHasBeenSet = false;
115 bool m_timestampHasBeenSet = false;
116};
117
118} // namespace Model
119} // namespace Kinesis
120} // namespace Aws
const Aws::String & GetSequenceNumber() const
void SetType(ShardIteratorType value)
const Aws::Utils::DateTime & GetTimestamp() const
AWS_KINESIS_API StartingPosition()=default
StartingPosition & WithType(ShardIteratorType value)
StartingPosition & WithSequenceNumber(SequenceNumberT &&value)
void SetSequenceNumber(SequenceNumberT &&value)
StartingPosition & WithTimestamp(TimestampT &&value)
AWS_KINESIS_API StartingPosition(Aws::Utils::Json::JsonView jsonValue)
void SetTimestamp(TimestampT &&value)
AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_KINESIS_API StartingPosition & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue