/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about package vulnerability findings.See Also:
* AWS
* API Reference
A unique identifier for this vulnerability.
*/ inline const Aws::String& GetVulnerabilityId() const{ return m_vulnerabilityId; } /** *A unique identifier for this vulnerability.
*/ inline bool VulnerabilityIdHasBeenSet() const { return m_vulnerabilityIdHasBeenSet; } /** *A unique identifier for this vulnerability.
*/ inline void SetVulnerabilityId(const Aws::String& value) { m_vulnerabilityIdHasBeenSet = true; m_vulnerabilityId = value; } /** *A unique identifier for this vulnerability.
*/ inline void SetVulnerabilityId(Aws::String&& value) { m_vulnerabilityIdHasBeenSet = true; m_vulnerabilityId = std::move(value); } /** *A unique identifier for this vulnerability.
*/ inline void SetVulnerabilityId(const char* value) { m_vulnerabilityIdHasBeenSet = true; m_vulnerabilityId.assign(value); } /** *A unique identifier for this vulnerability.
*/ inline PackageVulnerabilityDetails& WithVulnerabilityId(const Aws::String& value) { SetVulnerabilityId(value); return *this;} /** *A unique identifier for this vulnerability.
*/ inline PackageVulnerabilityDetails& WithVulnerabilityId(Aws::String&& value) { SetVulnerabilityId(std::move(value)); return *this;} /** *A unique identifier for this vulnerability.
*/ inline PackageVulnerabilityDetails& WithVulnerabilityId(const char* value) { SetVulnerabilityId(value); return *this;} /** *The packages that this vulnerability impacts.
*/ inline const Aws::VectorThe packages that this vulnerability impacts.
*/ inline bool VulnerablePackagesHasBeenSet() const { return m_vulnerablePackagesHasBeenSet; } /** *The packages that this vulnerability impacts.
*/ inline void SetVulnerablePackages(const Aws::VectorThe packages that this vulnerability impacts.
*/ inline void SetVulnerablePackages(Aws::VectorThe packages that this vulnerability impacts.
*/ inline PackageVulnerabilityDetails& WithVulnerablePackages(const Aws::VectorThe packages that this vulnerability impacts.
*/ inline PackageVulnerabilityDetails& WithVulnerablePackages(Aws::VectorThe packages that this vulnerability impacts.
*/ inline PackageVulnerabilityDetails& AddVulnerablePackages(const VulnerablePackage& value) { m_vulnerablePackagesHasBeenSet = true; m_vulnerablePackages.push_back(value); return *this; } /** *The packages that this vulnerability impacts.
*/ inline PackageVulnerabilityDetails& AddVulnerablePackages(VulnerablePackage&& value) { m_vulnerablePackagesHasBeenSet = true; m_vulnerablePackages.push_back(std::move(value)); return *this; } /** *The source of the vulnerability information.
*/ inline const Aws::String& GetSource() const{ return m_source; } /** *The source of the vulnerability information.
*/ inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } /** *The source of the vulnerability information.
*/ inline void SetSource(const Aws::String& value) { m_sourceHasBeenSet = true; m_source = value; } /** *The source of the vulnerability information.
*/ inline void SetSource(Aws::String&& value) { m_sourceHasBeenSet = true; m_source = std::move(value); } /** *The source of the vulnerability information.
*/ inline void SetSource(const char* value) { m_sourceHasBeenSet = true; m_source.assign(value); } /** *The source of the vulnerability information.
*/ inline PackageVulnerabilityDetails& WithSource(const Aws::String& value) { SetSource(value); return *this;} /** *The source of the vulnerability information.
*/ inline PackageVulnerabilityDetails& WithSource(Aws::String&& value) { SetSource(std::move(value)); return *this;} /** *The source of the vulnerability information.
*/ inline PackageVulnerabilityDetails& WithSource(const char* value) { SetSource(value); return *this;} /** *CVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline const Aws::VectorCVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline bool CvssHasBeenSet() const { return m_cvssHasBeenSet; } /** *CVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline void SetCvss(const Aws::VectorCVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline void SetCvss(Aws::VectorCVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline PackageVulnerabilityDetails& WithCvss(const Aws::VectorCVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline PackageVulnerabilityDetails& WithCvss(Aws::VectorCVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline PackageVulnerabilityDetails& AddCvss(const CvssScore& value) { m_cvssHasBeenSet = true; m_cvss.push_back(value); return *this; } /** *CVSS scores for one or more vulnerabilities that Amazon Inspector identified * for a package.
*/ inline PackageVulnerabilityDetails& AddCvss(CvssScore&& value) { m_cvssHasBeenSet = true; m_cvss.push_back(std::move(value)); return *this; } /** *Vulnerabilities that are often related to the findings for the package.
*/ inline const Aws::VectorVulnerabilities that are often related to the findings for the package.
*/ inline bool RelatedVulnerabilitiesHasBeenSet() const { return m_relatedVulnerabilitiesHasBeenSet; } /** *Vulnerabilities that are often related to the findings for the package.
*/ inline void SetRelatedVulnerabilities(const Aws::VectorVulnerabilities that are often related to the findings for the package.
*/ inline void SetRelatedVulnerabilities(Aws::VectorVulnerabilities that are often related to the findings for the package.
*/ inline PackageVulnerabilityDetails& WithRelatedVulnerabilities(const Aws::VectorVulnerabilities that are often related to the findings for the package.
*/ inline PackageVulnerabilityDetails& WithRelatedVulnerabilities(Aws::VectorVulnerabilities that are often related to the findings for the package.
*/ inline PackageVulnerabilityDetails& AddRelatedVulnerabilities(const Aws::String& value) { m_relatedVulnerabilitiesHasBeenSet = true; m_relatedVulnerabilities.push_back(value); return *this; } /** *Vulnerabilities that are often related to the findings for the package.
*/ inline PackageVulnerabilityDetails& AddRelatedVulnerabilities(Aws::String&& value) { m_relatedVulnerabilitiesHasBeenSet = true; m_relatedVulnerabilities.push_back(std::move(value)); return *this; } /** *Vulnerabilities that are often related to the findings for the package.
*/ inline PackageVulnerabilityDetails& AddRelatedVulnerabilities(const char* value) { m_relatedVulnerabilitiesHasBeenSet = true; m_relatedVulnerabilities.push_back(value); return *this; } /** *A link to the source of the vulnerability information.
*/ inline const Aws::String& GetSourceUrl() const{ return m_sourceUrl; } /** *A link to the source of the vulnerability information.
*/ inline bool SourceUrlHasBeenSet() const { return m_sourceUrlHasBeenSet; } /** *A link to the source of the vulnerability information.
*/ inline void SetSourceUrl(const Aws::String& value) { m_sourceUrlHasBeenSet = true; m_sourceUrl = value; } /** *A link to the source of the vulnerability information.
*/ inline void SetSourceUrl(Aws::String&& value) { m_sourceUrlHasBeenSet = true; m_sourceUrl = std::move(value); } /** *A link to the source of the vulnerability information.
*/ inline void SetSourceUrl(const char* value) { m_sourceUrlHasBeenSet = true; m_sourceUrl.assign(value); } /** *A link to the source of the vulnerability information.
*/ inline PackageVulnerabilityDetails& WithSourceUrl(const Aws::String& value) { SetSourceUrl(value); return *this;} /** *A link to the source of the vulnerability information.
*/ inline PackageVulnerabilityDetails& WithSourceUrl(Aws::String&& value) { SetSourceUrl(std::move(value)); return *this;} /** *A link to the source of the vulnerability information.
*/ inline PackageVulnerabilityDetails& WithSourceUrl(const char* value) { SetSourceUrl(value); return *this;} /** *The severity that the vendor assigned to this vulnerability type.
*/ inline const Aws::String& GetVendorSeverity() const{ return m_vendorSeverity; } /** *The severity that the vendor assigned to this vulnerability type.
*/ inline bool VendorSeverityHasBeenSet() const { return m_vendorSeverityHasBeenSet; } /** *The severity that the vendor assigned to this vulnerability type.
*/ inline void SetVendorSeverity(const Aws::String& value) { m_vendorSeverityHasBeenSet = true; m_vendorSeverity = value; } /** *The severity that the vendor assigned to this vulnerability type.
*/ inline void SetVendorSeverity(Aws::String&& value) { m_vendorSeverityHasBeenSet = true; m_vendorSeverity = std::move(value); } /** *The severity that the vendor assigned to this vulnerability type.
*/ inline void SetVendorSeverity(const char* value) { m_vendorSeverityHasBeenSet = true; m_vendorSeverity.assign(value); } /** *The severity that the vendor assigned to this vulnerability type.
*/ inline PackageVulnerabilityDetails& WithVendorSeverity(const Aws::String& value) { SetVendorSeverity(value); return *this;} /** *The severity that the vendor assigned to this vulnerability type.
*/ inline PackageVulnerabilityDetails& WithVendorSeverity(Aws::String&& value) { SetVendorSeverity(std::move(value)); return *this;} /** *The severity that the vendor assigned to this vulnerability type.
*/ inline PackageVulnerabilityDetails& WithVendorSeverity(const char* value) { SetVendorSeverity(value); return *this;} /** *The date and time when this vulnerability was first added to the vendor's * database.
*/ inline const Aws::Utils::DateTime& GetVendorCreatedAt() const{ return m_vendorCreatedAt; } /** *The date and time when this vulnerability was first added to the vendor's * database.
*/ inline bool VendorCreatedAtHasBeenSet() const { return m_vendorCreatedAtHasBeenSet; } /** *The date and time when this vulnerability was first added to the vendor's * database.
*/ inline void SetVendorCreatedAt(const Aws::Utils::DateTime& value) { m_vendorCreatedAtHasBeenSet = true; m_vendorCreatedAt = value; } /** *The date and time when this vulnerability was first added to the vendor's * database.
*/ inline void SetVendorCreatedAt(Aws::Utils::DateTime&& value) { m_vendorCreatedAtHasBeenSet = true; m_vendorCreatedAt = std::move(value); } /** *The date and time when this vulnerability was first added to the vendor's * database.
*/ inline PackageVulnerabilityDetails& WithVendorCreatedAt(const Aws::Utils::DateTime& value) { SetVendorCreatedAt(value); return *this;} /** *The date and time when this vulnerability was first added to the vendor's * database.
*/ inline PackageVulnerabilityDetails& WithVendorCreatedAt(Aws::Utils::DateTime&& value) { SetVendorCreatedAt(std::move(value)); return *this;} /** *The date and time when the vendor last updated this vulnerability in their * database.
*/ inline const Aws::Utils::DateTime& GetVendorUpdatedAt() const{ return m_vendorUpdatedAt; } /** *The date and time when the vendor last updated this vulnerability in their * database.
*/ inline bool VendorUpdatedAtHasBeenSet() const { return m_vendorUpdatedAtHasBeenSet; } /** *The date and time when the vendor last updated this vulnerability in their * database.
*/ inline void SetVendorUpdatedAt(const Aws::Utils::DateTime& value) { m_vendorUpdatedAtHasBeenSet = true; m_vendorUpdatedAt = value; } /** *The date and time when the vendor last updated this vulnerability in their * database.
*/ inline void SetVendorUpdatedAt(Aws::Utils::DateTime&& value) { m_vendorUpdatedAtHasBeenSet = true; m_vendorUpdatedAt = std::move(value); } /** *The date and time when the vendor last updated this vulnerability in their * database.
*/ inline PackageVulnerabilityDetails& WithVendorUpdatedAt(const Aws::Utils::DateTime& value) { SetVendorUpdatedAt(value); return *this;} /** *The date and time when the vendor last updated this vulnerability in their * database.
*/ inline PackageVulnerabilityDetails& WithVendorUpdatedAt(Aws::Utils::DateTime&& value) { SetVendorUpdatedAt(std::move(value)); return *this;} /** *Links to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline const Aws::VectorLinks to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline bool ReferenceUrlsHasBeenSet() const { return m_referenceUrlsHasBeenSet; } /** *Links to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline void SetReferenceUrls(const Aws::VectorLinks to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline void SetReferenceUrls(Aws::VectorLinks to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline PackageVulnerabilityDetails& WithReferenceUrls(const Aws::VectorLinks to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline PackageVulnerabilityDetails& WithReferenceUrls(Aws::VectorLinks to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline PackageVulnerabilityDetails& AddReferenceUrls(const Aws::String& value) { m_referenceUrlsHasBeenSet = true; m_referenceUrls.push_back(value); return *this; } /** *Links to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline PackageVulnerabilityDetails& AddReferenceUrls(Aws::String&& value) { m_referenceUrlsHasBeenSet = true; m_referenceUrls.push_back(std::move(value)); return *this; } /** *Links to web pages that contain details about the vulnerabilities that Amazon * Inspector identified for the package.
*/ inline PackageVulnerabilityDetails& AddReferenceUrls(const char* value) { m_referenceUrlsHasBeenSet = true; m_referenceUrls.push_back(value); return *this; } private: Aws::String m_vulnerabilityId; bool m_vulnerabilityIdHasBeenSet = false; Aws::Vector