/* * 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 shield-2016-06-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.Shield.Model { /// /// The details of a DDoS attack. /// public partial class AttackDetail { private List _attackCounters = new List(); private string _attackId; private List _attackProperties = new List(); private DateTime? _endTime; private List _mitigations = new List(); private string _resourceArn; private DateTime? _startTime; private List _subResources = new List(); /// /// Gets and sets the property AttackCounters. /// /// List of counters that describe the attack for the specified time period. /// /// public List AttackCounters { get { return this._attackCounters; } set { this._attackCounters = value; } } // Check to see if AttackCounters property is set internal bool IsSetAttackCounters() { return this._attackCounters != null && this._attackCounters.Count > 0; } /// /// Gets and sets the property AttackId. /// /// The unique identifier (ID) of the attack. /// /// [AWSProperty(Min=1, Max=128)] public string AttackId { get { return this._attackId; } set { this._attackId = value; } } // Check to see if AttackId property is set internal bool IsSetAttackId() { return this._attackId != null; } /// /// Gets and sets the property AttackProperties. /// /// The array of objects that provide details of the Shield event. /// /// /// /// For infrastructure layer events (L3 and L4 events), you can view metrics for top contributors /// in Amazon CloudWatch metrics. For more information, see Shield /// metrics and alarms in the WAF Developer Guide. /// /// public List AttackProperties { get { return this._attackProperties; } set { this._attackProperties = value; } } // Check to see if AttackProperties property is set internal bool IsSetAttackProperties() { return this._attackProperties != null && this._attackProperties.Count > 0; } /// /// Gets and sets the property EndTime. /// /// The time the attack ended, in Unix time in seconds. /// /// public DateTime EndTime { get { return this._endTime.GetValueOrDefault(); } set { this._endTime = value; } } // Check to see if EndTime property is set internal bool IsSetEndTime() { return this._endTime.HasValue; } /// /// Gets and sets the property Mitigations. /// /// List of mitigation actions taken for the attack. /// /// public List Mitigations { get { return this._mitigations; } set { this._mitigations = value; } } // Check to see if Mitigations property is set internal bool IsSetMitigations() { return this._mitigations != null && this._mitigations.Count > 0; } /// /// Gets and sets the property ResourceArn. /// /// The ARN (Amazon Resource Name) of the resource that was attacked. /// /// [AWSProperty(Min=1, Max=2048)] public string ResourceArn { get { return this._resourceArn; } set { this._resourceArn = value; } } // Check to see if ResourceArn property is set internal bool IsSetResourceArn() { return this._resourceArn != null; } /// /// Gets and sets the property StartTime. /// /// The time the attack started, in Unix time in seconds. /// /// public DateTime StartTime { get { return this._startTime.GetValueOrDefault(); } set { this._startTime = value; } } // Check to see if StartTime property is set internal bool IsSetStartTime() { return this._startTime.HasValue; } /// /// Gets and sets the property SubResources. /// /// If applicable, additional detail about the resource being attacked, for example, IP /// address or URL. /// /// public List SubResources { get { return this._subResources; } set { this._subResources = value; } } // Check to see if SubResources property is set internal bool IsSetSubResources() { return this._subResources != null && this._subResources.Count > 0; } } }