/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the imagebuilder-2019-12-02.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Imagebuilder.Model
{
///
/// Information about package vulnerability findings.
///
public partial class PackageVulnerabilityDetails
{
private List _cvss = new List();
private List _referenceUrls = new List();
private List _relatedVulnerabilities = new List();
private string _source;
private string _sourceUrl;
private DateTime? _vendorCreatedAt;
private string _vendorSeverity;
private DateTime? _vendorUpdatedAt;
private string _vulnerabilityId;
private List _vulnerablePackages = new List();
///
/// Gets and sets the property Cvss.
///
/// CVSS scores for one or more vulnerabilities that Amazon Inspector identified for a
/// package.
///
///
public List Cvss
{
get { return this._cvss; }
set { this._cvss = value; }
}
// Check to see if Cvss property is set
internal bool IsSetCvss()
{
return this._cvss != null && this._cvss.Count > 0;
}
///
/// Gets and sets the property ReferenceUrls.
///
/// Links to web pages that contain details about the vulnerabilities that Amazon Inspector
/// identified for the package.
///
///
[AWSProperty(Min=1)]
public List ReferenceUrls
{
get { return this._referenceUrls; }
set { this._referenceUrls = value; }
}
// Check to see if ReferenceUrls property is set
internal bool IsSetReferenceUrls()
{
return this._referenceUrls != null && this._referenceUrls.Count > 0;
}
///
/// Gets and sets the property RelatedVulnerabilities.
///
/// Vulnerabilities that are often related to the findings for the package.
///
///
public List RelatedVulnerabilities
{
get { return this._relatedVulnerabilities; }
set { this._relatedVulnerabilities = value; }
}
// Check to see if RelatedVulnerabilities property is set
internal bool IsSetRelatedVulnerabilities()
{
return this._relatedVulnerabilities != null && this._relatedVulnerabilities.Count > 0;
}
///
/// Gets and sets the property Source.
///
/// The source of the vulnerability information.
///
///
[AWSProperty(Min=1, Max=1024)]
public string Source
{
get { return this._source; }
set { this._source = value; }
}
// Check to see if Source property is set
internal bool IsSetSource()
{
return this._source != null;
}
///
/// Gets and sets the property SourceUrl.
///
/// A link to the source of the vulnerability information.
///
///
[AWSProperty(Min=1, Max=1024)]
public string SourceUrl
{
get { return this._sourceUrl; }
set { this._sourceUrl = value; }
}
// Check to see if SourceUrl property is set
internal bool IsSetSourceUrl()
{
return this._sourceUrl != null;
}
///
/// Gets and sets the property VendorCreatedAt.
///
/// The date and time when this vulnerability was first added to the vendor's database.
///
///
public DateTime VendorCreatedAt
{
get { return this._vendorCreatedAt.GetValueOrDefault(); }
set { this._vendorCreatedAt = value; }
}
// Check to see if VendorCreatedAt property is set
internal bool IsSetVendorCreatedAt()
{
return this._vendorCreatedAt.HasValue;
}
///
/// Gets and sets the property VendorSeverity.
///
/// The severity that the vendor assigned to this vulnerability type.
///
///
[AWSProperty(Min=1, Max=1024)]
public string VendorSeverity
{
get { return this._vendorSeverity; }
set { this._vendorSeverity = value; }
}
// Check to see if VendorSeverity property is set
internal bool IsSetVendorSeverity()
{
return this._vendorSeverity != null;
}
///
/// Gets and sets the property VendorUpdatedAt.
///
/// The date and time when the vendor last updated this vulnerability in their database.
///
///
public DateTime VendorUpdatedAt
{
get { return this._vendorUpdatedAt.GetValueOrDefault(); }
set { this._vendorUpdatedAt = value; }
}
// Check to see if VendorUpdatedAt property is set
internal bool IsSetVendorUpdatedAt()
{
return this._vendorUpdatedAt.HasValue;
}
///
/// Gets and sets the property VulnerabilityId.
///
/// A unique identifier for this vulnerability.
///
///
[AWSProperty(Required=true)]
public string VulnerabilityId
{
get { return this._vulnerabilityId; }
set { this._vulnerabilityId = value; }
}
// Check to see if VulnerabilityId property is set
internal bool IsSetVulnerabilityId()
{
return this._vulnerabilityId != null;
}
///
/// Gets and sets the property VulnerablePackages.
///
/// The packages that this vulnerability impacts.
///
///
public List VulnerablePackages
{
get { return this._vulnerablePackages; }
set { this._vulnerablePackages = value; }
}
// Check to see if VulnerablePackages property is set
internal bool IsSetVulnerablePackages()
{
return this._vulnerablePackages != null && this._vulnerablePackages.Count > 0;
}
}
}