AWS SDK for C++

AWS SDK for C++ Version 1.11.760

Loading...
Searching...
No Matches
Shard.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/kinesis/Kinesis_EXPORTS.h>
9#include <aws/kinesis/model/HashKeyRange.h>
10#include <aws/kinesis/model/SequenceNumberRange.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
30class Shard {
31 public:
32 AWS_KINESIS_API Shard() = default;
33 AWS_KINESIS_API Shard(Aws::Utils::Json::JsonView jsonValue);
34 AWS_KINESIS_API Shard& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetShardId() const { return m_shardId; }
42 inline bool ShardIdHasBeenSet() const { return m_shardIdHasBeenSet; }
43 template <typename ShardIdT = Aws::String>
44 void SetShardId(ShardIdT&& value) {
45 m_shardIdHasBeenSet = true;
46 m_shardId = std::forward<ShardIdT>(value);
47 }
48 template <typename ShardIdT = Aws::String>
49 Shard& WithShardId(ShardIdT&& value) {
50 SetShardId(std::forward<ShardIdT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetParentShardId() const { return m_parentShardId; }
60 inline bool ParentShardIdHasBeenSet() const { return m_parentShardIdHasBeenSet; }
61 template <typename ParentShardIdT = Aws::String>
62 void SetParentShardId(ParentShardIdT&& value) {
63 m_parentShardIdHasBeenSet = true;
64 m_parentShardId = std::forward<ParentShardIdT>(value);
65 }
66 template <typename ParentShardIdT = Aws::String>
67 Shard& WithParentShardId(ParentShardIdT&& value) {
68 SetParentShardId(std::forward<ParentShardIdT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetAdjacentParentShardId() const { return m_adjacentParentShardId; }
78 inline bool AdjacentParentShardIdHasBeenSet() const { return m_adjacentParentShardIdHasBeenSet; }
79 template <typename AdjacentParentShardIdT = Aws::String>
80 void SetAdjacentParentShardId(AdjacentParentShardIdT&& value) {
81 m_adjacentParentShardIdHasBeenSet = true;
82 m_adjacentParentShardId = std::forward<AdjacentParentShardIdT>(value);
83 }
84 template <typename AdjacentParentShardIdT = Aws::String>
85 Shard& WithAdjacentParentShardId(AdjacentParentShardIdT&& value) {
86 SetAdjacentParentShardId(std::forward<AdjacentParentShardIdT>(value));
87 return *this;
88 }
90
92
96 inline const HashKeyRange& GetHashKeyRange() const { return m_hashKeyRange; }
97 inline bool HashKeyRangeHasBeenSet() const { return m_hashKeyRangeHasBeenSet; }
98 template <typename HashKeyRangeT = HashKeyRange>
99 void SetHashKeyRange(HashKeyRangeT&& value) {
100 m_hashKeyRangeHasBeenSet = true;
101 m_hashKeyRange = std::forward<HashKeyRangeT>(value);
102 }
103 template <typename HashKeyRangeT = HashKeyRange>
104 Shard& WithHashKeyRange(HashKeyRangeT&& value) {
105 SetHashKeyRange(std::forward<HashKeyRangeT>(value));
106 return *this;
107 }
109
111
114 inline const SequenceNumberRange& GetSequenceNumberRange() const { return m_sequenceNumberRange; }
115 inline bool SequenceNumberRangeHasBeenSet() const { return m_sequenceNumberRangeHasBeenSet; }
116 template <typename SequenceNumberRangeT = SequenceNumberRange>
117 void SetSequenceNumberRange(SequenceNumberRangeT&& value) {
118 m_sequenceNumberRangeHasBeenSet = true;
119 m_sequenceNumberRange = std::forward<SequenceNumberRangeT>(value);
120 }
121 template <typename SequenceNumberRangeT = SequenceNumberRange>
122 Shard& WithSequenceNumberRange(SequenceNumberRangeT&& value) {
123 SetSequenceNumberRange(std::forward<SequenceNumberRangeT>(value));
124 return *this;
125 }
127 private:
128 Aws::String m_shardId;
129
130 Aws::String m_parentShardId;
131
132 Aws::String m_adjacentParentShardId;
133
134 HashKeyRange m_hashKeyRange;
135
136 SequenceNumberRange m_sequenceNumberRange;
137 bool m_shardIdHasBeenSet = false;
138 bool m_parentShardIdHasBeenSet = false;
139 bool m_adjacentParentShardIdHasBeenSet = false;
140 bool m_hashKeyRangeHasBeenSet = false;
141 bool m_sequenceNumberRangeHasBeenSet = false;
142};
143
144} // namespace Model
145} // namespace Kinesis
146} // namespace Aws
Shard & WithHashKeyRange(HashKeyRangeT &&value)
Definition Shard.h:104
void SetSequenceNumberRange(SequenceNumberRangeT &&value)
Definition Shard.h:117
bool AdjacentParentShardIdHasBeenSet() const
Definition Shard.h:78
const Aws::String & GetAdjacentParentShardId() const
Definition Shard.h:77
AWS_KINESIS_API Shard & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_KINESIS_API Shard()=default
Shard & WithParentShardId(ParentShardIdT &&value)
Definition Shard.h:67
void SetHashKeyRange(HashKeyRangeT &&value)
Definition Shard.h:99
void SetAdjacentParentShardId(AdjacentParentShardIdT &&value)
Definition Shard.h:80
bool SequenceNumberRangeHasBeenSet() const
Definition Shard.h:115
const SequenceNumberRange & GetSequenceNumberRange() const
Definition Shard.h:114
bool ShardIdHasBeenSet() const
Definition Shard.h:42
Shard & WithSequenceNumberRange(SequenceNumberRangeT &&value)
Definition Shard.h:122
AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_KINESIS_API Shard(Aws::Utils::Json::JsonView jsonValue)
Shard & WithAdjacentParentShardId(AdjacentParentShardIdT &&value)
Definition Shard.h:85
void SetShardId(ShardIdT &&value)
Definition Shard.h:44
const Aws::String & GetParentShardId() const
Definition Shard.h:59
const Aws::String & GetShardId() const
Definition Shard.h:41
void SetParentShardId(ParentShardIdT &&value)
Definition Shard.h:62
Shard & WithShardId(ShardIdT &&value)
Definition Shard.h:49
bool HashKeyRangeHasBeenSet() const
Definition Shard.h:97
bool ParentShardIdHasBeenSet() const
Definition Shard.h:60
const HashKeyRange & GetHashKeyRange() const
Definition Shard.h:96
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue