Class CreateJobRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.iot.model.IotRequest
-
- software.amazon.awssdk.services.iot.model.CreateJobRequest
-
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<CreateJobRequest.Builder,CreateJobRequest>
@Generated("software.amazon.awssdk:codegen") public final class CreateJobRequest extends IotRequest implements ToCopyableBuilder<CreateJobRequest.Builder,CreateJobRequest>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
CreateJobRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AbortConfig
abortConfig()
Allows you to create the criteria to abort a job.static CreateJobRequest.Builder
builder()
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.String
document()
The job document.Map<String,String>
documentParameters()
Parameters of an Amazon Web Services managed template that you can specify to create the job document.String
documentSource()
An S3 link, or S3 object URL, to the job document.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<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
hasTags()
For responses, this returns true if the service returned a value for the Tags property.boolean
hasTargets()
For responses, this returns true if the service returned a value for the Targets property.JobExecutionsRetryConfig
jobExecutionsRetryConfig()
Allows you to create the criteria to retry a job.JobExecutionsRolloutConfig
jobExecutionsRolloutConfig()
Allows you to create a staged rollout of the job.String
jobId()
A job identifier which must be unique for your Amazon Web Services account.String
jobTemplateArn()
The ARN of the job template used to create the job.String
namespaceId()
The namespace used to indicate that a job is a customer-managed job.PresignedUrlConfig
presignedUrlConfig()
Configuration information for pre-signed S3 URLs.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 CreateJobRequest.Builder>
serializableBuilderClass()
List<Tag>
tags()
Metadata which can be used to manage the job.List<String>
targets()
A list of 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.CreateJobRequest.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
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
-
jobId
public final String jobId()
A job identifier which must be unique for your Amazon Web Services account. We recommend using a UUID. Alpha-numeric characters, "-" and "_" are valid for use here.
- Returns:
- A job identifier which must be unique for your Amazon Web Services account. We recommend using a UUID. Alpha-numeric characters, "-" and "_" are valid for use here.
-
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 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 things and thing groups to which the job should be sent.
-
documentSource
public final String documentSource()
An S3 link, or S3 object URL, to the job document. The link is an Amazon S3 object URL and is required if you don't specify a value for
document
.For example,
--document-source https://s3.region-code.amazonaws.com/example-firmware/device-firmware.1.0
For more information, see Methods for accessing a bucket.
- Returns:
- An S3 link, or S3 object URL, to the job document. The link is an Amazon S3 object URL and is required if
you don't specify a value for
document
.For example,
--document-source https://s3.region-code.amazonaws.com/example-firmware/device-firmware.1.0
For more information, see Methods for accessing a bucket.
-
document
public final String document()
The job document. Required if you don't specify a value for
documentSource
.- Returns:
- The job document. Required if you don't specify a value for
documentSource
.
-
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 information for pre-signed S3 URLs.
- Returns:
- Configuration information for pre-signed S3 URLs.
-
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 thing when the thing 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 thing when the thing 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 thing when the thing 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 thing when the thing 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
-
jobExecutionsRolloutConfig
public final JobExecutionsRolloutConfig jobExecutionsRolloutConfig()
Allows you to create a staged rollout of the job.
- Returns:
- Allows you to create a staged rollout of the job.
-
abortConfig
public final AbortConfig abortConfig()
Allows you to create the criteria to abort a job.
- Returns:
- Allows you to create the criteria to abort a job.
-
timeoutConfig
public final TimeoutConfig timeoutConfig()
Specifies the amount of time each device has to finish its execution of the job. The 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 time expires, it will be automatically set toTIMED_OUT
.- Returns:
- Specifies the amount of time each device has to finish its execution of the job. The 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 time expires, it will be automatically set toTIMED_OUT
.
-
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
public final List<Tag> tags()
Metadata which can be used to manage the job.
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:
- Metadata which can be used to manage the job.
-
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 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
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()
Allows you to create the criteria to retry a job.
- Returns:
- Allows you to create the criteria to retry a 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()
Parameters of an Amazon Web Services managed template that you can specify to create the job document.
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:
- Parameters of an Amazon Web Services managed template that you can specify to create the job
document.
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.
-
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.
-
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.
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.
Note:The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.
-
toBuilder
public CreateJobRequest.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<CreateJobRequest.Builder,CreateJobRequest>
- Specified by:
toBuilder
in classIotRequest
-
builder
public static CreateJobRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends CreateJobRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCode
in classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equals
in classAwsRequest
-
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.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForField
in classSdkRequest
-
-