AWS SDK for C++

AWS SDK for C++ Version 1.11.900

Loading...
Searching...
No Matches
ResourceScope.h
1
6#pragma once
7#include <aws/cloudwatchomni/CloudWatchOmni_EXPORTS.h>
8#include <aws/cloudwatchomni/model/RowScope.h>
9#include <aws/cloudwatchomni/model/SignalType.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/crt/cbor/Cbor.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Cbor {
20class CborValue;
21} // namespace Cbor
22} // namespace Utils
23namespace CloudWatchOmni {
24namespace Model {
25
34 public:
35 AWS_CLOUDWATCHOMNI_API ResourceScope() = default;
36 AWS_CLOUDWATCHOMNI_API ResourceScope(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
37 AWS_CLOUDWATCHOMNI_API ResourceScope& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
38 AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
39
41
45 inline const Aws::String& GetResourceType() const { return m_resourceType; }
46 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
47 template <typename ResourceTypeT = Aws::String>
48 void SetResourceType(ResourceTypeT&& value) {
49 m_resourceTypeHasBeenSet = true;
50 m_resourceType = std::forward<ResourceTypeT>(value);
51 }
52 template <typename ResourceTypeT = Aws::String>
53 ResourceScope& WithResourceType(ResourceTypeT&& value) {
54 SetResourceType(std::forward<ResourceTypeT>(value));
55 return *this;
56 }
58
60
64 inline const Aws::Vector<Aws::String>& GetResourceArns() const { return m_resourceArns; }
65 inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; }
66 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
67 void SetResourceArns(ResourceArnsT&& value) {
68 m_resourceArnsHasBeenSet = true;
69 m_resourceArns = std::forward<ResourceArnsT>(value);
70 }
71 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
72 ResourceScope& WithResourceArns(ResourceArnsT&& value) {
73 SetResourceArns(std::forward<ResourceArnsT>(value));
74 return *this;
75 }
76 template <typename ResourceArnsT = Aws::String>
77 ResourceScope& AddResourceArns(ResourceArnsT&& value) {
78 m_resourceArnsHasBeenSet = true;
79 m_resourceArns.emplace_back(std::forward<ResourceArnsT>(value));
80 return *this;
81 }
83
85
89 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
90 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
91 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
92 void SetTags(TagsT&& value) {
93 m_tagsHasBeenSet = true;
94 m_tags = std::forward<TagsT>(value);
95 }
96 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
97 ResourceScope& WithTags(TagsT&& value) {
98 SetTags(std::forward<TagsT>(value));
99 return *this;
100 }
101 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
102 ResourceScope& AddTags(TagsKeyT&& key, TagsValueT&& value) {
103 m_tagsHasBeenSet = true;
104 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
105 return *this;
106 }
108
110
114 inline const Aws::Vector<SignalType>& GetSignalTypes() const { return m_signalTypes; }
115 inline bool SignalTypesHasBeenSet() const { return m_signalTypesHasBeenSet; }
116 template <typename SignalTypesT = Aws::Vector<SignalType>>
117 void SetSignalTypes(SignalTypesT&& value) {
118 m_signalTypesHasBeenSet = true;
119 m_signalTypes = std::forward<SignalTypesT>(value);
120 }
121 template <typename SignalTypesT = Aws::Vector<SignalType>>
122 ResourceScope& WithSignalTypes(SignalTypesT&& value) {
123 SetSignalTypes(std::forward<SignalTypesT>(value));
124 return *this;
125 }
127 m_signalTypesHasBeenSet = true;
128 m_signalTypes.push_back(value);
129 return *this;
130 }
132
134
141 inline const Aws::Vector<Aws::Vector<RowScope>>& GetRowScopeGroups() const { return m_rowScopeGroups; }
142 inline bool RowScopeGroupsHasBeenSet() const { return m_rowScopeGroupsHasBeenSet; }
143 template <typename RowScopeGroupsT = Aws::Vector<Aws::Vector<RowScope>>>
144 void SetRowScopeGroups(RowScopeGroupsT&& value) {
145 m_rowScopeGroupsHasBeenSet = true;
146 m_rowScopeGroups = std::forward<RowScopeGroupsT>(value);
147 }
148 template <typename RowScopeGroupsT = Aws::Vector<Aws::Vector<RowScope>>>
149 ResourceScope& WithRowScopeGroups(RowScopeGroupsT&& value) {
150 SetRowScopeGroups(std::forward<RowScopeGroupsT>(value));
151 return *this;
152 }
153 template <typename RowScopeGroupsT = Aws::Vector<RowScope>>
154 ResourceScope& AddRowScopeGroups(RowScopeGroupsT&& value) {
155 m_rowScopeGroupsHasBeenSet = true;
156 m_rowScopeGroups.emplace_back(std::forward<RowScopeGroupsT>(value));
157 return *this;
158 }
160 private:
161 Aws::String m_resourceType;
162
163 Aws::Vector<Aws::String> m_resourceArns;
164
166
167 Aws::Vector<SignalType> m_signalTypes;
168
169 Aws::Vector<Aws::Vector<RowScope>> m_rowScopeGroups;
170 bool m_resourceTypeHasBeenSet = false;
171 bool m_resourceArnsHasBeenSet = false;
172 bool m_tagsHasBeenSet = false;
173 bool m_signalTypesHasBeenSet = false;
174 bool m_rowScopeGroupsHasBeenSet = false;
175};
176
177} // namespace Model
178} // namespace CloudWatchOmni
179} // namespace Aws
const Aws::String & GetResourceType() const
ResourceScope & AddSignalTypes(SignalType value)
const Aws::Vector< Aws::String > & GetResourceArns() const
ResourceScope & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
ResourceScope & AddRowScopeGroups(RowScopeGroupsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Vector< SignalType > & GetSignalTypes() const
AWS_CLOUDWATCHOMNI_API ResourceScope()=default
AWS_CLOUDWATCHOMNI_API ResourceScope & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
void SetResourceArns(ResourceArnsT &&value)
AWS_CLOUDWATCHOMNI_API ResourceScope(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
ResourceScope & AddResourceArns(ResourceArnsT &&value)
ResourceScope & WithResourceArns(ResourceArnsT &&value)
void SetSignalTypes(SignalTypesT &&value)
void SetResourceType(ResourceTypeT &&value)
ResourceScope & WithTags(TagsT &&value)
const Aws::Vector< Aws::Vector< RowScope > > & GetRowScopeGroups() const
ResourceScope & WithResourceType(ResourceTypeT &&value)
ResourceScope & WithSignalTypes(SignalTypesT &&value)
void SetRowScopeGroups(RowScopeGroupsT &&value)
ResourceScope & WithRowScopeGroups(RowScopeGroupsT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector