/* * 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 elasticfilesystem-2015-02-01.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.ElasticFileSystem.Model { /// /// Container for the parameters to the PutLifecycleConfiguration operation. /// Use this action to manage EFS lifecycle management and EFS Intelligent-Tiering. A /// LifecycleConfiguration consists of one or more LifecyclePolicy /// objects that define the following: /// /// /// /// For more information, see EFS /// Lifecycle Management. /// /// /// /// Each Amazon EFS file system supports one lifecycle configuration, which applies to /// all files in the file system. If a LifecycleConfiguration object already /// exists for the specified file system, a PutLifecycleConfiguration call /// modifies the existing configuration. A PutLifecycleConfiguration call /// with an empty LifecyclePolicies array in the request body deletes any /// existing LifecycleConfiguration and turns off lifecycle management and /// EFS Intelligent-Tiering for the file system. /// /// /// /// In the request, specify the following: /// /// /// /// This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration /// operation. /// /// /// /// To apply a LifecycleConfiguration object to an encrypted file system, /// you need the same Key Management Service permissions as when you created the encrypted /// file system. /// /// public partial class PutLifecycleConfigurationRequest : AmazonElasticFileSystemRequest { private string _fileSystemId; private List _lifecyclePolicies = new List(); /// /// Gets and sets the property FileSystemId. /// /// The ID of the file system for which you are creating the LifecycleConfiguration /// object (String). /// /// [AWSProperty(Required=true, Max=128)] public string FileSystemId { get { return this._fileSystemId; } set { this._fileSystemId = value; } } // Check to see if FileSystemId property is set internal bool IsSetFileSystemId() { return this._fileSystemId != null; } /// /// Gets and sets the property LifecyclePolicies. /// /// An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration /// object. A LifecycleConfiguration object informs EFS lifecycle management /// and EFS Intelligent-Tiering of the following: /// ///
  • /// /// When to move files in the file system from primary storage to the IA storage class. /// ///
  • /// /// When to move files that are in IA storage to primary storage. /// ///
/// /// When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration /// API action, Amazon EFS requires that each LifecyclePolicy object have /// only a single transition. This means that in a request body, LifecyclePolicies /// must be structured as an array of LifecyclePolicy objects, one object /// for each transition, TransitionToIA, TransitionToPrimaryStorageClass. /// See the example requests in the following section for more information. /// /// ///
[AWSProperty(Required=true, Max=2)] public List LifecyclePolicies { get { return this._lifecyclePolicies; } set { this._lifecyclePolicies = value; } } // Check to see if LifecyclePolicies property is set internal bool IsSetLifecyclePolicies() { return this._lifecyclePolicies != null && this._lifecyclePolicies.Count > 0; } } }