Class Job
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<Job.Builder,
Job>
The Job
object contains details about a job.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal AbortConfig
Configuration for criteria to abort the job.static Job.Builder
builder()
final String
comment()
If the job was updated, describes the reason for the update.final Instant
The time, in seconds since the epoch, when the job was completed.final Instant
The time, in seconds since the epoch, when the job was created.final String
A short text description of the job.The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.A key-value map that pairs the patterns that need to be replaced in a managed template job document schema.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final Boolean
Will betrue
if the job was canceled with the optionalforce
parameter set totrue
.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final boolean
For responses, this returns true if the service returned a value for the DestinationPackageVersions property.final boolean
For responses, this returns true if the service returned a value for the DocumentParameters property.final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the ScheduledJobRollouts property.final boolean
For responses, this returns true if the service returned a value for the Targets property.final Boolean
Indicates whether a job is concurrent.final String
jobArn()
An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId".final JobExecutionsRetryConfig
The configuration for the criteria to retry the job.Allows you to create a staged rollout of a job.final String
jobId()
The unique identifier you assigned to this job when it was created.final JobProcessDetails
Details about the job process.final String
The ARN of the job template used to create the job.final Instant
The time, in seconds since the epoch, when the job was last updated.final String
The namespace used to indicate that a job is a customer-managed job.final PresignedUrlConfig
Configuration for pre-signed S3 URLs.final String
If the job was updated, provides the reason code for the update.final List
<ScheduledJobRollout> Displays the next seven maintenance window occurrences and their start times.final SchedulingConfig
The configuration that allows you to schedule a job for a future date and time in addition to specifying the end behavior for each job execution.static Class
<? extends Job.Builder> final JobStatus
status()
The status of the job, one ofIN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
.final String
The status of the job, one ofIN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
.targets()
A list of IoT things and thing groups to which the job should be sent.final TargetSelection
Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT).final String
Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT).final TimeoutConfig
Specifies the amount of time each device has to finish its execution of the job.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.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
jobArn
An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId".
- Returns:
- An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId".
-
jobId
The unique identifier you assigned to this job when it was created.
- Returns:
- The unique identifier you assigned to this job when it was created.
-
targetSelection
Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a device when the thing representing the device is added to a target group, even after the job was completed by all things originally in the group.
We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.
If the service returns an enum value that is not available in the current SDK version,
targetSelection
will returnTargetSelection.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtargetSelectionAsString()
.- Returns:
- Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things
specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing
when a change is detected in a target. For example, a job will run on a device when the thing
representing the device is added to a target group, even after the job was completed by all things
originally in the group.
We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.
- See Also:
-
targetSelectionAsString
Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a device when the thing representing the device is added to a target group, even after the job was completed by all things originally in the group.
We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.
If the service returns an enum value that is not available in the current SDK version,
targetSelection
will returnTargetSelection.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtargetSelectionAsString()
.- Returns:
- Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things
specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing
when a change is detected in a target. For example, a job will run on a device when the thing
representing the device is added to a target group, even after the job was completed by all things
originally in the group.
We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.
- See Also:
-
status
The status of the job, one of
IN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
.If the service returns an enum value that is not available in the current SDK version,
status
will returnJobStatus.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromstatusAsString()
.- Returns:
- The status of the job, one of
IN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
. - See Also:
-
statusAsString
The status of the job, one of
IN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
.If the service returns an enum value that is not available in the current SDK version,
status
will returnJobStatus.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromstatusAsString()
.- Returns:
- The status of the job, one of
IN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
. - See Also:
-
forceCanceled
Will be
true
if the job was canceled with the optionalforce
parameter set totrue
.- Returns:
- Will be
true
if the job was canceled with the optionalforce
parameter set totrue
.
-
reasonCode
If the job was updated, provides the reason code for the update.
- Returns:
- If the job was updated, provides the reason code for the update.
-
comment
If the job was updated, describes the reason for the update.
- Returns:
- If the job was updated, describes the reason for the update.
-
hasTargets
public final boolean hasTargets()For responses, this returns true if the service returned a value for the Targets 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. -
targets
A list of IoT things and thing groups to which the job should be sent.
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
hasTargets()
method.- Returns:
- A list of IoT things and thing groups to which the job should be sent.
-
description
A short text description of the job.
- Returns:
- A short text description of the job.
-
presignedUrlConfig
Configuration for pre-signed S3 URLs.
- Returns:
- Configuration for pre-signed S3 URLs.
-
jobExecutionsRolloutConfig
Allows you to create a staged rollout of a job.
- Returns:
- Allows you to create a staged rollout of a job.
-
abortConfig
Configuration for criteria to abort the job.
- Returns:
- Configuration for criteria to abort the job.
-
createdAt
The time, in seconds since the epoch, when the job was created.
- Returns:
- The time, in seconds since the epoch, when the job was created.
-
lastUpdatedAt
The time, in seconds since the epoch, when the job was last updated.
- Returns:
- The time, in seconds since the epoch, when the job was last updated.
-
completedAt
The time, in seconds since the epoch, when the job was completed.
- Returns:
- The time, in seconds since the epoch, when the job was completed.
-
jobProcessDetails
Details about the job process.
- Returns:
- Details about the job process.
-
timeoutConfig
Specifies the amount of time each device has to finish its execution of the job. A timer is started when the job execution status is set to
IN_PROGRESS
. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set toTIMED_OUT
.- Returns:
- Specifies the amount of time each device has to finish its execution of the job. A timer is started when
the job execution status is set to
IN_PROGRESS
. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set toTIMED_OUT
.
-
namespaceId
The namespace used to indicate that a job is a customer-managed job.
When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.
$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/
The
namespaceId
feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.- Returns:
- The namespace used to indicate that a job is a customer-managed job.
When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.
$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/
The
namespaceId
feature is only supported by IoT Greengrass at this time. For more information, see Setting up IoT Greengrass core devices.
-
jobTemplateArn
The ARN of the job template used to create the job.
- Returns:
- The ARN of the job template used to create the job.
-
jobExecutionsRetryConfig
The configuration for the criteria to retry the job.
- Returns:
- The configuration for the criteria to retry the job.
-
hasDocumentParameters
public final boolean hasDocumentParameters()For responses, this returns true if the service returned a value for the DocumentParameters 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. -
documentParameters
A key-value map that pairs the patterns that need to be replaced in a managed template job document schema. You can use the description of each key as a guidance to specify the inputs during runtime when creating a job.
documentParameters
can only be used when creating jobs from Amazon Web Services managed templates. This parameter can't be used with custom job templates or to create jobs from them.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
hasDocumentParameters()
method.- Returns:
- A key-value map that pairs the patterns that need to be replaced in a managed template job document
schema. You can use the description of each key as a guidance to specify the inputs during runtime when
creating a job.
documentParameters
can only be used when creating jobs from Amazon Web Services managed templates. This parameter can't be used with custom job templates or to create jobs from them.
-
isConcurrent
Indicates whether a job is concurrent. Will be true when a job is rolling out new job executions or canceling previously created executions, otherwise false.
- Returns:
- Indicates whether a job is concurrent. Will be true when a job is rolling out new job executions or canceling previously created executions, otherwise false.
-
schedulingConfig
The configuration that allows you to schedule a job for a future date and time in addition to specifying the end behavior for each job execution.
- Returns:
- The configuration that allows you to schedule a job for a future date and time in addition to specifying the end behavior for each job execution.
-
hasScheduledJobRollouts
public final boolean hasScheduledJobRollouts()For responses, this returns true if the service returned a value for the ScheduledJobRollouts 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. -
scheduledJobRollouts
Displays the next seven maintenance window occurrences and their start times.
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
hasScheduledJobRollouts()
method.- Returns:
- Displays the next seven maintenance window occurrences and their start times.
-
hasDestinationPackageVersions
public final boolean hasDestinationPackageVersions()For responses, this returns true if the service returned a value for the DestinationPackageVersions 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. -
destinationPackageVersions
The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes. The package version must be in either the Published or Deprecated state when the job deploys. For more information, see Package version lifecycle.The package version must be in either the Published or Deprecated state when the job deploys. For more information, see Package version lifecycle.
Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.
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
hasDestinationPackageVersions()
method.- Returns:
- The package version Amazon Resource Names (ARNs) that are installed on the device when the job
successfully completes. The package version must be in either the Published or Deprecated state when the
job deploys. For more information, see Package version lifecycle.The package version must be in either the Published or Deprecated state
when the job deploys. For more information, see Package version lifecycle.
Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.
-
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<Job.Builder,
Job> - 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
-