/* * Copyright 2018-2023 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. */ package com.amazonaws.services.ecs.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* The overrides that are sent to a container. An empty container override can be passed in. An example of an empty
* container override is {"containerOverrides": [ ] }
. If a non-empty container override is specified, the
* name
parameter must be included.
*
* The name of the container that receives the override. This parameter is required if any override is specified. *
*/ private String name; /** ** The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. *
*/ private com.amazonaws.internal.SdkInternalList* The environment variables to send to the container. You can add new environment variables, which are added to the * container at launch, or you can override the existing environment variables from the Docker image or the task * definition. You must also specify a container name. *
*/ private com.amazonaws.internal.SdkInternalList* A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. *
*/ private com.amazonaws.internal.SdkInternalList
* The number of cpu
units reserved for the container, instead of the default value from the task
* definition. You must also specify a container name.
*
* The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You must * also specify a container name. *
*/ private Integer memory; /** ** The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task * definition. You must also specify a container name. *
*/ private Integer memoryReservation; /** ** The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. *
*/ private com.amazonaws.internal.SdkInternalList* The name of the container that receives the override. This parameter is required if any override is specified. *
* * @param name * The name of the container that receives the override. This parameter is required if any override is * specified. */ public void setName(String name) { this.name = name; } /** ** The name of the container that receives the override. This parameter is required if any override is specified. *
* * @return The name of the container that receives the override. This parameter is required if any override is * specified. */ public String getName() { return this.name; } /** ** The name of the container that receives the override. This parameter is required if any override is specified. *
* * @param name * The name of the container that receives the override. This parameter is required if any override is * specified. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withName(String name) { setName(name); return this; } /** ** The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. *
* * @return The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. */ public java.util.List* The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. *
* * @param command * The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. */ public void setCommand(java.util.Collection* The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setCommand(java.util.Collection)} or {@link #withCommand(java.util.Collection)} if you want to override * the existing values. *
* * @param command * The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withCommand(String... command) { if (this.command == null) { setCommand(new com.amazonaws.internal.SdkInternalList* The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. *
* * @param command * The command to send to the container that overrides the default command from the Docker image or the task * definition. You must also specify a container name. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withCommand(java.util.Collection* The environment variables to send to the container. You can add new environment variables, which are added to the * container at launch, or you can override the existing environment variables from the Docker image or the task * definition. You must also specify a container name. *
* * @return The environment variables to send to the container. You can add new environment variables, which are * added to the container at launch, or you can override the existing environment variables from the Docker * image or the task definition. You must also specify a container name. */ public java.util.List* The environment variables to send to the container. You can add new environment variables, which are added to the * container at launch, or you can override the existing environment variables from the Docker image or the task * definition. You must also specify a container name. *
* * @param environment * The environment variables to send to the container. You can add new environment variables, which are added * to the container at launch, or you can override the existing environment variables from the Docker image * or the task definition. You must also specify a container name. */ public void setEnvironment(java.util.Collection* The environment variables to send to the container. You can add new environment variables, which are added to the * container at launch, or you can override the existing environment variables from the Docker image or the task * definition. You must also specify a container name. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setEnvironment(java.util.Collection)} or {@link #withEnvironment(java.util.Collection)} if you want to * override the existing values. *
* * @param environment * The environment variables to send to the container. You can add new environment variables, which are added * to the container at launch, or you can override the existing environment variables from the Docker image * or the task definition. You must also specify a container name. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withEnvironment(KeyValuePair... environment) { if (this.environment == null) { setEnvironment(new com.amazonaws.internal.SdkInternalList* The environment variables to send to the container. You can add new environment variables, which are added to the * container at launch, or you can override the existing environment variables from the Docker image or the task * definition. You must also specify a container name. *
* * @param environment * The environment variables to send to the container. You can add new environment variables, which are added * to the container at launch, or you can override the existing environment variables from the Docker image * or the task definition. You must also specify a container name. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withEnvironment(java.util.Collection* A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. *
* * @return A list of files containing the environment variables to pass to a container, instead of the value from * the container definition. */ public java.util.List* A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. *
* * @param environmentFiles * A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. */ public void setEnvironmentFiles(java.util.Collection* A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setEnvironmentFiles(java.util.Collection)} or {@link #withEnvironmentFiles(java.util.Collection)} if you * want to override the existing values. *
* * @param environmentFiles * A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withEnvironmentFiles(EnvironmentFile... environmentFiles) { if (this.environmentFiles == null) { setEnvironmentFiles(new com.amazonaws.internal.SdkInternalList* A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. *
* * @param environmentFiles * A list of files containing the environment variables to pass to a container, instead of the value from the * container definition. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withEnvironmentFiles(java.util.Collection
* The number of cpu
units reserved for the container, instead of the default value from the task
* definition. You must also specify a container name.
*
cpu
units reserved for the container, instead of the default value from the
* task definition. You must also specify a container name.
*/
public void setCpu(Integer cpu) {
this.cpu = cpu;
}
/**
*
* The number of cpu
units reserved for the container, instead of the default value from the task
* definition. You must also specify a container name.
*
cpu
units reserved for the container, instead of the default value from the
* task definition. You must also specify a container name.
*/
public Integer getCpu() {
return this.cpu;
}
/**
*
* The number of cpu
units reserved for the container, instead of the default value from the task
* definition. You must also specify a container name.
*
cpu
units reserved for the container, instead of the default value from the
* task definition. You must also specify a container name.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ContainerOverride withCpu(Integer cpu) {
setCpu(cpu);
return this;
}
/**
* * The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You must * also specify a container name. *
* * @param memory * The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You * must also specify a container name. */ public void setMemory(Integer memory) { this.memory = memory; } /** ** The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You must * also specify a container name. *
* * @return The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You * must also specify a container name. */ public Integer getMemory() { return this.memory; } /** ** The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You must * also specify a container name. *
* * @param memory * The hard limit (in MiB) of memory to present to the container, instead of the default value from the task * definition. If your container attempts to exceed the memory specified here, the container is killed. You * must also specify a container name. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withMemory(Integer memory) { setMemory(memory); return this; } /** ** The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task * definition. You must also specify a container name. *
* * @param memoryReservation * The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task * definition. You must also specify a container name. */ public void setMemoryReservation(Integer memoryReservation) { this.memoryReservation = memoryReservation; } /** ** The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task * definition. You must also specify a container name. *
* * @return The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the * task definition. You must also specify a container name. */ public Integer getMemoryReservation() { return this.memoryReservation; } /** ** The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task * definition. You must also specify a container name. *
* * @param memoryReservation * The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task * definition. You must also specify a container name. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withMemoryReservation(Integer memoryReservation) { setMemoryReservation(memoryReservation); return this; } /** ** The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. *
* * @return The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. */ public java.util.List* The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. *
* * @param resourceRequirements * The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. */ public void setResourceRequirements(java.util.Collection* The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setResourceRequirements(java.util.Collection)} or {@link #withResourceRequirements(java.util.Collection)} * if you want to override the existing values. *
* * @param resourceRequirements * The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withResourceRequirements(ResourceRequirement... resourceRequirements) { if (this.resourceRequirements == null) { setResourceRequirements(new com.amazonaws.internal.SdkInternalList* The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. *
* * @param resourceRequirements * The type and amount of a resource to assign to a container, instead of the default value from the task * definition. The only supported resource is a GPU. * @return Returns a reference to this object so that method calls can be chained together. */ public ContainerOverride withResourceRequirements(java.util.Collection