/* * 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 { /// /// Details about a task definition. A task definition describes the container and volume /// definitions of an Amazon Elastic Container Service task. /// public partial class AwsEcsTaskDefinitionDetails { private List _containerDefinitions = new List(); private string _cpu; private string _executionRoleArn; private string _family; private List _inferenceAccelerators = new List(); private string _ipcMode; private string _memory; private string _networkMode; private string _pidMode; private List _placementConstraints = new List(); private AwsEcsTaskDefinitionProxyConfigurationDetails _proxyConfiguration; private List _requiresCompatibilities = new List(); private string _taskRoleArn; private List _volumes = new List(); /// /// Gets and sets the property ContainerDefinitions. /// /// The container definitions that describe the containers that make up the task. /// /// public List ContainerDefinitions { get { return this._containerDefinitions; } set { this._containerDefinitions = value; } } // Check to see if ContainerDefinitions property is set internal bool IsSetContainerDefinitions() { return this._containerDefinitions != null && this._containerDefinitions.Count > 0; } /// /// Gets and sets the property Cpu. /// /// The number of CPU units used by the task.Valid values are as follows: /// ///
  • /// /// 256 (.25 vCPU) /// ///
  • /// /// 512 (.5 vCPU) /// ///
  • /// /// 1024 (1 vCPU) /// ///
  • /// /// 2048 (2 vCPU) /// ///
  • /// /// 4096 (4 vCPU) /// ///
///
public string Cpu { get { return this._cpu; } set { this._cpu = value; } } // Check to see if Cpu property is set internal bool IsSetCpu() { return this._cpu != null; } /// /// Gets and sets the property ExecutionRoleArn. /// /// The ARN of the task execution role that grants the container agent permission to make /// API calls on behalf of the container user. /// /// public string ExecutionRoleArn { get { return this._executionRoleArn; } set { this._executionRoleArn = value; } } // Check to see if ExecutionRoleArn property is set internal bool IsSetExecutionRoleArn() { return this._executionRoleArn != null; } /// /// Gets and sets the property Family. /// /// The name of a family that this task definition is registered to. /// /// public string Family { get { return this._family; } set { this._family = value; } } // Check to see if Family property is set internal bool IsSetFamily() { return this._family != null; } /// /// Gets and sets the property InferenceAccelerators. /// /// The Elastic Inference accelerators to use for the containers in the task. /// /// public List InferenceAccelerators { get { return this._inferenceAccelerators; } set { this._inferenceAccelerators = value; } } // Check to see if InferenceAccelerators property is set internal bool IsSetInferenceAccelerators() { return this._inferenceAccelerators != null && this._inferenceAccelerators.Count > 0; } /// /// Gets and sets the property IpcMode. /// /// The inter-process communication (IPC) resource namespace to use for the containers /// in the task. Valid values are as follows: /// ///
  • /// /// host /// ///
  • /// /// none /// ///
  • /// /// task /// ///
///
public string IpcMode { get { return this._ipcMode; } set { this._ipcMode = value; } } // Check to see if IpcMode property is set internal bool IsSetIpcMode() { return this._ipcMode != null; } /// /// Gets and sets the property Memory. /// /// The amount (in MiB) of memory used by the task. /// /// /// /// For tasks that are hosted on Amazon EC2, you can provide a task-level memory value /// or a container-level memory value. For tasks that are hosted on Fargate, you must /// use one of the specified /// values in the Amazon Elastic Container Service Developer Guide , /// which determines your range of supported values for the Cpu and Memory /// parameters. /// /// public string Memory { get { return this._memory; } set { this._memory = value; } } // Check to see if Memory property is set internal bool IsSetMemory() { return this._memory != null; } /// /// Gets and sets the property NetworkMode. /// /// The Docker networking mode to use for the containers in the task. Valid values are /// as follows: /// ///
  • /// /// awsvpc /// ///
  • /// /// bridge /// ///
  • /// /// host /// ///
  • /// /// none /// ///
///
public string NetworkMode { get { return this._networkMode; } set { this._networkMode = value; } } // Check to see if NetworkMode property is set internal bool IsSetNetworkMode() { return this._networkMode != null; } /// /// Gets and sets the property PidMode. /// /// The process namespace to use for the containers in the task. Valid values are host /// or task. /// /// public string PidMode { get { return this._pidMode; } set { this._pidMode = value; } } // Check to see if PidMode property is set internal bool IsSetPidMode() { return this._pidMode != null; } /// /// Gets and sets the property PlacementConstraints. /// /// The placement constraint objects to use for tasks. /// /// public List PlacementConstraints { get { return this._placementConstraints; } set { this._placementConstraints = value; } } // Check to see if PlacementConstraints property is set internal bool IsSetPlacementConstraints() { return this._placementConstraints != null && this._placementConstraints.Count > 0; } /// /// Gets and sets the property ProxyConfiguration. /// /// The configuration details for the App Mesh proxy. /// /// public AwsEcsTaskDefinitionProxyConfigurationDetails ProxyConfiguration { get { return this._proxyConfiguration; } set { this._proxyConfiguration = value; } } // Check to see if ProxyConfiguration property is set internal bool IsSetProxyConfiguration() { return this._proxyConfiguration != null; } /// /// Gets and sets the property RequiresCompatibilities. /// /// The task launch types that the task definition was validated against. /// /// public List RequiresCompatibilities { get { return this._requiresCompatibilities; } set { this._requiresCompatibilities = value; } } // Check to see if RequiresCompatibilities property is set internal bool IsSetRequiresCompatibilities() { return this._requiresCompatibilities != null && this._requiresCompatibilities.Count > 0; } /// /// Gets and sets the property TaskRoleArn. /// /// The short name or ARN of the IAM role that grants containers in the task permission /// to call Amazon Web Services API operations on your behalf. /// /// public string TaskRoleArn { get { return this._taskRoleArn; } set { this._taskRoleArn = value; } } // Check to see if TaskRoleArn property is set internal bool IsSetTaskRoleArn() { return this._taskRoleArn != null; } /// /// Gets and sets the property Volumes. /// /// The data volume definitions for the task. /// /// public List Volumes { get { return this._volumes; } set { this._volumes = value; } } // Check to see if Volumes property is set internal bool IsSetVolumes() { return this._volumes != null && this._volumes.Count > 0; } } }