AWS SDK for C++

AWS SDK for C++ Version 1.11.718

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/SeverityRating.h>
13#include <aws/securityhub/model/UpdateStatus.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace SecurityHub {
25namespace Model {
26
34 public:
35 AWS_SECURITYHUB_API SecurityControl() = default;
36 AWS_SECURITYHUB_API SecurityControl(Aws::Utils::Json::JsonView jsonValue);
37 AWS_SECURITYHUB_API SecurityControl& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
46 inline const Aws::String& GetSecurityControlId() const { return m_securityControlId; }
47 inline bool SecurityControlIdHasBeenSet() const { return m_securityControlIdHasBeenSet; }
48 template <typename SecurityControlIdT = Aws::String>
49 void SetSecurityControlId(SecurityControlIdT&& value) {
50 m_securityControlIdHasBeenSet = true;
51 m_securityControlId = std::forward<SecurityControlIdT>(value);
52 }
53 template <typename SecurityControlIdT = Aws::String>
54 SecurityControl& WithSecurityControlId(SecurityControlIdT&& value) {
55 SetSecurityControlId(std::forward<SecurityControlIdT>(value));
56 return *this;
57 }
59
61
67 inline const Aws::String& GetSecurityControlArn() const { return m_securityControlArn; }
68 inline bool SecurityControlArnHasBeenSet() const { return m_securityControlArnHasBeenSet; }
69 template <typename SecurityControlArnT = Aws::String>
70 void SetSecurityControlArn(SecurityControlArnT&& value) {
71 m_securityControlArnHasBeenSet = true;
72 m_securityControlArn = std::forward<SecurityControlArnT>(value);
73 }
74 template <typename SecurityControlArnT = Aws::String>
75 SecurityControl& WithSecurityControlArn(SecurityControlArnT&& value) {
76 SetSecurityControlArn(std::forward<SecurityControlArnT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::String& GetTitle() const { return m_title; }
86 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
87 template <typename TitleT = Aws::String>
88 void SetTitle(TitleT&& value) {
89 m_titleHasBeenSet = true;
90 m_title = std::forward<TitleT>(value);
91 }
92 template <typename TitleT = Aws::String>
93 SecurityControl& WithTitle(TitleT&& value) {
94 SetTitle(std::forward<TitleT>(value));
95 return *this;
96 }
98
100
106 inline const Aws::String& GetDescription() const { return m_description; }
107 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
108 template <typename DescriptionT = Aws::String>
109 void SetDescription(DescriptionT&& value) {
110 m_descriptionHasBeenSet = true;
111 m_description = std::forward<DescriptionT>(value);
112 }
113 template <typename DescriptionT = Aws::String>
114 SecurityControl& WithDescription(DescriptionT&& value) {
115 SetDescription(std::forward<DescriptionT>(value));
116 return *this;
117 }
119
121
125 inline const Aws::String& GetRemediationUrl() const { return m_remediationUrl; }
126 inline bool RemediationUrlHasBeenSet() const { return m_remediationUrlHasBeenSet; }
127 template <typename RemediationUrlT = Aws::String>
128 void SetRemediationUrl(RemediationUrlT&& value) {
129 m_remediationUrlHasBeenSet = true;
130 m_remediationUrl = std::forward<RemediationUrlT>(value);
131 }
132 template <typename RemediationUrlT = Aws::String>
133 SecurityControl& WithRemediationUrl(RemediationUrlT&& value) {
134 SetRemediationUrl(std::forward<RemediationUrlT>(value));
135 return *this;
136 }
138
140
146 inline SeverityRating GetSeverityRating() const { return m_severityRating; }
147 inline bool SeverityRatingHasBeenSet() const { return m_severityRatingHasBeenSet; }
149 m_severityRatingHasBeenSet = true;
150 m_severityRating = value;
151 }
153 SetSeverityRating(value);
154 return *this;
155 }
157
159
162 inline ControlStatus GetSecurityControlStatus() const { return m_securityControlStatus; }
163 inline bool SecurityControlStatusHasBeenSet() const { return m_securityControlStatusHasBeenSet; }
165 m_securityControlStatusHasBeenSet = true;
166 m_securityControlStatus = value;
167 }
170 return *this;
171 }
173
175
182 inline UpdateStatus GetUpdateStatus() const { return m_updateStatus; }
183 inline bool UpdateStatusHasBeenSet() const { return m_updateStatusHasBeenSet; }
184 inline void SetUpdateStatus(UpdateStatus value) {
185 m_updateStatusHasBeenSet = true;
186 m_updateStatus = value;
187 }
189 SetUpdateStatus(value);
190 return *this;
191 }
193
195
199 inline const Aws::Map<Aws::String, ParameterConfiguration>& GetParameters() const { return m_parameters; }
200 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
201 template <typename ParametersT = Aws::Map<Aws::String, ParameterConfiguration>>
202 void SetParameters(ParametersT&& value) {
203 m_parametersHasBeenSet = true;
204 m_parameters = std::forward<ParametersT>(value);
205 }
206 template <typename ParametersT = Aws::Map<Aws::String, ParameterConfiguration>>
207 SecurityControl& WithParameters(ParametersT&& value) {
208 SetParameters(std::forward<ParametersT>(value));
209 return *this;
210 }
211 template <typename ParametersKeyT = Aws::String, typename ParametersValueT = ParameterConfiguration>
212 SecurityControl& AddParameters(ParametersKeyT&& key, ParametersValueT&& value) {
213 m_parametersHasBeenSet = true;
214 m_parameters.emplace(std::forward<ParametersKeyT>(key), std::forward<ParametersValueT>(value));
215 return *this;
216 }
218
220
230 inline const Aws::String& GetLastUpdateReason() const { return m_lastUpdateReason; }
231 inline bool LastUpdateReasonHasBeenSet() const { return m_lastUpdateReasonHasBeenSet; }
232 template <typename LastUpdateReasonT = Aws::String>
233 void SetLastUpdateReason(LastUpdateReasonT&& value) {
234 m_lastUpdateReasonHasBeenSet = true;
235 m_lastUpdateReason = std::forward<LastUpdateReasonT>(value);
236 }
237 template <typename LastUpdateReasonT = Aws::String>
238 SecurityControl& WithLastUpdateReason(LastUpdateReasonT&& value) {
239 SetLastUpdateReason(std::forward<LastUpdateReasonT>(value));
240 return *this;
241 }
243 private:
244 Aws::String m_securityControlId;
245
246 Aws::String m_securityControlArn;
247
248 Aws::String m_title;
249
250 Aws::String m_description;
251
252 Aws::String m_remediationUrl;
253
254 SeverityRating m_severityRating{SeverityRating::NOT_SET};
255
256 ControlStatus m_securityControlStatus{ControlStatus::NOT_SET};
257
258 UpdateStatus m_updateStatus{UpdateStatus::NOT_SET};
259
261
262 Aws::String m_lastUpdateReason;
263 bool m_securityControlIdHasBeenSet = false;
264 bool m_securityControlArnHasBeenSet = false;
265 bool m_titleHasBeenSet = false;
266 bool m_descriptionHasBeenSet = false;
267 bool m_remediationUrlHasBeenSet = false;
268 bool m_severityRatingHasBeenSet = false;
269 bool m_securityControlStatusHasBeenSet = false;
270 bool m_updateStatusHasBeenSet = false;
271 bool m_parametersHasBeenSet = false;
272 bool m_lastUpdateReasonHasBeenSet = false;
273};
274
275} // namespace Model
276} // namespace SecurityHub
277} // namespace Aws
SecurityControl & WithDescription(DescriptionT &&value)
SecurityControl & WithLastUpdateReason(LastUpdateReasonT &&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)
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