Class Job
- java.lang.Object
-
- software.amazon.awssdk.services.iot.model.Job
-
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<Job.Builder,Job>
@Generated("software.amazon.awssdk:codegen") public final class Job extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Job.Builder,Job>
The
Job
object contains details about a job.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Job.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AbortConfig
abortConfig()
Configuration for criteria to abort the job.static Job.Builder
builder()
String
comment()
If the job was updated, describes the reason for the update.Instant
completedAt()
The time, in seconds since the epoch, when the job was completed.Instant
createdAt()
The time, in seconds since the epoch, when the job was created.String
description()
A short text description of the job.List<String>
destinationPackageVersions()
The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.Map<String,String>
documentParameters()
A key-value map that pairs the patterns that need to be replaced in a managed template job document schema.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
Boolean
forceCanceled()
Will betrue
if the job was canceled with the optionalforce
parameter set totrue
.<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
boolean
hasDestinationPackageVersions()
For responses, this returns true if the service returned a value for the DestinationPackageVersions property.boolean
hasDocumentParameters()
For responses, this returns true if the service returned a value for the DocumentParameters property.int
hashCode()
boolean
hasScheduledJobRollouts()
For responses, this returns true if the service returned a value for the ScheduledJobRollouts property.boolean
hasTargets()
For responses, this returns true if the service returned a value for the Targets property.Boolean
isConcurrent()
Indicates whether a job is concurrent.String
jobArn()
An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId".JobExecutionsRetryConfig
jobExecutionsRetryConfig()
The configuration for the criteria to retry the job.JobExecutionsRolloutConfig
jobExecutionsRolloutConfig()
Allows you to create a staged rollout of a job.String
jobId()
The unique identifier you assigned to this job when it was created.JobProcessDetails
jobProcessDetails()
Details about the job process.String
jobTemplateArn()
The ARN of the job template used to create the job.Instant
lastUpdatedAt()
The time, in seconds since the epoch, when the job was last updated.String
namespaceId()
The namespace used to indicate that a job is a customer-managed job.PresignedUrlConfig
presignedUrlConfig()
Configuration for pre-signed S3 URLs.String
reasonCode()
If the job was updated, provides the reason code for the update.List<ScheduledJobRollout>
scheduledJobRollouts()
Displays the next seven maintenance window occurrences and their start times.SchedulingConfig
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.List<SdkField<?>>
sdkFields()
static Class<? extends Job.Builder>
serializableBuilderClass()
JobStatus
status()
The status of the job, one ofIN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
.String
statusAsString()
The status of the job, one ofIN_PROGRESS
,CANCELED
,DELETION_IN_PROGRESS
orCOMPLETED
.List<String>
targets()
A list of IoT things and thing groups to which the job should be sent.TargetSelection
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).String
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).TimeoutConfig
timeoutConfig()
Specifies the amount of time each device has to finish its execution of the job.Job.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
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
-
jobArn
public final String 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
public final String 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
public final TargetSelection 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:
TargetSelection
-
targetSelectionAsString
public final String 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:
TargetSelection
-
status
public final JobStatus 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:
JobStatus
-
statusAsString
public final String 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:
JobStatus
-
forceCanceled
public final Boolean 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
public final String 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
public final String 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
public final List<String> 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
public final String description()
A short text description of the job.
- Returns:
- A short text description of the job.
-
presignedUrlConfig
public final PresignedUrlConfig presignedUrlConfig()
Configuration for pre-signed S3 URLs.
- Returns:
- Configuration for pre-signed S3 URLs.
-
jobExecutionsRolloutConfig
public final JobExecutionsRolloutConfig jobExecutionsRolloutConfig()
Allows you to create a staged rollout of a job.
- Returns:
- Allows you to create a staged rollout of a job.
-
abortConfig
public final AbortConfig abortConfig()
Configuration for criteria to abort the job.
- Returns:
- Configuration for criteria to abort the job.
-
createdAt
public final Instant 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
public final Instant 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
public final Instant 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
public final JobProcessDetails jobProcessDetails()
Details about the job process.
- Returns:
- Details about the job process.
-
timeoutConfig
public final TimeoutConfig 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
public final String 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 in public preview.- 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 in public preview.
-
jobTemplateArn
public final String 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
public final JobExecutionsRetryConfig 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
public final Map<String,String> 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
public final Boolean 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
public final SchedulingConfig 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
public final List<ScheduledJobRollout> 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
public final List<String> 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
public Job.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<Job.Builder,Job>
-
builder
public static Job.Builder builder()
-
serializableBuilderClass
public static Class<? extends Job.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in 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.
-
-