Class CreateJobRequest
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<CreateJobRequest.Builder,
CreateJobRequest>
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal AbortConfig
Allows you to create the criteria to abort a job.static CreateJobRequest.Builder
builder()
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.final String
document()
The job document.Parameters of an Amazon Web Services managed template that you can specify to create the job document.final String
An S3 link, or S3 object URL, to the job document.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) Used to retrieve the value of a field from any class that extendsSdkRequest
.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
hasTags()
For responses, this returns true if the service returned a value for the Tags property.final boolean
For responses, this returns true if the service returned a value for the Targets property.final JobExecutionsRetryConfig
Allows you to create the criteria to retry a job.Allows you to create a staged rollout of the job.final String
jobId()
A job identifier which must be unique for your Amazon Web Services account.final String
The ARN of the job template used to create the job.final String
The namespace used to indicate that a job is a customer-managed job.final PresignedUrlConfig
Configuration information for pre-signed S3 URLs.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 CreateJobRequest.Builder> tags()
Metadata which can be used to manage the job.targets()
A list of 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 class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
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
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
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
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
A short text description of the job.
- Returns:
- A short text description of the job.
-
presignedUrlConfig
Configuration information for pre-signed S3 URLs.
- Returns:
- Configuration information for pre-signed S3 URLs.
-
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:
-
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:
-
jobExecutionsRolloutConfig
Allows you to create a staged rollout of the job.
- Returns:
- Allows you to create a staged rollout of the job.
-
abortConfig
Allows you to create the criteria to abort a job.
- Returns:
- Allows you to create the criteria to abort a job.
-
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
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
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
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
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
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
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
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<CreateJobRequest.Builder,
CreateJobRequest> - Specified by:
toBuilder
in classIotRequest
- Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode()- Overrides:
hashCode
in classAwsRequest
-
equals
- Overrides:
equals
in classAwsRequest
-
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
Description copied from class:SdkRequest
Used to retrieve the value of a field from any class that extendsSdkRequest
. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, theSdkRequest.getValueForField(String, Class)
method will again be available.- Overrides:
getValueForField
in classSdkRequest
- Parameters:
fieldName
- The name of the member to be retrieved.clazz
- The class to cast the returned object to.- Returns:
- Optional containing the casted return value
-
sdkFields
-