Class SupportContainerDefinitionInput
- java.lang.Object
-
- software.amazon.awssdk.services.gamelift.model.SupportContainerDefinitionInput
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<SupportContainerDefinitionInput.Builder,SupportContainerDefinitionInput>
@Generated("software.amazon.awssdk:codegen") public final class SupportContainerDefinitionInput extends Object implements SdkPojo, Serializable, ToCopyableBuilder<SupportContainerDefinitionInput.Builder,SupportContainerDefinitionInput>
Describes a support container in a container group. You can define a support container in either a game server container group or a per-instance container group. Support containers don't run game server processes.
This definition includes container configuration, resources, and start instructions. Use this data type when creating or updating a container group definition. For properties of a deployed support container, see SupportContainerDefinition.
Use with: CreateContainerGroupDefinition, UpdateContainerGroupDefinition
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceSupportContainerDefinitionInput.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SupportContainerDefinitionInput.Builderbuilder()StringcontainerName()A string that uniquely identifies the container definition within a container group.List<ContainerDependency>dependsOn()Establishes dependencies between this container and the status of other containers in the same container group.List<ContainerEnvironment>environmentOverride()A set of environment variables to pass to the container on startup.booleanequals(Object obj)booleanequalsBySdkFields(Object obj)Booleanessential()Flags the container as vital for the container group to function properly.<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)booleanhasDependsOn()For responses, this returns true if the service returned a value for the DependsOn property.booleanhasEnvironmentOverride()For responses, this returns true if the service returned a value for the EnvironmentOverride property.inthashCode()booleanhasMountPoints()For responses, this returns true if the service returned a value for the MountPoints property.ContainerHealthCheckhealthCheck()Configuration for a non-terminal health check.StringimageUri()The location of the container image to deploy to a container fleet.IntegermemoryHardLimitMebibytes()A specified amount of memory (in MiB) to reserve for this container.List<ContainerMountPoint>mountPoints()A mount point that binds a path inside the container to a file or directory on the host system and lets it access the file or directory.ContainerPortConfigurationportConfiguration()A set of ports that Amazon GameLift can assign to processes in the container.Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()static Class<? extends SupportContainerDefinitionInput.Builder>serializableBuilderClass()SupportContainerDefinitionInput.BuildertoBuilder()StringtoString()Returns a string representation of this object.Doublevcpu()The number of vCPU units to reserve for this container.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
containerName
public final String containerName()
A string that uniquely identifies the container definition within a container group.
- Returns:
- A string that uniquely identifies the container definition within a container group.
-
hasDependsOn
public final boolean hasDependsOn()
For responses, this returns true if the service returned a value for the DependsOn property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
dependsOn
public final List<ContainerDependency> dependsOn()
Establishes dependencies between this container and the status of other containers in the same container group. A container can have dependencies on multiple different containers.
.
You can use dependencies to establish a startup/shutdown sequence across the container group. For example, you might specify that ContainerB has a
STARTdependency on ContainerA. This dependency means that ContainerB can't start until after ContainerA has started. This dependency is reversed on shutdown, which means that ContainerB must shut down before ContainerA can shut down.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasDependsOn()method.- Returns:
- Establishes dependencies between this container and the status of other containers in the same container
group. A container can have dependencies on multiple different containers.
.
You can use dependencies to establish a startup/shutdown sequence across the container group. For example, you might specify that ContainerB has a
STARTdependency on ContainerA. This dependency means that ContainerB can't start until after ContainerA has started. This dependency is reversed on shutdown, which means that ContainerB must shut down before ContainerA can shut down.
-
hasMountPoints
public final boolean hasMountPoints()
For responses, this returns true if the service returned a value for the MountPoints property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
mountPoints
public final List<ContainerMountPoint> mountPoints()
A mount point that binds a path inside the container to a file or directory on the host system and lets it access the file or directory.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasMountPoints()method.- Returns:
- A mount point that binds a path inside the container to a file or directory on the host system and lets it access the file or directory.
-
hasEnvironmentOverride
public final boolean hasEnvironmentOverride()
For responses, this returns true if the service returned a value for the EnvironmentOverride property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
environmentOverride
public final List<ContainerEnvironment> environmentOverride()
A set of environment variables to pass to the container on startup. See the ContainerDefinition::environment parameter in the Amazon Elastic Container Service API Reference.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasEnvironmentOverride()method.- Returns:
- A set of environment variables to pass to the container on startup. See the ContainerDefinition::environment parameter in the Amazon Elastic Container Service API Reference.
-
essential
public final Boolean essential()
Flags the container as vital for the container group to function properly. If an essential container fails, the entire container group restarts. At least one support container in a per-instance container group must be essential. When flagging a container as essential, also configure a health check so that the container can signal that it's healthy.
- Returns:
- Flags the container as vital for the container group to function properly. If an essential container fails, the entire container group restarts. At least one support container in a per-instance container group must be essential. When flagging a container as essential, also configure a health check so that the container can signal that it's healthy.
-
healthCheck
public final ContainerHealthCheck healthCheck()
Configuration for a non-terminal health check. A container automatically restarts if it stops functioning. With a health check, you can define additional reasons to flag a container as unhealthy and restart it. If an essential container fails a health check, the entire container group restarts.
- Returns:
- Configuration for a non-terminal health check. A container automatically restarts if it stops functioning. With a health check, you can define additional reasons to flag a container as unhealthy and restart it. If an essential container fails a health check, the entire container group restarts.
-
imageUri
public final String imageUri()
The location of the container image to deploy to a container fleet. Provide an image in an Amazon Elastic Container Registry public or private repository. The repository must be in the same Amazon Web Services account and Amazon Web Services Region where you're creating the container group definition. For limits on image size, see Amazon GameLift endpoints and quotas. You can use any of the following image URI formats:
-
Image ID only:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID] -
Image ID and digest:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]@[digest] -
Image ID and tag:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]:[tag]
- Returns:
- The location of the container image to deploy to a container fleet. Provide an image in an Amazon Elastic
Container Registry public or private repository. The repository must be in the same Amazon Web Services
account and Amazon Web Services Region where you're creating the container group definition. For limits
on image size, see Amazon GameLift
endpoints and quotas. You can use any of the following image URI formats:
-
Image ID only:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID] -
Image ID and digest:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]@[digest] -
Image ID and tag:
[AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]:[tag]
-
-
-
memoryHardLimitMebibytes
public final Integer memoryHardLimitMebibytes()
A specified amount of memory (in MiB) to reserve for this container. If you don't specify a container-specific memory limit, the container shares the container group's total memory allocation.
Related data type: ContainerGroupDefinitionTotalMemoryLimitMebibytes
- Returns:
- A specified amount of memory (in MiB) to reserve for this container. If you don't specify a
container-specific memory limit, the container shares the container group's total memory allocation.
Related data type: ContainerGroupDefinitionTotalMemoryLimitMebibytes
-
portConfiguration
public final ContainerPortConfiguration portConfiguration()
A set of ports that Amazon GameLift can assign to processes in the container. Any processes that accept inbound traffic connections must be assigned a port from this set. The container port range must be large enough to assign one to each process in the container that needs one.
Container ports aren't directly accessed by inbound traffic. Amazon GameLift maps these container ports to externally accessible connection ports, which are assigned as needed from the container fleet's
ConnectionPortRange.- Returns:
- A set of ports that Amazon GameLift can assign to processes in the container. Any processes that accept
inbound traffic connections must be assigned a port from this set. The container port range must be large
enough to assign one to each process in the container that needs one.
Container ports aren't directly accessed by inbound traffic. Amazon GameLift maps these container ports to externally accessible connection ports, which are assigned as needed from the container fleet's
ConnectionPortRange.
-
vcpu
public final Double vcpu()
The number of vCPU units to reserve for this container. The container can use more resources when needed, if available. If you don't reserve CPU units for this container, it shares the container group's total vCPU limit.
Related data type: ContainerGroupDefinition TotalCpuLimit
- Returns:
- The number of vCPU units to reserve for this container. The container can use more resources when needed,
if available. If you don't reserve CPU units for this container, it shares the container group's total
vCPU limit.
Related data type: ContainerGroupDefinition TotalCpuLimit
-
toBuilder
public SupportContainerDefinitionInput.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<SupportContainerDefinitionInput.Builder,SupportContainerDefinitionInput>
-
builder
public static SupportContainerDefinitionInput.Builder builder()
-
serializableBuilderClass
public static Class<? extends SupportContainerDefinitionInput.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-