/* * 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 ecs-2014-11-13.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.ECS.Model { /// /// A data volume that's used in a task definition. For tasks that use the Amazon Elastic /// File System (Amazon EFS), specify an efsVolumeConfiguration. For Windows /// tasks that use Amazon FSx for Windows File Server file system, specify a fsxWindowsFileServerVolumeConfiguration. /// For tasks that use a Docker volume, specify a DockerVolumeConfiguration. /// For tasks that use a bind mount host volume, specify a host and optional /// sourcePath. For more information, see Using /// Data Volumes in Tasks. /// public partial class Volume { private DockerVolumeConfiguration _dockerVolumeConfiguration; private EFSVolumeConfiguration _efsVolumeConfiguration; private FSxWindowsFileServerVolumeConfiguration _fsxWindowsFileServerVolumeConfiguration; private HostVolumeProperties _host; private string _name; /// /// Gets and sets the property DockerVolumeConfiguration. /// /// This parameter is specified when you use Docker volumes. /// /// /// /// Windows containers only support the use of the local driver. To use bind /// mounts, specify the host parameter instead. /// /// /// /// Docker volumes aren't supported by tasks run on Fargate. /// /// /// public DockerVolumeConfiguration DockerVolumeConfiguration { get { return this._dockerVolumeConfiguration; } set { this._dockerVolumeConfiguration = value; } } // Check to see if DockerVolumeConfiguration property is set internal bool IsSetDockerVolumeConfiguration() { return this._dockerVolumeConfiguration != null; } /// /// Gets and sets the property EfsVolumeConfiguration. /// /// This parameter is specified when you use an Amazon Elastic File System file system /// for task storage. /// /// public EFSVolumeConfiguration EfsVolumeConfiguration { get { return this._efsVolumeConfiguration; } set { this._efsVolumeConfiguration = value; } } // Check to see if EfsVolumeConfiguration property is set internal bool IsSetEfsVolumeConfiguration() { return this._efsVolumeConfiguration != null; } /// /// Gets and sets the property FsxWindowsFileServerVolumeConfiguration. /// /// This parameter is specified when you use Amazon FSx for Windows File Server file system /// for task storage. /// /// public FSxWindowsFileServerVolumeConfiguration FsxWindowsFileServerVolumeConfiguration { get { return this._fsxWindowsFileServerVolumeConfiguration; } set { this._fsxWindowsFileServerVolumeConfiguration = value; } } // Check to see if FsxWindowsFileServerVolumeConfiguration property is set internal bool IsSetFsxWindowsFileServerVolumeConfiguration() { return this._fsxWindowsFileServerVolumeConfiguration != null; } /// /// Gets and sets the property Host. /// /// This parameter is specified when you use bind mount host volumes. The contents of /// the host parameter determine whether your bind mount host volume persists /// on the host container instance and where it's stored. If the host parameter /// is empty, then the Docker daemon assigns a host path for your data volume. However, /// the data isn't guaranteed to persist after the containers that are associated with /// it stop running. /// /// /// /// Windows containers can mount whole directories on the same drive as $env:ProgramData. /// Windows containers can't mount directories on a different drive, and mount point can't /// be across drives. For example, you can mount C:\my\path:C:\my\path and /// D:\:D:\, but not D:\my\path:C:\my\path or D:\:C:\my\path. /// /// public HostVolumeProperties Host { get { return this._host; } set { this._host = value; } } // Check to see if Host property is set internal bool IsSetHost() { return this._host != null; } /// /// Gets and sets the property Name. /// /// The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, underscores, /// and hyphens are allowed. This name is referenced in the sourceVolume /// parameter of container definition mountPoints. /// /// public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } } }