AWS SDK for C++

AWS SDK for C++ Version 1.11.844

Loading...
Searching...
No Matches
SecurityControl.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/securityhub/SecurityHub_EXPORTS.h>
10#include <aws/securityhub/model/ControlStatus.h>
11#include <aws/securityhub/model/ParameterConfiguration.h>
12#include <aws/securityhub/model/SecurityControlsProvider.h>
13#include <aws/securityhub/model/SeverityRating.h>
14#include <aws/securityhub/model/UpdateStatus.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace SecurityHub {
26namespace Model {
27
35 public:
36 AWS_SECURITYHUB_API SecurityControl() = default;
37 AWS_SECURITYHUB_API SecurityControl(Aws::Utils::Json::JsonView jsonValue);
38 AWS_SECURITYHUB_API SecurityControl& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
47 inline const Aws::String& GetSecurityControlId() const { return m_securityControlId; }
48 inline bool SecurityControlIdHasBeenSet() const { return m_securityControlIdHasBeenSet; }
49 template <typename SecurityControlIdT = Aws::String>
50 void SetSecurityControlId(SecurityControlIdT&& value) {
51 m_securityControlIdHasBeenSet = true;
52 m_securityControlId = std::forward<SecurityControlIdT>(value);
53 }
54 template <typename SecurityControlIdT = Aws::String>
55 SecurityControl& WithSecurityControlId(SecurityControlIdT&& value) {
56 SetSecurityControlId(std::forward<SecurityControlIdT>(value));
57 return *this;
58 }
60
62
68 inline const Aws::String& GetSecurityControlArn() const { return m_securityControlArn; }
69 inline bool SecurityControlArnHasBeenSet() const { return m_securityControlArnHasBeenSet; }
70 template <typename SecurityControlArnT = Aws::String>
71 void SetSecurityControlArn(SecurityControlArnT&& value) {
72 m_securityControlArnHasBeenSet = true;
73 m_securityControlArn = std::forward<SecurityControlArnT>(value);
74 }
75 template <typename SecurityControlArnT = Aws::String>
76 SecurityControl& WithSecurityControlArn(SecurityControlArnT&& value) {
77 SetSecurityControlArn(std::forward<SecurityControlArnT>(value));
78 return *this;
79 }
81
83
86 inline const Aws::String& GetTitle() const { return m_title; }
87 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
88 template <typename TitleT = Aws::String>
89 void SetTitle(TitleT&& value) {
90 m_titleHasBeenSet = true;
91 m_title = std::forward<TitleT>(value);
92 }
93 template <typename TitleT = Aws::String>
94 SecurityControl& WithTitle(TitleT&& value) {
95 SetTitle(std::forward<TitleT>(value));
96 return *this;
97 }
99
101
107 inline const Aws::String& GetDescription() const { return m_description; }
108 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
109 template <typename DescriptionT = Aws::String>
110 void SetDescription(DescriptionT&& value) {
111 m_descriptionHasBeenSet = true;
112 m_description = std::forward<DescriptionT>(value);
113 }
114 template <typename DescriptionT = Aws::String>
115 SecurityControl& WithDescription(DescriptionT&& value) {
116 SetDescription(std::forward<DescriptionT>(value));
117 return *this;
118 }
120
122
126 inline const Aws::String& GetRemediationUrl() const { return m_remediationUrl; }
127 inline bool RemediationUrlHasBeenSet() const { return m_remediationUrlHasBeenSet; }
128 template <typename RemediationUrlT = Aws::String>
129 void SetRemediationUrl(RemediationUrlT&& value) {
130 m_remediationUrlHasBeenSet = true;
131 m_remediationUrl = std::forward<RemediationUrlT>(value);
132 }
133 template <typename RemediationUrlT = Aws::String>
134 SecurityControl& WithRemediationUrl(RemediationUrlT&& value) {
135 SetRemediationUrl(std::forward<RemediationUrlT>(value));
136 return *this;
137 }
139
141
148 inline SeverityRating GetSeverityRating() const { return m_severityRating; }
149 inline bool SeverityRatingHasBeenSet() const { return m_severityRatingHasBeenSet; }
151 m_severityRatingHasBeenSet = true;
152 m_severityRating = value;
153 }
155 SetSeverityRating(value);
156 return *this;
157 }
159
161
164 inline ControlStatus GetSecurityControlStatus() const { return m_securityControlStatus; }
165 inline bool SecurityControlStatusHasBeenSet() const { return m_securityControlStatusHasBeenSet; }
167 m_securityControlStatusHasBeenSet = true;
168 m_securityControlStatus = value;
169 }
172 return *this;
173 }
175
177
185 inline UpdateStatus GetUpdateStatus() const { return m_updateStatus; }
186 inline bool UpdateStatusHasBeenSet() const { return m_updateStatusHasBeenSet; }
187 inline void SetUpdateStatus(UpdateStatus value) {
188 m_updateStatusHasBeenSet = true;
189 m_updateStatus = value;
190 }
192 SetUpdateStatus(value);
193 return *this;
194 }
196
198
202 inline const Aws::Map<Aws::String, ParameterConfiguration>& GetParameters() const { return m_parameters; }
203 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
204 template <typename ParametersT = Aws::Map<Aws::String, ParameterConfiguration>>
205 void SetParameters(ParametersT&& value) {
206 m_parametersHasBeenSet = true;
207 m_parameters = std::forward<ParametersT>(value);
208 }
209 template <typename ParametersT = Aws::Map<Aws::String, ParameterConfiguration>>
210 SecurityControl& WithParameters(ParametersT&& value) {
211 SetParameters(std::forward<ParametersT>(value));
212 return *this;
213 }
214 template <typename ParametersKeyT = Aws::String, typename ParametersValueT = ParameterConfiguration>
215 SecurityControl& AddParameters(ParametersKeyT&& key, ParametersValueT&& value) {
216 m_parametersHasBeenSet = true;
217 m_parameters.emplace(std::forward<ParametersKeyT>(key), std::forward<ParametersValueT>(value));
218 return *this;
219 }
221
223
233 inline const Aws::String& GetLastUpdateReason() const { return m_lastUpdateReason; }
234 inline bool LastUpdateReasonHasBeenSet() const { return m_lastUpdateReasonHasBeenSet; }
235 template <typename LastUpdateReasonT = Aws::String>
236 void SetLastUpdateReason(LastUpdateReasonT&& value) {
237 m_lastUpdateReasonHasBeenSet = true;
238 m_lastUpdateReason = std::forward<LastUpdateReasonT>(value);
239 }
240 template <typename LastUpdateReasonT = Aws::String>
241 SecurityControl& WithLastUpdateReason(LastUpdateReasonT&& value) {
242 SetLastUpdateReason(std::forward<LastUpdateReasonT>(value));
243 return *this;
244 }
246
248
252 inline SecurityControlsProvider GetProvider() const { return m_provider; }
253 inline bool ProviderHasBeenSet() const { return m_providerHasBeenSet; }
255 m_providerHasBeenSet = true;
256 m_provider = value;
257 }
259 SetProvider(value);
260 return *this;
261 }
263 private:
264 Aws::String m_securityControlId;
265
266 Aws::String m_securityControlArn;
267
268 Aws::String m_title;
269
270 Aws::String m_description;
271
272 Aws::String m_remediationUrl;
273
274 SeverityRating m_severityRating{SeverityRating::NOT_SET};
275
276 ControlStatus m_securityControlStatus{ControlStatus::NOT_SET};
277
278 UpdateStatus m_updateStatus{UpdateStatus::NOT_SET};
279
281
282 Aws::String m_lastUpdateReason;
283
285 bool m_securityControlIdHasBeenSet = false;
286 bool m_securityControlArnHasBeenSet = false;
287 bool m_titleHasBeenSet = false;
288 bool m_descriptionHasBeenSet = false;
289 bool m_remediationUrlHasBeenSet = false;
290 bool m_severityRatingHasBeenSet = false;
291 bool m_securityControlStatusHasBeenSet = false;
292 bool m_updateStatusHasBeenSet = false;
293 bool m_parametersHasBeenSet = false;
294 bool m_lastUpdateReasonHasBeenSet = false;
295 bool m_providerHasBeenSet = false;
296};
297
298} // namespace Model
299} // namespace SecurityHub
300} // namespace Aws
SecurityControl & WithDescription(DescriptionT &&value)
SecurityControl & WithLastUpdateReason(LastUpdateReasonT &&value)
SecurityControl & WithProvider(SecurityControlsProvider value)
const Aws::Map< Aws::String, ParameterConfiguration > & GetParameters() const
void SetSecurityControlArn(SecurityControlArnT &&value)
SecurityControl & WithSecurityControlStatus(ControlStatus value)
SecurityControl & WithTitle(TitleT &&value)
SecurityControl & WithSecurityControlArn(SecurityControlArnT &&value)
SecurityControl & WithRemediationUrl(RemediationUrlT &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
SecurityControl & WithSecurityControlId(SecurityControlIdT &&value)
AWS_SECURITYHUB_API SecurityControl & operator=(Aws::Utils::Json::JsonView jsonValue)
SecurityControl & AddParameters(ParametersKeyT &&key, ParametersValueT &&value)
void SetRemediationUrl(RemediationUrlT &&value)
SecurityControl & WithSeverityRating(SeverityRating value)
AWS_SECURITYHUB_API SecurityControl(Aws::Utils::Json::JsonView jsonValue)
void SetDescription(DescriptionT &&value)
SecurityControlsProvider GetProvider() const
void SetProvider(SecurityControlsProvider value)
const Aws::String & GetLastUpdateReason() const
void SetSecurityControlId(SecurityControlIdT &&value)
AWS_SECURITYHUB_API SecurityControl()=default
void SetLastUpdateReason(LastUpdateReasonT &&value)
const Aws::String & GetSecurityControlArn() const
SecurityControl & WithUpdateStatus(UpdateStatus value)
const Aws::String & GetDescription() const
const Aws::String & GetTitle() const
void SetSecurityControlStatus(ControlStatus value)
const Aws::String & GetSecurityControlId() const
SecurityControl & WithParameters(ParametersT &&value)
void SetSeverityRating(SeverityRating value)
const Aws::String & GetRemediationUrl() 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
Aws::Utils::Json::JsonValue JsonValue