AWS SDK for C++

AWS SDK for C++ Version 1.11.760

Loading...
Searching...
No Matches
ChildShard.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/kinesis/Kinesis_EXPORTS.h>
10#include <aws/kinesis/model/HashKeyRange.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 ChildShard() = default;
33 AWS_KINESIS_API ChildShard(Aws::Utils::Json::JsonView jsonValue);
34 AWS_KINESIS_API ChildShard& 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 ChildShard& WithShardId(ShardIdT&& value) {
50 SetShardId(std::forward<ShardIdT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Vector<Aws::String>& GetParentShards() const { return m_parentShards; }
60 inline bool ParentShardsHasBeenSet() const { return m_parentShardsHasBeenSet; }
61 template <typename ParentShardsT = Aws::Vector<Aws::String>>
62 void SetParentShards(ParentShardsT&& value) {
63 m_parentShardsHasBeenSet = true;
64 m_parentShards = std::forward<ParentShardsT>(value);
65 }
66 template <typename ParentShardsT = Aws::Vector<Aws::String>>
67 ChildShard& WithParentShards(ParentShardsT&& value) {
68 SetParentShards(std::forward<ParentShardsT>(value));
69 return *this;
70 }
71 template <typename ParentShardsT = Aws::String>
72 ChildShard& AddParentShards(ParentShardsT&& value) {
73 m_parentShardsHasBeenSet = true;
74 m_parentShards.emplace_back(std::forward<ParentShardsT>(value));
75 return *this;
76 }
78
80
81 inline const HashKeyRange& GetHashKeyRange() const { return m_hashKeyRange; }
82 inline bool HashKeyRangeHasBeenSet() const { return m_hashKeyRangeHasBeenSet; }
83 template <typename HashKeyRangeT = HashKeyRange>
84 void SetHashKeyRange(HashKeyRangeT&& value) {
85 m_hashKeyRangeHasBeenSet = true;
86 m_hashKeyRange = std::forward<HashKeyRangeT>(value);
87 }
88 template <typename HashKeyRangeT = HashKeyRange>
89 ChildShard& WithHashKeyRange(HashKeyRangeT&& value) {
90 SetHashKeyRange(std::forward<HashKeyRangeT>(value));
91 return *this;
92 }
94 private:
95 Aws::String m_shardId;
96
97 Aws::Vector<Aws::String> m_parentShards;
98
99 HashKeyRange m_hashKeyRange;
100 bool m_shardIdHasBeenSet = false;
101 bool m_parentShardsHasBeenSet = false;
102 bool m_hashKeyRangeHasBeenSet = false;
103};
104
105} // namespace Model
106} // namespace Kinesis
107} // namespace Aws
void SetParentShards(ParentShardsT &&value)
Definition ChildShard.h:62
AWS_KINESIS_API ChildShard & operator=(Aws::Utils::Json::JsonView jsonValue)
ChildShard & AddParentShards(ParentShardsT &&value)
Definition ChildShard.h:72
AWS_KINESIS_API ChildShard(Aws::Utils::Json::JsonView jsonValue)
void SetHashKeyRange(HashKeyRangeT &&value)
Definition ChildShard.h:84
const Aws::String & GetShardId() const
Definition ChildShard.h:41
const HashKeyRange & GetHashKeyRange() const
Definition ChildShard.h:81
const Aws::Vector< Aws::String > & GetParentShards() const
Definition ChildShard.h:59
ChildShard & WithParentShards(ParentShardsT &&value)
Definition ChildShard.h:67
AWS_KINESIS_API ChildShard()=default
ChildShard & WithShardId(ShardIdT &&value)
Definition ChildShard.h:49
void SetShardId(ShardIdT &&value)
Definition ChildShard.h:44
AWS_KINESIS_API Aws::Utils::Json::JsonValue Jsonize() const
ChildShard & WithHashKeyRange(HashKeyRangeT &&value)
Definition ChildShard.h:89
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue