AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
KeyspacesCell.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSAllocator.h>
8#include <aws/keyspacesstreams/KeyspacesStreams_EXPORTS.h>
9#include <aws/keyspacesstreams/model/KeyspacesMetadata.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace KeyspacesStreams {
21namespace Model {
22class KeyspacesCellValue;
23
31 public:
32 AWS_KEYSPACESSTREAMS_API KeyspacesCell() = default;
33 AWS_KEYSPACESSTREAMS_API KeyspacesCell(Aws::Utils::Json::JsonView jsonValue);
34 AWS_KEYSPACESSTREAMS_API KeyspacesCell& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_KEYSPACESSTREAMS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const KeyspacesCellValue& GetValue() const { return *m_value; }
43 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
44 template <typename ValueT = KeyspacesCellValue>
45 void SetValue(ValueT&& value) {
46 m_valueHasBeenSet = true;
47 m_value = Aws::MakeShared<KeyspacesCellValue>("KeyspacesCell", std::forward<ValueT>(value));
48 }
49 template <typename ValueT = KeyspacesCellValue>
50 KeyspacesCell& WithValue(ValueT&& value) {
51 SetValue(std::forward<ValueT>(value));
52 return *this;
53 }
55
57
61 inline const KeyspacesMetadata& GetMetadata() const { return m_metadata; }
62 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
63 template <typename MetadataT = KeyspacesMetadata>
64 void SetMetadata(MetadataT&& value) {
65 m_metadataHasBeenSet = true;
66 m_metadata = std::forward<MetadataT>(value);
67 }
68 template <typename MetadataT = KeyspacesMetadata>
69 KeyspacesCell& WithMetadata(MetadataT&& value) {
70 SetMetadata(std::forward<MetadataT>(value));
71 return *this;
72 }
74 private:
75 std::shared_ptr<KeyspacesCellValue> m_value;
76
77 KeyspacesMetadata m_metadata;
78 bool m_valueHasBeenSet = false;
79 bool m_metadataHasBeenSet = false;
80};
81
82} // namespace Model
83} // namespace KeyspacesStreams
84} // namespace Aws
AWS_KEYSPACESSTREAMS_API KeyspacesCell & operator=(Aws::Utils::Json::JsonView jsonValue)
KeyspacesCell & WithValue(ValueT &&value)
const KeyspacesMetadata & GetMetadata() const
const KeyspacesCellValue & GetValue() const
KeyspacesCell & WithMetadata(MetadataT &&value)
AWS_KEYSPACESSTREAMS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_KEYSPACESSTREAMS_API KeyspacesCell()=default
AWS_KEYSPACESSTREAMS_API KeyspacesCell(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue