AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
UpdateSecurityProfileRequest.h
1
6#pragma once
7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/IoTRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/iot/model/MetricsExportConfig.h>
13#include <aws/iot/model/Behavior.h>
14#include <aws/iot/model/AlertTargetType.h>
15#include <aws/iot/model/AlertTarget.h>
16#include <aws/iot/model/MetricToRetain.h>
17#include <utility>
18
19namespace Aws
20{
21namespace Http
22{
23 class URI;
24} //namespace Http
25namespace IoT
26{
27namespace Model
28{
29
33 {
34 public:
35 AWS_IOT_API UpdateSecurityProfileRequest() = default;
36
37 // Service request name is the Operation name which will send this request out,
38 // each operation should has unique request name, so that we can get operation's name from this request.
39 // Note: this is not true for response, multiple operations may have the same response name,
40 // so we can not get operation's name from response.
41 inline virtual const char* GetServiceRequestName() const override { return "UpdateSecurityProfile"; }
42
43 AWS_IOT_API Aws::String SerializePayload() const override;
44
45 AWS_IOT_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
46
47
49
52 inline const Aws::String& GetSecurityProfileName() const { return m_securityProfileName; }
53 inline bool SecurityProfileNameHasBeenSet() const { return m_securityProfileNameHasBeenSet; }
54 template<typename SecurityProfileNameT = Aws::String>
55 void SetSecurityProfileName(SecurityProfileNameT&& value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName = std::forward<SecurityProfileNameT>(value); }
56 template<typename SecurityProfileNameT = Aws::String>
57 UpdateSecurityProfileRequest& WithSecurityProfileName(SecurityProfileNameT&& value) { SetSecurityProfileName(std::forward<SecurityProfileNameT>(value)); return *this;}
59
61
64 inline const Aws::String& GetSecurityProfileDescription() const { return m_securityProfileDescription; }
65 inline bool SecurityProfileDescriptionHasBeenSet() const { return m_securityProfileDescriptionHasBeenSet; }
66 template<typename SecurityProfileDescriptionT = Aws::String>
67 void SetSecurityProfileDescription(SecurityProfileDescriptionT&& value) { m_securityProfileDescriptionHasBeenSet = true; m_securityProfileDescription = std::forward<SecurityProfileDescriptionT>(value); }
68 template<typename SecurityProfileDescriptionT = Aws::String>
69 UpdateSecurityProfileRequest& WithSecurityProfileDescription(SecurityProfileDescriptionT&& value) { SetSecurityProfileDescription(std::forward<SecurityProfileDescriptionT>(value)); return *this;}
71
73
77 inline const Aws::Vector<Behavior>& GetBehaviors() const { return m_behaviors; }
78 inline bool BehaviorsHasBeenSet() const { return m_behaviorsHasBeenSet; }
79 template<typename BehaviorsT = Aws::Vector<Behavior>>
80 void SetBehaviors(BehaviorsT&& value) { m_behaviorsHasBeenSet = true; m_behaviors = std::forward<BehaviorsT>(value); }
81 template<typename BehaviorsT = Aws::Vector<Behavior>>
82 UpdateSecurityProfileRequest& WithBehaviors(BehaviorsT&& value) { SetBehaviors(std::forward<BehaviorsT>(value)); return *this;}
83 template<typename BehaviorsT = Behavior>
84 UpdateSecurityProfileRequest& AddBehaviors(BehaviorsT&& value) { m_behaviorsHasBeenSet = true; m_behaviors.emplace_back(std::forward<BehaviorsT>(value)); return *this; }
86
88
91 inline const Aws::Map<AlertTargetType, AlertTarget>& GetAlertTargets() const { return m_alertTargets; }
92 inline bool AlertTargetsHasBeenSet() const { return m_alertTargetsHasBeenSet; }
93 template<typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
94 void SetAlertTargets(AlertTargetsT&& value) { m_alertTargetsHasBeenSet = true; m_alertTargets = std::forward<AlertTargetsT>(value); }
95 template<typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
96 UpdateSecurityProfileRequest& WithAlertTargets(AlertTargetsT&& value) { SetAlertTargets(std::forward<AlertTargetsT>(value)); return *this;}
98 m_alertTargetsHasBeenSet = true; m_alertTargets.emplace(key, value); return *this;
99 }
101
103
109 inline const Aws::Vector<MetricToRetain>& GetAdditionalMetricsToRetainV2() const { return m_additionalMetricsToRetainV2; }
110 inline bool AdditionalMetricsToRetainV2HasBeenSet() const { return m_additionalMetricsToRetainV2HasBeenSet; }
111 template<typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
112 void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) { m_additionalMetricsToRetainV2HasBeenSet = true; m_additionalMetricsToRetainV2 = std::forward<AdditionalMetricsToRetainV2T>(value); }
113 template<typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
114 UpdateSecurityProfileRequest& WithAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) { SetAdditionalMetricsToRetainV2(std::forward<AdditionalMetricsToRetainV2T>(value)); return *this;}
115 template<typename AdditionalMetricsToRetainV2T = MetricToRetain>
116 UpdateSecurityProfileRequest& AddAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) { m_additionalMetricsToRetainV2HasBeenSet = true; m_additionalMetricsToRetainV2.emplace_back(std::forward<AdditionalMetricsToRetainV2T>(value)); return *this; }
118
120
125 inline bool GetDeleteBehaviors() const { return m_deleteBehaviors; }
126 inline bool DeleteBehaviorsHasBeenSet() const { return m_deleteBehaviorsHasBeenSet; }
127 inline void SetDeleteBehaviors(bool value) { m_deleteBehaviorsHasBeenSet = true; m_deleteBehaviors = value; }
128 inline UpdateSecurityProfileRequest& WithDeleteBehaviors(bool value) { SetDeleteBehaviors(value); return *this;}
130
132
137 inline bool GetDeleteAlertTargets() const { return m_deleteAlertTargets; }
138 inline bool DeleteAlertTargetsHasBeenSet() const { return m_deleteAlertTargetsHasBeenSet; }
139 inline void SetDeleteAlertTargets(bool value) { m_deleteAlertTargetsHasBeenSet = true; m_deleteAlertTargets = value; }
142
144
149 inline bool GetDeleteAdditionalMetricsToRetain() const { return m_deleteAdditionalMetricsToRetain; }
150 inline bool DeleteAdditionalMetricsToRetainHasBeenSet() const { return m_deleteAdditionalMetricsToRetainHasBeenSet; }
151 inline void SetDeleteAdditionalMetricsToRetain(bool value) { m_deleteAdditionalMetricsToRetainHasBeenSet = true; m_deleteAdditionalMetricsToRetain = value; }
154
156
162 inline long long GetExpectedVersion() const { return m_expectedVersion; }
163 inline bool ExpectedVersionHasBeenSet() const { return m_expectedVersionHasBeenSet; }
164 inline void SetExpectedVersion(long long value) { m_expectedVersionHasBeenSet = true; m_expectedVersion = value; }
165 inline UpdateSecurityProfileRequest& WithExpectedVersion(long long value) { SetExpectedVersion(value); return *this;}
167
169
172 inline const MetricsExportConfig& GetMetricsExportConfig() const { return m_metricsExportConfig; }
173 inline bool MetricsExportConfigHasBeenSet() const { return m_metricsExportConfigHasBeenSet; }
174 template<typename MetricsExportConfigT = MetricsExportConfig>
175 void SetMetricsExportConfig(MetricsExportConfigT&& value) { m_metricsExportConfigHasBeenSet = true; m_metricsExportConfig = std::forward<MetricsExportConfigT>(value); }
176 template<typename MetricsExportConfigT = MetricsExportConfig>
177 UpdateSecurityProfileRequest& WithMetricsExportConfig(MetricsExportConfigT&& value) { SetMetricsExportConfig(std::forward<MetricsExportConfigT>(value)); return *this;}
179
181
184 inline bool GetDeleteMetricsExportConfig() const { return m_deleteMetricsExportConfig; }
185 inline bool DeleteMetricsExportConfigHasBeenSet() const { return m_deleteMetricsExportConfigHasBeenSet; }
186 inline void SetDeleteMetricsExportConfig(bool value) { m_deleteMetricsExportConfigHasBeenSet = true; m_deleteMetricsExportConfig = value; }
189 private:
190
191 Aws::String m_securityProfileName;
192 bool m_securityProfileNameHasBeenSet = false;
193
194 Aws::String m_securityProfileDescription;
195 bool m_securityProfileDescriptionHasBeenSet = false;
196
197 Aws::Vector<Behavior> m_behaviors;
198 bool m_behaviorsHasBeenSet = false;
199
201 bool m_alertTargetsHasBeenSet = false;
202
203 Aws::Vector<MetricToRetain> m_additionalMetricsToRetainV2;
204 bool m_additionalMetricsToRetainV2HasBeenSet = false;
205
206 bool m_deleteBehaviors{false};
207 bool m_deleteBehaviorsHasBeenSet = false;
208
209 bool m_deleteAlertTargets{false};
210 bool m_deleteAlertTargetsHasBeenSet = false;
211
212 bool m_deleteAdditionalMetricsToRetain{false};
213 bool m_deleteAdditionalMetricsToRetainHasBeenSet = false;
214
215 long long m_expectedVersion{0};
216 bool m_expectedVersionHasBeenSet = false;
217
218 MetricsExportConfig m_metricsExportConfig;
219 bool m_metricsExportConfigHasBeenSet = false;
220
221 bool m_deleteMetricsExportConfig{false};
222 bool m_deleteMetricsExportConfigHasBeenSet = false;
223 };
224
225} // namespace Model
226} // namespace IoT
227} // 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