/* * 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 { /// /// Container for the parameters to the PutClusterCapacityProviders operation. /// Modifies the available capacity providers and the default capacity provider strategy /// for a cluster. /// /// /// /// You must specify both the available capacity providers and a default capacity provider /// strategy for the cluster. If the specified cluster has existing capacity providers /// associated with it, you must specify all existing capacity providers in addition to /// any new ones you want to add. Any existing capacity providers that are associated /// with a cluster that are omitted from a PutClusterCapacityProviders API call /// will be disassociated with the cluster. You can only disassociate an existing capacity /// provider from a cluster if it's not being used by any existing tasks. /// /// /// /// When creating a service or running a task on a cluster, if no capacity provider or /// launch type is specified, then the cluster's default capacity provider strategy is /// used. We recommend that you define a default capacity provider strategy for your cluster. /// However, you must specify an empty array ([]) to bypass defining a default /// strategy. /// /// public partial class PutClusterCapacityProvidersRequest : AmazonECSRequest { private List _capacityProviders = new List(); private string _cluster; private List _defaultCapacityProviderStrategy = new List(); /// /// Gets and sets the property CapacityProviders. /// /// The name of one or more capacity providers to associate with the cluster. /// /// /// /// If specifying a capacity provider that uses an Auto Scaling group, the capacity provider /// must already be created. New capacity providers can be created with the CreateCapacityProvider /// API operation. /// /// /// /// To use a Fargate capacity provider, specify either the FARGATE or FARGATE_SPOT /// capacity providers. The Fargate capacity providers are available to all accounts and /// only need to be associated with a cluster to be used. /// /// [AWSProperty(Required=true)] public List CapacityProviders { get { return this._capacityProviders; } set { this._capacityProviders = value; } } // Check to see if CapacityProviders property is set internal bool IsSetCapacityProviders() { return this._capacityProviders != null && this._capacityProviders.Count > 0; } /// /// Gets and sets the property Cluster. /// /// The short name or full Amazon Resource Name (ARN) of the cluster to modify the capacity /// provider settings for. If you don't specify a cluster, the default cluster is assumed. /// /// [AWSProperty(Required=true)] public string Cluster { get { return this._cluster; } set { this._cluster = value; } } // Check to see if Cluster property is set internal bool IsSetCluster() { return this._cluster != null; } /// /// Gets and sets the property DefaultCapacityProviderStrategy. /// /// The capacity provider strategy to use by default for the cluster. /// /// /// /// When creating a service or running a task on a cluster, if no capacity provider or /// launch type is specified then the default capacity provider strategy for the cluster /// is used. /// /// /// /// A capacity provider strategy consists of one or more capacity providers along with /// the base and weight to assign to them. A capacity provider /// must be associated with the cluster to be used in a capacity provider strategy. The /// PutClusterCapacityProviders API is used to associate a capacity provider with /// a cluster. Only capacity providers with an ACTIVE or UPDATING /// status can be used. /// /// /// /// If specifying a capacity provider that uses an Auto Scaling group, the capacity provider /// must already be created. New capacity providers can be created with the CreateCapacityProvider /// API operation. /// /// /// /// To use a Fargate capacity provider, specify either the FARGATE or FARGATE_SPOT /// capacity providers. The Fargate capacity providers are available to all accounts and /// only need to be associated with a cluster to be used. /// /// [AWSProperty(Required=true)] public List DefaultCapacityProviderStrategy { get { return this._defaultCapacityProviderStrategy; } set { this._defaultCapacityProviderStrategy = value; } } // Check to see if DefaultCapacityProviderStrategy property is set internal bool IsSetDefaultCapacityProviderStrategy() { return this._defaultCapacityProviderStrategy != null && this._defaultCapacityProviderStrategy.Count > 0; } } }