AWS SDK for C++

AWS SDK for C++ Version 1.11.692

Loading...
Searching...
No Matches
UpdateSecurityProfileRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/iot/IoTRequest.h>
11#include <aws/iot/IoT_EXPORTS.h>
12#include <aws/iot/model/AlertTarget.h>
13#include <aws/iot/model/AlertTargetType.h>
14#include <aws/iot/model/Behavior.h>
15#include <aws/iot/model/MetricToRetain.h>
16#include <aws/iot/model/MetricsExportConfig.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Http {
22class URI;
23} // namespace Http
24namespace IoT {
25namespace Model {
26
30 public:
31 AWS_IOT_API UpdateSecurityProfileRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "UpdateSecurityProfile"; }
38
39 AWS_IOT_API Aws::String SerializePayload() const override;
40
41 AWS_IOT_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
42
44
47 inline const Aws::String& GetSecurityProfileName() const { return m_securityProfileName; }
48 inline bool SecurityProfileNameHasBeenSet() const { return m_securityProfileNameHasBeenSet; }
49 template <typename SecurityProfileNameT = Aws::String>
50 void SetSecurityProfileName(SecurityProfileNameT&& value) {
51 m_securityProfileNameHasBeenSet = true;
52 m_securityProfileName = std::forward<SecurityProfileNameT>(value);
53 }
54 template <typename SecurityProfileNameT = Aws::String>
56 SetSecurityProfileName(std::forward<SecurityProfileNameT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetSecurityProfileDescription() const { return m_securityProfileDescription; }
66 inline bool SecurityProfileDescriptionHasBeenSet() const { return m_securityProfileDescriptionHasBeenSet; }
67 template <typename SecurityProfileDescriptionT = Aws::String>
68 void SetSecurityProfileDescription(SecurityProfileDescriptionT&& value) {
69 m_securityProfileDescriptionHasBeenSet = true;
70 m_securityProfileDescription = std::forward<SecurityProfileDescriptionT>(value);
71 }
72 template <typename SecurityProfileDescriptionT = Aws::String>
73 UpdateSecurityProfileRequest& WithSecurityProfileDescription(SecurityProfileDescriptionT&& value) {
74 SetSecurityProfileDescription(std::forward<SecurityProfileDescriptionT>(value));
75 return *this;
76 }
78
80
84 inline const Aws::Vector<Behavior>& GetBehaviors() const { return m_behaviors; }
85 inline bool BehaviorsHasBeenSet() const { return m_behaviorsHasBeenSet; }
86 template <typename BehaviorsT = Aws::Vector<Behavior>>
87 void SetBehaviors(BehaviorsT&& value) {
88 m_behaviorsHasBeenSet = true;
89 m_behaviors = std::forward<BehaviorsT>(value);
90 }
91 template <typename BehaviorsT = Aws::Vector<Behavior>>
93 SetBehaviors(std::forward<BehaviorsT>(value));
94 return *this;
95 }
96 template <typename BehaviorsT = Behavior>
98 m_behaviorsHasBeenSet = true;
99 m_behaviors.emplace_back(std::forward<BehaviorsT>(value));
100 return *this;
101 }
103
105
108 inline const Aws::Map<AlertTargetType, AlertTarget>& GetAlertTargets() const { return m_alertTargets; }
109 inline bool AlertTargetsHasBeenSet() const { return m_alertTargetsHasBeenSet; }
110 template <typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
111 void SetAlertTargets(AlertTargetsT&& value) {
112 m_alertTargetsHasBeenSet = true;
113 m_alertTargets = std::forward<AlertTargetsT>(value);
114 }
115 template <typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
117 SetAlertTargets(std::forward<AlertTargetsT>(value));
118 return *this;
119 }
121 m_alertTargetsHasBeenSet = true;
122 m_alertTargets.emplace(key, value);
123 return *this;
124 }
126
128
134 inline const Aws::Vector<MetricToRetain>& GetAdditionalMetricsToRetainV2() const { return m_additionalMetricsToRetainV2; }
135 inline bool AdditionalMetricsToRetainV2HasBeenSet() const { return m_additionalMetricsToRetainV2HasBeenSet; }
136 template <typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
137 void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) {
138 m_additionalMetricsToRetainV2HasBeenSet = true;
139 m_additionalMetricsToRetainV2 = std::forward<AdditionalMetricsToRetainV2T>(value);
140 }
141 template <typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
142 UpdateSecurityProfileRequest& WithAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) {
143 SetAdditionalMetricsToRetainV2(std::forward<AdditionalMetricsToRetainV2T>(value));
144 return *this;
145 }
146 template <typename AdditionalMetricsToRetainV2T = MetricToRetain>
147 UpdateSecurityProfileRequest& AddAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) {
148 m_additionalMetricsToRetainV2HasBeenSet = true;
149 m_additionalMetricsToRetainV2.emplace_back(std::forward<AdditionalMetricsToRetainV2T>(value));
150 return *this;
151 }
153
155
160 inline bool GetDeleteBehaviors() const { return m_deleteBehaviors; }
161 inline bool DeleteBehaviorsHasBeenSet() const { return m_deleteBehaviorsHasBeenSet; }
162 inline void SetDeleteBehaviors(bool value) {
163 m_deleteBehaviorsHasBeenSet = true;
164 m_deleteBehaviors = value;
165 }
167 SetDeleteBehaviors(value);
168 return *this;
169 }
171
173
178 inline bool GetDeleteAlertTargets() const { return m_deleteAlertTargets; }
179 inline bool DeleteAlertTargetsHasBeenSet() const { return m_deleteAlertTargetsHasBeenSet; }
180 inline void SetDeleteAlertTargets(bool value) {
181 m_deleteAlertTargetsHasBeenSet = true;
182 m_deleteAlertTargets = value;
183 }
186 return *this;
187 }
189
191
196 inline bool GetDeleteAdditionalMetricsToRetain() const { return m_deleteAdditionalMetricsToRetain; }
197 inline bool DeleteAdditionalMetricsToRetainHasBeenSet() const { return m_deleteAdditionalMetricsToRetainHasBeenSet; }
198 inline void SetDeleteAdditionalMetricsToRetain(bool value) {
199 m_deleteAdditionalMetricsToRetainHasBeenSet = true;
200 m_deleteAdditionalMetricsToRetain = value;
201 }
204 return *this;
205 }
207
209
215 inline long long GetExpectedVersion() const { return m_expectedVersion; }
216 inline bool ExpectedVersionHasBeenSet() const { return m_expectedVersionHasBeenSet; }
217 inline void SetExpectedVersion(long long value) {
218 m_expectedVersionHasBeenSet = true;
219 m_expectedVersion = value;
220 }
222 SetExpectedVersion(value);
223 return *this;
224 }
226
228
231 inline const MetricsExportConfig& GetMetricsExportConfig() const { return m_metricsExportConfig; }
232 inline bool MetricsExportConfigHasBeenSet() const { return m_metricsExportConfigHasBeenSet; }
233 template <typename MetricsExportConfigT = MetricsExportConfig>
234 void SetMetricsExportConfig(MetricsExportConfigT&& value) {
235 m_metricsExportConfigHasBeenSet = true;
236 m_metricsExportConfig = std::forward<MetricsExportConfigT>(value);
237 }
238 template <typename MetricsExportConfigT = MetricsExportConfig>
240 SetMetricsExportConfig(std::forward<MetricsExportConfigT>(value));
241 return *this;
242 }
244
246
249 inline bool GetDeleteMetricsExportConfig() const { return m_deleteMetricsExportConfig; }
250 inline bool DeleteMetricsExportConfigHasBeenSet() const { return m_deleteMetricsExportConfigHasBeenSet; }
251 inline void SetDeleteMetricsExportConfig(bool value) {
252 m_deleteMetricsExportConfigHasBeenSet = true;
253 m_deleteMetricsExportConfig = value;
254 }
257 return *this;
258 }
260 private:
261 Aws::String m_securityProfileName;
262 bool m_securityProfileNameHasBeenSet = false;
263
264 Aws::String m_securityProfileDescription;
265 bool m_securityProfileDescriptionHasBeenSet = false;
266
267 Aws::Vector<Behavior> m_behaviors;
268 bool m_behaviorsHasBeenSet = false;
269
271 bool m_alertTargetsHasBeenSet = false;
272
273 Aws::Vector<MetricToRetain> m_additionalMetricsToRetainV2;
274 bool m_additionalMetricsToRetainV2HasBeenSet = false;
275
276 bool m_deleteBehaviors{false};
277 bool m_deleteBehaviorsHasBeenSet = false;
278
279 bool m_deleteAlertTargets{false};
280 bool m_deleteAlertTargetsHasBeenSet = false;
281
282 bool m_deleteAdditionalMetricsToRetain{false};
283 bool m_deleteAdditionalMetricsToRetainHasBeenSet = false;
284
285 long long m_expectedVersion{0};
286 bool m_expectedVersionHasBeenSet = false;
287
288 MetricsExportConfig m_metricsExportConfig;
289 bool m_metricsExportConfigHasBeenSet = false;
290
291 bool m_deleteMetricsExportConfig{false};
292 bool m_deleteMetricsExportConfigHasBeenSet = false;
293};
294
295} // namespace Model
296} // namespace IoT
297} // namespace Aws
UpdateSecurityProfileRequest & WithSecurityProfileName(SecurityProfileNameT &&value)
UpdateSecurityProfileRequest & WithAlertTargets(AlertTargetsT &&value)
UpdateSecurityProfileRequest & WithDeleteAlertTargets(bool value)
virtual const char * GetServiceRequestName() const override
const Aws::Vector< Behavior > & GetBehaviors() const
AWS_IOT_API UpdateSecurityProfileRequest()=default
void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
UpdateSecurityProfileRequest & WithBehaviors(BehaviorsT &&value)
UpdateSecurityProfileRequest & AddAlertTargets(AlertTargetType key, AlertTarget value)
UpdateSecurityProfileRequest & WithDeleteAdditionalMetricsToRetain(bool value)
const Aws::Map< AlertTargetType, AlertTarget > & GetAlertTargets() const
AWS_IOT_API Aws::String SerializePayload() const override
UpdateSecurityProfileRequest & AddBehaviors(BehaviorsT &&value)
UpdateSecurityProfileRequest & WithDeleteMetricsExportConfig(bool value)
UpdateSecurityProfileRequest & AddAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
const MetricsExportConfig & GetMetricsExportConfig() const
UpdateSecurityProfileRequest & WithAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
void SetSecurityProfileName(SecurityProfileNameT &&value)
AWS_IOT_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
UpdateSecurityProfileRequest & WithExpectedVersion(long long value)
UpdateSecurityProfileRequest & WithDeleteBehaviors(bool value)
void SetSecurityProfileDescription(SecurityProfileDescriptionT &&value)
UpdateSecurityProfileRequest & WithSecurityProfileDescription(SecurityProfileDescriptionT &&value)
UpdateSecurityProfileRequest & WithMetricsExportConfig(MetricsExportConfigT &&value)
const Aws::Vector< MetricToRetain > & GetAdditionalMetricsToRetainV2() const
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