/* * 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 securityhub-2018-10-26.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.SecurityHub.Model { /// /// Configuration for a lifecycle rule. /// public partial class AwsS3BucketBucketLifecycleConfigurationRulesDetails { private AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails _abortIncompleteMultipartUpload; private string _expirationDate; private int? _expirationInDays; private bool? _expiredObjectDeleteMarker; private AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails _filter; private string _id; private int? _noncurrentVersionExpirationInDays; private List _noncurrentVersionTransitions = new List(); private string _prefix; private string _status; private List _transitions = new List(); /// /// Gets and sets the property AbortIncompleteMultipartUpload. /// /// How Amazon S3 responds when a multipart upload is incomplete. Specifically, provides /// a number of days before Amazon S3 cancels the entire upload. /// /// public AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetails AbortIncompleteMultipartUpload { get { return this._abortIncompleteMultipartUpload; } set { this._abortIncompleteMultipartUpload = value; } } // Check to see if AbortIncompleteMultipartUpload property is set internal bool IsSetAbortIncompleteMultipartUpload() { return this._abortIncompleteMultipartUpload != null; } /// /// Gets and sets the property ExpirationDate. /// /// The date when objects are moved or deleted. /// /// /// /// Uses the date-time format specified in RFC /// 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, /// and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z. /// /// public string ExpirationDate { get { return this._expirationDate; } set { this._expirationDate = value; } } // Check to see if ExpirationDate property is set internal bool IsSetExpirationDate() { return this._expirationDate != null; } /// /// Gets and sets the property ExpirationInDays. /// /// The length in days of the lifetime for objects that are subject to the rule. /// /// public int ExpirationInDays { get { return this._expirationInDays.GetValueOrDefault(); } set { this._expirationInDays = value; } } // Check to see if ExpirationInDays property is set internal bool IsSetExpirationInDays() { return this._expirationInDays.HasValue; } /// /// Gets and sets the property ExpiredObjectDeleteMarker. /// /// Whether Amazon S3 removes a delete marker that has no noncurrent versions. If set /// to true, the delete marker is expired. If set to false, /// the policy takes no action. /// /// /// /// If you provide ExpiredObjectDeleteMarker, you cannot provide ExpirationInDays /// or ExpirationDate. /// /// public bool ExpiredObjectDeleteMarker { get { return this._expiredObjectDeleteMarker.GetValueOrDefault(); } set { this._expiredObjectDeleteMarker = value; } } // Check to see if ExpiredObjectDeleteMarker property is set internal bool IsSetExpiredObjectDeleteMarker() { return this._expiredObjectDeleteMarker.HasValue; } /// /// Gets and sets the property Filter. /// /// Identifies the objects that a rule applies to. /// /// public AwsS3BucketBucketLifecycleConfigurationRulesFilterDetails Filter { get { return this._filter; } set { this._filter = value; } } // Check to see if Filter property is set internal bool IsSetFilter() { return this._filter != null; } /// /// Gets and sets the property ID. /// /// The unique identifier of the rule. /// /// public string ID { get { return this._id; } set { this._id = value; } } // Check to see if ID property is set internal bool IsSetID() { return this._id != null; } /// /// Gets and sets the property NoncurrentVersionExpirationInDays. /// /// The number of days that an object is noncurrent before Amazon S3 can perform the associated /// action. /// /// public int NoncurrentVersionExpirationInDays { get { return this._noncurrentVersionExpirationInDays.GetValueOrDefault(); } set { this._noncurrentVersionExpirationInDays = value; } } // Check to see if NoncurrentVersionExpirationInDays property is set internal bool IsSetNoncurrentVersionExpirationInDays() { return this._noncurrentVersionExpirationInDays.HasValue; } /// /// Gets and sets the property NoncurrentVersionTransitions. /// /// Transition rules that describe when noncurrent objects transition to a specified storage /// class. /// /// public List NoncurrentVersionTransitions { get { return this._noncurrentVersionTransitions; } set { this._noncurrentVersionTransitions = value; } } // Check to see if NoncurrentVersionTransitions property is set internal bool IsSetNoncurrentVersionTransitions() { return this._noncurrentVersionTransitions != null && this._noncurrentVersionTransitions.Count > 0; } /// /// Gets and sets the property Prefix. /// /// A prefix that identifies one or more objects that the rule applies to. /// /// public string Prefix { get { return this._prefix; } set { this._prefix = value; } } // Check to see if Prefix property is set internal bool IsSetPrefix() { return this._prefix != null; } /// /// Gets and sets the property Status. /// /// The current status of the rule. Indicates whether the rule is currently being applied. /// /// public string Status { get { return this._status; } set { this._status = value; } } // Check to see if Status property is set internal bool IsSetStatus() { return this._status != null; } /// /// Gets and sets the property Transitions. /// /// Transition rules that indicate when objects transition to a specified storage class. /// /// public List Transitions { get { return this._transitions; } set { this._transitions = value; } } // Check to see if Transitions property is set internal bool IsSetTransitions() { return this._transitions != null && this._transitions.Count > 0; } } }