Class JobDefinition
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<JobDefinition.Builder,
JobDefinition>
An object that represents an Batch job definition.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic JobDefinition.Builder
builder()
final OrchestrationType
The orchestration type of the compute environment.final String
The orchestration type of the compute environment.final ContainerProperties
An object with properties specific to Amazon ECS-based jobs.final EcsProperties
An object that contains the properties for the Amazon ECS resources of a job.WhenecsProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,eksProperties
, ornodeProperties
.final EksProperties
An object with properties that are specific to Amazon EKS-based jobs.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the Parameters property.final boolean
For responses, this returns true if the service returned a value for the PlatformCapabilities property.final boolean
hasTags()
For responses, this returns true if the service returned a value for the Tags property.final String
The Amazon Resource Name (ARN) for the job definition.final String
The name of the job definition.final NodeProperties
An object with properties that are specific to multi-node parallel jobs.Default parameters or parameter substitution placeholders that are set in the job definition.final List
<PlatformCapability> The platform capabilities required by the job definition.The platform capabilities required by the job definition.final Boolean
Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task.final RetryStrategy
The retry strategy to use for failed jobs that are submitted with this job definition.final Integer
revision()
The revision of the job definition.final Integer
The scheduling priority of the job definition.static Class
<? extends JobDefinition.Builder> final String
status()
The status of the job definition.tags()
The tags that are applied to the job definition.final JobTimeout
timeout()
The timeout time for jobs that are submitted with this job definition.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.final String
type()
The type of job definition.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
jobDefinitionName
The name of the job definition.
- Returns:
- The name of the job definition.
-
jobDefinitionArn
The Amazon Resource Name (ARN) for the job definition.
- Returns:
- The Amazon Resource Name (ARN) for the job definition.
-
revision
The revision of the job definition.
- Returns:
- The revision of the job definition.
-
status
The status of the job definition.
- Returns:
- The status of the job definition.
-
type
The type of job definition. It's either
container
ormultinode
. If the job is run on Fargate resources, thenmultinode
isn't supported. For more information about multi-node parallel jobs, see Creating a multi-node parallel job definition in the Batch User Guide.- Returns:
- The type of job definition. It's either
container
ormultinode
. If the job is run on Fargate resources, thenmultinode
isn't supported. For more information about multi-node parallel jobs, see Creating a multi-node parallel job definition in the Batch User Guide.
-
schedulingPriority
The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority.
- Returns:
- The scheduling priority of the job definition. This only affects jobs in job queues with a fair share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority.
-
hasParameters
public final boolean hasParameters()For responses, this returns true if the service returned a value for the Parameters 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. -
parameters
Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a
SubmitJob
request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see Job definition parameters in the Batch User Guide.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
hasParameters()
method.- Returns:
- Default parameters or parameter substitution placeholders that are set in the job definition. Parameters
are specified as a key-value pair mapping. Parameters in a
SubmitJob
request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see Job definition parameters in the Batch User Guide.
-
retryStrategy
The retry strategy to use for failed jobs that are submitted with this job definition.
- Returns:
- The retry strategy to use for failed jobs that are submitted with this job definition.
-
containerProperties
An object with properties specific to Amazon ECS-based jobs. When
containerProperties
is used in the job definition, it can't be used in addition toeksProperties
,ecsProperties
, ornodeProperties
.- Returns:
- An object with properties specific to Amazon ECS-based jobs. When
containerProperties
is used in the job definition, it can't be used in addition toeksProperties
,ecsProperties
, ornodeProperties
.
-
timeout
The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, Batch terminates your jobs if they aren't finished.
- Returns:
- The timeout time for jobs that are submitted with this job definition. After the amount of time you specify passes, Batch terminates your jobs if they aren't finished.
-
nodeProperties
An object with properties that are specific to multi-node parallel jobs. When
nodeProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,ecsProperties
, oreksProperties
.If the job runs on Fargate resources, don't specify
nodeProperties
. UsecontainerProperties
instead.- Returns:
- An object with properties that are specific to multi-node parallel jobs. When
nodeProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,ecsProperties
, oreksProperties
.If the job runs on Fargate resources, don't specify
nodeProperties
. UsecontainerProperties
instead.
-
hasTags
public final boolean hasTags()For responses, this returns true if the service returned a value for the Tags 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. -
tags
The tags that are applied to the job definition.
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
hasTags()
method.- Returns:
- The tags that are applied to the job definition.
-
propagateTags
Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the
FAILED
state.- Returns:
- Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS
task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when
the tasks are created. For tags with the same name, job tags are given priority over job definitions
tags. If the total number of combined tags from the job and job definition is over 50, the job is moved
to the
FAILED
state.
-
platformCapabilities
The platform capabilities required by the job definition. If no value is specified, it defaults to
EC2
. Jobs run on Fargate resources specifyFARGATE
.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
hasPlatformCapabilities()
method.- Returns:
- The platform capabilities required by the job definition. If no value is specified, it defaults to
EC2
. Jobs run on Fargate resources specifyFARGATE
.
-
hasPlatformCapabilities
public final boolean hasPlatformCapabilities()For responses, this returns true if the service returned a value for the PlatformCapabilities 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. -
platformCapabilitiesAsStrings
The platform capabilities required by the job definition. If no value is specified, it defaults to
EC2
. Jobs run on Fargate resources specifyFARGATE
.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
hasPlatformCapabilities()
method.- Returns:
- The platform capabilities required by the job definition. If no value is specified, it defaults to
EC2
. Jobs run on Fargate resources specifyFARGATE
.
-
ecsProperties
An object that contains the properties for the Amazon ECS resources of a job.When
ecsProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,eksProperties
, ornodeProperties
.- Returns:
- An object that contains the properties for the Amazon ECS resources of a job.When
ecsProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,eksProperties
, ornodeProperties
.
-
eksProperties
An object with properties that are specific to Amazon EKS-based jobs. When
eksProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,ecsProperties
, ornodeProperties
.- Returns:
- An object with properties that are specific to Amazon EKS-based jobs. When
eksProperties
is used in the job definition, it can't be used in addition tocontainerProperties
,ecsProperties
, ornodeProperties
.
-
containerOrchestrationType
The orchestration type of the compute environment. The valid values are
ECS
(default) orEKS
.If the service returns an enum value that is not available in the current SDK version,
containerOrchestrationType
will returnOrchestrationType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromcontainerOrchestrationTypeAsString()
.- Returns:
- The orchestration type of the compute environment. The valid values are
ECS
(default) orEKS
. - See Also:
-
containerOrchestrationTypeAsString
The orchestration type of the compute environment. The valid values are
ECS
(default) orEKS
.If the service returns an enum value that is not available in the current SDK version,
containerOrchestrationType
will returnOrchestrationType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromcontainerOrchestrationTypeAsString()
.- Returns:
- The orchestration type of the compute environment. The valid values are
ECS
(default) orEKS
. - See Also:
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<JobDefinition.Builder,
JobDefinition> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
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. -
getValueForField
-
sdkFields
-