/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.imagebuilder.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Information about package vulnerability findings. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class PackageVulnerabilityDetails implements Serializable, Cloneable, StructuredPojo { /** ** A unique identifier for this vulnerability. *
*/ private String vulnerabilityId; /** ** The packages that this vulnerability impacts. *
*/ private java.util.List* The source of the vulnerability information. *
*/ private String source; /** ** CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. *
*/ private java.util.List* Vulnerabilities that are often related to the findings for the package. *
*/ private java.util.List* A link to the source of the vulnerability information. *
*/ private String sourceUrl; /** ** The severity that the vendor assigned to this vulnerability type. *
*/ private String vendorSeverity; /** ** The date and time when this vulnerability was first added to the vendor's database. *
*/ private java.util.Date vendorCreatedAt; /** ** The date and time when the vendor last updated this vulnerability in their database. *
*/ private java.util.Date vendorUpdatedAt; /** ** Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. *
*/ private java.util.List* A unique identifier for this vulnerability. *
* * @param vulnerabilityId * A unique identifier for this vulnerability. */ public void setVulnerabilityId(String vulnerabilityId) { this.vulnerabilityId = vulnerabilityId; } /** ** A unique identifier for this vulnerability. *
* * @return A unique identifier for this vulnerability. */ public String getVulnerabilityId() { return this.vulnerabilityId; } /** ** A unique identifier for this vulnerability. *
* * @param vulnerabilityId * A unique identifier for this vulnerability. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withVulnerabilityId(String vulnerabilityId) { setVulnerabilityId(vulnerabilityId); return this; } /** ** The packages that this vulnerability impacts. *
* * @return The packages that this vulnerability impacts. */ public java.util.List* The packages that this vulnerability impacts. *
* * @param vulnerablePackages * The packages that this vulnerability impacts. */ public void setVulnerablePackages(java.util.Collection* The packages that this vulnerability impacts. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setVulnerablePackages(java.util.Collection)} or {@link #withVulnerablePackages(java.util.Collection)} if * you want to override the existing values. *
* * @param vulnerablePackages * The packages that this vulnerability impacts. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withVulnerablePackages(VulnerablePackage... vulnerablePackages) { if (this.vulnerablePackages == null) { setVulnerablePackages(new java.util.ArrayList* The packages that this vulnerability impacts. *
* * @param vulnerablePackages * The packages that this vulnerability impacts. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withVulnerablePackages(java.util.Collection* The source of the vulnerability information. *
* * @param source * The source of the vulnerability information. */ public void setSource(String source) { this.source = source; } /** ** The source of the vulnerability information. *
* * @return The source of the vulnerability information. */ public String getSource() { return this.source; } /** ** The source of the vulnerability information. *
* * @param source * The source of the vulnerability information. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withSource(String source) { setSource(source); return this; } /** ** CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. *
* * @return CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. */ public java.util.List* CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. *
* * @param cvss * CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. */ public void setCvss(java.util.Collection* CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setCvss(java.util.Collection)} or {@link #withCvss(java.util.Collection)} if you want to override the * existing values. *
* * @param cvss * CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withCvss(CvssScore... cvss) { if (this.cvss == null) { setCvss(new java.util.ArrayList* CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. *
* * @param cvss * CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a package. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withCvss(java.util.Collection* Vulnerabilities that are often related to the findings for the package. *
* * @return Vulnerabilities that are often related to the findings for the package. */ public java.util.List* Vulnerabilities that are often related to the findings for the package. *
* * @param relatedVulnerabilities * Vulnerabilities that are often related to the findings for the package. */ public void setRelatedVulnerabilities(java.util.Collection* Vulnerabilities that are often related to the findings for the package. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setRelatedVulnerabilities(java.util.Collection)} or * {@link #withRelatedVulnerabilities(java.util.Collection)} if you want to override the existing values. *
* * @param relatedVulnerabilities * Vulnerabilities that are often related to the findings for the package. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withRelatedVulnerabilities(String... relatedVulnerabilities) { if (this.relatedVulnerabilities == null) { setRelatedVulnerabilities(new java.util.ArrayList* Vulnerabilities that are often related to the findings for the package. *
* * @param relatedVulnerabilities * Vulnerabilities that are often related to the findings for the package. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withRelatedVulnerabilities(java.util.Collection* A link to the source of the vulnerability information. *
* * @param sourceUrl * A link to the source of the vulnerability information. */ public void setSourceUrl(String sourceUrl) { this.sourceUrl = sourceUrl; } /** ** A link to the source of the vulnerability information. *
* * @return A link to the source of the vulnerability information. */ public String getSourceUrl() { return this.sourceUrl; } /** ** A link to the source of the vulnerability information. *
* * @param sourceUrl * A link to the source of the vulnerability information. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withSourceUrl(String sourceUrl) { setSourceUrl(sourceUrl); return this; } /** ** The severity that the vendor assigned to this vulnerability type. *
* * @param vendorSeverity * The severity that the vendor assigned to this vulnerability type. */ public void setVendorSeverity(String vendorSeverity) { this.vendorSeverity = vendorSeverity; } /** ** The severity that the vendor assigned to this vulnerability type. *
* * @return The severity that the vendor assigned to this vulnerability type. */ public String getVendorSeverity() { return this.vendorSeverity; } /** ** The severity that the vendor assigned to this vulnerability type. *
* * @param vendorSeverity * The severity that the vendor assigned to this vulnerability type. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withVendorSeverity(String vendorSeverity) { setVendorSeverity(vendorSeverity); return this; } /** ** The date and time when this vulnerability was first added to the vendor's database. *
* * @param vendorCreatedAt * The date and time when this vulnerability was first added to the vendor's database. */ public void setVendorCreatedAt(java.util.Date vendorCreatedAt) { this.vendorCreatedAt = vendorCreatedAt; } /** ** The date and time when this vulnerability was first added to the vendor's database. *
* * @return The date and time when this vulnerability was first added to the vendor's database. */ public java.util.Date getVendorCreatedAt() { return this.vendorCreatedAt; } /** ** The date and time when this vulnerability was first added to the vendor's database. *
* * @param vendorCreatedAt * The date and time when this vulnerability was first added to the vendor's database. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withVendorCreatedAt(java.util.Date vendorCreatedAt) { setVendorCreatedAt(vendorCreatedAt); return this; } /** ** The date and time when the vendor last updated this vulnerability in their database. *
* * @param vendorUpdatedAt * The date and time when the vendor last updated this vulnerability in their database. */ public void setVendorUpdatedAt(java.util.Date vendorUpdatedAt) { this.vendorUpdatedAt = vendorUpdatedAt; } /** ** The date and time when the vendor last updated this vulnerability in their database. *
* * @return The date and time when the vendor last updated this vulnerability in their database. */ public java.util.Date getVendorUpdatedAt() { return this.vendorUpdatedAt; } /** ** The date and time when the vendor last updated this vulnerability in their database. *
* * @param vendorUpdatedAt * The date and time when the vendor last updated this vulnerability in their database. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withVendorUpdatedAt(java.util.Date vendorUpdatedAt) { setVendorUpdatedAt(vendorUpdatedAt); return this; } /** ** Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. *
* * @return Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for * the package. */ public java.util.List* Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. *
* * @param referenceUrls * Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. */ public void setReferenceUrls(java.util.Collection* Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setReferenceUrls(java.util.Collection)} or {@link #withReferenceUrls(java.util.Collection)} if you want * to override the existing values. *
* * @param referenceUrls * Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withReferenceUrls(String... referenceUrls) { if (this.referenceUrls == null) { setReferenceUrls(new java.util.ArrayList* Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. *
* * @param referenceUrls * Links to web pages that contain details about the vulnerabilities that Amazon Inspector identified for the * package. * @return Returns a reference to this object so that method calls can be chained together. */ public PackageVulnerabilityDetails withReferenceUrls(java.util.Collection