AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Vulnerability.h
1
6#pragma once
7#include <aws/inspector2/Inspector2_EXPORTS.h>
8#include <aws/inspector2/model/AtigData.h>
9#include <aws/inspector2/model/CisaData.h>
10#include <aws/inspector2/model/Cvss2.h>
11#include <aws/inspector2/model/Cvss3.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/inspector2/model/Epss.h>
15#include <aws/inspector2/model/ExploitObserved.h>
16#include <aws/inspector2/model/VulnerabilitySource.h>
17#include <aws/core/utils/DateTime.h>
18#include <utility>
19
20namespace Aws
21{
22namespace Utils
23{
24namespace Json
25{
26 class JsonValue;
27 class JsonView;
28} // namespace Json
29} // namespace Utils
30namespace Inspector2
31{
32namespace Model
33{
34
42 {
43 public:
44 AWS_INSPECTOR2_API Vulnerability() = default;
45 AWS_INSPECTOR2_API Vulnerability(Aws::Utils::Json::JsonView jsonValue);
46 AWS_INSPECTOR2_API Vulnerability& operator=(Aws::Utils::Json::JsonView jsonValue);
47 AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const;
48
49
51
55 inline const AtigData& GetAtigData() const { return m_atigData; }
56 inline bool AtigDataHasBeenSet() const { return m_atigDataHasBeenSet; }
57 template<typename AtigDataT = AtigData>
58 void SetAtigData(AtigDataT&& value) { m_atigDataHasBeenSet = true; m_atigData = std::forward<AtigDataT>(value); }
59 template<typename AtigDataT = AtigData>
60 Vulnerability& WithAtigData(AtigDataT&& value) { SetAtigData(std::forward<AtigDataT>(value)); return *this;}
62
64
68 inline const CisaData& GetCisaData() const { return m_cisaData; }
69 inline bool CisaDataHasBeenSet() const { return m_cisaDataHasBeenSet; }
70 template<typename CisaDataT = CisaData>
71 void SetCisaData(CisaDataT&& value) { m_cisaDataHasBeenSet = true; m_cisaData = std::forward<CisaDataT>(value); }
72 template<typename CisaDataT = CisaData>
73 Vulnerability& WithCisaData(CisaDataT&& value) { SetCisaData(std::forward<CisaDataT>(value)); return *this;}
75
77
81 inline const Cvss2& GetCvss2() const { return m_cvss2; }
82 inline bool Cvss2HasBeenSet() const { return m_cvss2HasBeenSet; }
83 template<typename Cvss2T = Cvss2>
84 void SetCvss2(Cvss2T&& value) { m_cvss2HasBeenSet = true; m_cvss2 = std::forward<Cvss2T>(value); }
85 template<typename Cvss2T = Cvss2>
86 Vulnerability& WithCvss2(Cvss2T&& value) { SetCvss2(std::forward<Cvss2T>(value)); return *this;}
88
90
94 inline const Cvss3& GetCvss3() const { return m_cvss3; }
95 inline bool Cvss3HasBeenSet() const { return m_cvss3HasBeenSet; }
96 template<typename Cvss3T = Cvss3>
97 void SetCvss3(Cvss3T&& value) { m_cvss3HasBeenSet = true; m_cvss3 = std::forward<Cvss3T>(value); }
98 template<typename Cvss3T = Cvss3>
99 Vulnerability& WithCvss3(Cvss3T&& value) { SetCvss3(std::forward<Cvss3T>(value)); return *this;}
101
103
106 inline const Aws::Vector<Aws::String>& GetCwes() const { return m_cwes; }
107 inline bool CwesHasBeenSet() const { return m_cwesHasBeenSet; }
108 template<typename CwesT = Aws::Vector<Aws::String>>
109 void SetCwes(CwesT&& value) { m_cwesHasBeenSet = true; m_cwes = std::forward<CwesT>(value); }
110 template<typename CwesT = Aws::Vector<Aws::String>>
111 Vulnerability& WithCwes(CwesT&& value) { SetCwes(std::forward<CwesT>(value)); return *this;}
112 template<typename CwesT = Aws::String>
113 Vulnerability& AddCwes(CwesT&& value) { m_cwesHasBeenSet = true; m_cwes.emplace_back(std::forward<CwesT>(value)); return *this; }
115
117
120 inline const Aws::String& GetDescription() const { return m_description; }
121 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
122 template<typename DescriptionT = Aws::String>
123 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
124 template<typename DescriptionT = Aws::String>
125 Vulnerability& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
127
129
132 inline const Aws::Vector<Aws::String>& GetDetectionPlatforms() const { return m_detectionPlatforms; }
133 inline bool DetectionPlatformsHasBeenSet() const { return m_detectionPlatformsHasBeenSet; }
134 template<typename DetectionPlatformsT = Aws::Vector<Aws::String>>
135 void SetDetectionPlatforms(DetectionPlatformsT&& value) { m_detectionPlatformsHasBeenSet = true; m_detectionPlatforms = std::forward<DetectionPlatformsT>(value); }
136 template<typename DetectionPlatformsT = Aws::Vector<Aws::String>>
137 Vulnerability& WithDetectionPlatforms(DetectionPlatformsT&& value) { SetDetectionPlatforms(std::forward<DetectionPlatformsT>(value)); return *this;}
138 template<typename DetectionPlatformsT = Aws::String>
139 Vulnerability& AddDetectionPlatforms(DetectionPlatformsT&& value) { m_detectionPlatformsHasBeenSet = true; m_detectionPlatforms.emplace_back(std::forward<DetectionPlatformsT>(value)); return *this; }
141
143
147 inline const Epss& GetEpss() const { return m_epss; }
148 inline bool EpssHasBeenSet() const { return m_epssHasBeenSet; }
149 template<typename EpssT = Epss>
150 void SetEpss(EpssT&& value) { m_epssHasBeenSet = true; m_epss = std::forward<EpssT>(value); }
151 template<typename EpssT = Epss>
152 Vulnerability& WithEpss(EpssT&& value) { SetEpss(std::forward<EpssT>(value)); return *this;}
154
156
159 inline const ExploitObserved& GetExploitObserved() const { return m_exploitObserved; }
160 inline bool ExploitObservedHasBeenSet() const { return m_exploitObservedHasBeenSet; }
161 template<typename ExploitObservedT = ExploitObserved>
162 void SetExploitObserved(ExploitObservedT&& value) { m_exploitObservedHasBeenSet = true; m_exploitObserved = std::forward<ExploitObservedT>(value); }
163 template<typename ExploitObservedT = ExploitObserved>
164 Vulnerability& WithExploitObserved(ExploitObservedT&& value) { SetExploitObserved(std::forward<ExploitObservedT>(value)); return *this;}
166
168
171 inline const Aws::String& GetId() const { return m_id; }
172 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
173 template<typename IdT = Aws::String>
174 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
175 template<typename IdT = Aws::String>
176 Vulnerability& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
178
180
183 inline const Aws::Vector<Aws::String>& GetReferenceUrls() const { return m_referenceUrls; }
184 inline bool ReferenceUrlsHasBeenSet() const { return m_referenceUrlsHasBeenSet; }
185 template<typename ReferenceUrlsT = Aws::Vector<Aws::String>>
186 void SetReferenceUrls(ReferenceUrlsT&& value) { m_referenceUrlsHasBeenSet = true; m_referenceUrls = std::forward<ReferenceUrlsT>(value); }
187 template<typename ReferenceUrlsT = Aws::Vector<Aws::String>>
188 Vulnerability& WithReferenceUrls(ReferenceUrlsT&& value) { SetReferenceUrls(std::forward<ReferenceUrlsT>(value)); return *this;}
189 template<typename ReferenceUrlsT = Aws::String>
190 Vulnerability& AddReferenceUrls(ReferenceUrlsT&& value) { m_referenceUrlsHasBeenSet = true; m_referenceUrls.emplace_back(std::forward<ReferenceUrlsT>(value)); return *this; }
192
194
197 inline const Aws::Vector<Aws::String>& GetRelatedVulnerabilities() const { return m_relatedVulnerabilities; }
198 inline bool RelatedVulnerabilitiesHasBeenSet() const { return m_relatedVulnerabilitiesHasBeenSet; }
199 template<typename RelatedVulnerabilitiesT = Aws::Vector<Aws::String>>
200 void SetRelatedVulnerabilities(RelatedVulnerabilitiesT&& value) { m_relatedVulnerabilitiesHasBeenSet = true; m_relatedVulnerabilities = std::forward<RelatedVulnerabilitiesT>(value); }
201 template<typename RelatedVulnerabilitiesT = Aws::Vector<Aws::String>>
202 Vulnerability& WithRelatedVulnerabilities(RelatedVulnerabilitiesT&& value) { SetRelatedVulnerabilities(std::forward<RelatedVulnerabilitiesT>(value)); return *this;}
203 template<typename RelatedVulnerabilitiesT = Aws::String>
204 Vulnerability& AddRelatedVulnerabilities(RelatedVulnerabilitiesT&& value) { m_relatedVulnerabilitiesHasBeenSet = true; m_relatedVulnerabilities.emplace_back(std::forward<RelatedVulnerabilitiesT>(value)); return *this; }
206
208
213 inline VulnerabilitySource GetSource() const { return m_source; }
214 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
215 inline void SetSource(VulnerabilitySource value) { m_sourceHasBeenSet = true; m_source = value; }
216 inline Vulnerability& WithSource(VulnerabilitySource value) { SetSource(value); return *this;}
218
220
223 inline const Aws::String& GetSourceUrl() const { return m_sourceUrl; }
224 inline bool SourceUrlHasBeenSet() const { return m_sourceUrlHasBeenSet; }
225 template<typename SourceUrlT = Aws::String>
226 void SetSourceUrl(SourceUrlT&& value) { m_sourceUrlHasBeenSet = true; m_sourceUrl = std::forward<SourceUrlT>(value); }
227 template<typename SourceUrlT = Aws::String>
228 Vulnerability& WithSourceUrl(SourceUrlT&& value) { SetSourceUrl(std::forward<SourceUrlT>(value)); return *this;}
230
232
235 inline const Aws::Utils::DateTime& GetVendorCreatedAt() const { return m_vendorCreatedAt; }
236 inline bool VendorCreatedAtHasBeenSet() const { return m_vendorCreatedAtHasBeenSet; }
237 template<typename VendorCreatedAtT = Aws::Utils::DateTime>
238 void SetVendorCreatedAt(VendorCreatedAtT&& value) { m_vendorCreatedAtHasBeenSet = true; m_vendorCreatedAt = std::forward<VendorCreatedAtT>(value); }
239 template<typename VendorCreatedAtT = Aws::Utils::DateTime>
240 Vulnerability& WithVendorCreatedAt(VendorCreatedAtT&& value) { SetVendorCreatedAt(std::forward<VendorCreatedAtT>(value)); return *this;}
242
244
247 inline const Aws::String& GetVendorSeverity() const { return m_vendorSeverity; }
248 inline bool VendorSeverityHasBeenSet() const { return m_vendorSeverityHasBeenSet; }
249 template<typename VendorSeverityT = Aws::String>
250 void SetVendorSeverity(VendorSeverityT&& value) { m_vendorSeverityHasBeenSet = true; m_vendorSeverity = std::forward<VendorSeverityT>(value); }
251 template<typename VendorSeverityT = Aws::String>
252 Vulnerability& WithVendorSeverity(VendorSeverityT&& value) { SetVendorSeverity(std::forward<VendorSeverityT>(value)); return *this;}
254
256
259 inline const Aws::Utils::DateTime& GetVendorUpdatedAt() const { return m_vendorUpdatedAt; }
260 inline bool VendorUpdatedAtHasBeenSet() const { return m_vendorUpdatedAtHasBeenSet; }
261 template<typename VendorUpdatedAtT = Aws::Utils::DateTime>
262 void SetVendorUpdatedAt(VendorUpdatedAtT&& value) { m_vendorUpdatedAtHasBeenSet = true; m_vendorUpdatedAt = std::forward<VendorUpdatedAtT>(value); }
263 template<typename VendorUpdatedAtT = Aws::Utils::DateTime>
264 Vulnerability& WithVendorUpdatedAt(VendorUpdatedAtT&& value) { SetVendorUpdatedAt(std::forward<VendorUpdatedAtT>(value)); return *this;}
266 private:
267
268 AtigData m_atigData;
269 bool m_atigDataHasBeenSet = false;
270
271 CisaData m_cisaData;
272 bool m_cisaDataHasBeenSet = false;
273
274 Cvss2 m_cvss2;
275 bool m_cvss2HasBeenSet = false;
276
277 Cvss3 m_cvss3;
278 bool m_cvss3HasBeenSet = false;
279
281 bool m_cwesHasBeenSet = false;
282
283 Aws::String m_description;
284 bool m_descriptionHasBeenSet = false;
285
286 Aws::Vector<Aws::String> m_detectionPlatforms;
287 bool m_detectionPlatformsHasBeenSet = false;
288
289 Epss m_epss;
290 bool m_epssHasBeenSet = false;
291
292 ExploitObserved m_exploitObserved;
293 bool m_exploitObservedHasBeenSet = false;
294
295 Aws::String m_id;
296 bool m_idHasBeenSet = false;
297
298 Aws::Vector<Aws::String> m_referenceUrls;
299 bool m_referenceUrlsHasBeenSet = false;
300
301 Aws::Vector<Aws::String> m_relatedVulnerabilities;
302 bool m_relatedVulnerabilitiesHasBeenSet = false;
303
305 bool m_sourceHasBeenSet = false;
306
307 Aws::String m_sourceUrl;
308 bool m_sourceUrlHasBeenSet = false;
309
310 Aws::Utils::DateTime m_vendorCreatedAt{};
311 bool m_vendorCreatedAtHasBeenSet = false;
312
313 Aws::String m_vendorSeverity;
314 bool m_vendorSeverityHasBeenSet = false;
315
316 Aws::Utils::DateTime m_vendorUpdatedAt{};
317 bool m_vendorUpdatedAtHasBeenSet = false;
318 };
319
320} // namespace Model
321} // namespace Inspector2
322} // namespace Aws
Vulnerability & WithEpss(EpssT &&value)
void SetExploitObserved(ExploitObservedT &&value)
Vulnerability & WithDescription(DescriptionT &&value)
const Aws::Vector< Aws::String > & GetCwes() const
void SetSource(VulnerabilitySource value)
Vulnerability & WithVendorSeverity(VendorSeverityT &&value)
AWS_INSPECTOR2_API Vulnerability & operator=(Aws::Utils::Json::JsonView jsonValue)
const AtigData & GetAtigData() const
Vulnerability & WithCvss3(Cvss3T &&value)
void SetVendorUpdatedAt(VendorUpdatedAtT &&value)
Vulnerability & WithReferenceUrls(ReferenceUrlsT &&value)
Vulnerability & AddRelatedVulnerabilities(RelatedVulnerabilitiesT &&value)
Vulnerability & AddReferenceUrls(ReferenceUrlsT &&value)
AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const
Vulnerability & AddDetectionPlatforms(DetectionPlatformsT &&value)
Vulnerability & WithCvss2(Cvss2T &&value)
void SetVendorSeverity(VendorSeverityT &&value)
void SetSourceUrl(SourceUrlT &&value)
Vulnerability & WithVendorUpdatedAt(VendorUpdatedAtT &&value)
Vulnerability & WithId(IdT &&value)
void SetVendorCreatedAt(VendorCreatedAtT &&value)
AWS_INSPECTOR2_API Vulnerability(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetVendorUpdatedAt() const
void SetAtigData(AtigDataT &&value)
const Aws::String & GetId() const
Vulnerability & AddCwes(CwesT &&value)
Vulnerability & WithSourceUrl(SourceUrlT &&value)
const Aws::String & GetVendorSeverity() const
Vulnerability & WithVendorCreatedAt(VendorCreatedAtT &&value)
Vulnerability & WithDetectionPlatforms(DetectionPlatformsT &&value)
void SetRelatedVulnerabilities(RelatedVulnerabilitiesT &&value)
const Aws::Vector< Aws::String > & GetDetectionPlatforms() const
const Aws::Vector< Aws::String > & GetReferenceUrls() const
const Aws::String & GetSourceUrl() const
Vulnerability & WithCwes(CwesT &&value)
void SetReferenceUrls(ReferenceUrlsT &&value)
Vulnerability & WithExploitObserved(ExploitObservedT &&value)
const Aws::String & GetDescription() const
const ExploitObserved & GetExploitObserved() const
void SetDescription(DescriptionT &&value)
Vulnerability & WithAtigData(AtigDataT &&value)
void SetCisaData(CisaDataT &&value)
VulnerabilitySource GetSource() const
Vulnerability & WithRelatedVulnerabilities(RelatedVulnerabilitiesT &&value)
AWS_INSPECTOR2_API Vulnerability()=default
Vulnerability & WithSource(VulnerabilitySource value)
const CisaData & GetCisaData() const
void SetDetectionPlatforms(DetectionPlatformsT &&value)
const Aws::Vector< Aws::String > & GetRelatedVulnerabilities() const
Vulnerability & WithCisaData(CisaDataT &&value)
const Aws::Utils::DateTime & GetVendorCreatedAt() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue