Interface IotJobsDataPlaneAsyncClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface IotJobsDataPlaneAsyncClient extends AwsClient
Service client for accessing AWS IoT Jobs Data Plane asynchronously. This can be created using the static builder() method.The asynchronous client performs non-blocking I/O when configured with any SdkAsyncHttpClient supported in the SDK. However, full non-blocking is not guaranteed as the async client may perform blocking calls in some cases such as credentials retrieval and endpoint discovery as part of the async API call.

AWS IoT Jobs is a service that allows you to define a set of jobs — remote operations that are sent to and executed on one or more devices connected to AWS IoT. For example, you can define a job that instructs a set of devices to download and install application or firmware updates, reboot, rotate certificates, or perform remote troubleshooting operations.

To create a job, you make a job document which is a description of the remote operations to be performed, and you specify a list of targets that should perform the operations. The targets can be individual things, thing groups or both.

AWS IoT Jobs sends a message to inform the targets that a job is available. The target starts the execution of the job by downloading the job document, performing the operations it specifies, and reporting its progress to AWS IoT. The Jobs service provides commands to track the progress of a job on a specific target and for all the targets of the job

  • Field Details

  • Method Details

    • describeJobExecution

      default CompletableFuture<DescribeJobExecutionResponse> describeJobExecution(DescribeJobExecutionRequest describeJobExecutionRequest)

      Gets details of a job execution.

      Parameters:
      describeJobExecutionRequest -
      Returns:
      A Java Future containing the result of the DescribeJobExecution operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • TerminalStateException The job is in a terminal state.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • describeJobExecution

      default CompletableFuture<DescribeJobExecutionResponse> describeJobExecution(Consumer<DescribeJobExecutionRequest.Builder> describeJobExecutionRequest)

      Gets details of a job execution.


      This is a convenience which creates an instance of the DescribeJobExecutionRequest.Builder avoiding the need to create one manually via DescribeJobExecutionRequest.builder()

      Parameters:
      describeJobExecutionRequest - A Consumer that will call methods on DescribeJobExecutionRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the DescribeJobExecution operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • TerminalStateException The job is in a terminal state.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getPendingJobExecutions

      default CompletableFuture<GetPendingJobExecutionsResponse> getPendingJobExecutions(GetPendingJobExecutionsRequest getPendingJobExecutionsRequest)

      Gets the list of all jobs for a thing that are not in a terminal status.

      Parameters:
      getPendingJobExecutionsRequest -
      Returns:
      A Java Future containing the result of the GetPendingJobExecutions operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getPendingJobExecutions

      default CompletableFuture<GetPendingJobExecutionsResponse> getPendingJobExecutions(Consumer<GetPendingJobExecutionsRequest.Builder> getPendingJobExecutionsRequest)

      Gets the list of all jobs for a thing that are not in a terminal status.


      This is a convenience which creates an instance of the GetPendingJobExecutionsRequest.Builder avoiding the need to create one manually via GetPendingJobExecutionsRequest.builder()

      Parameters:
      getPendingJobExecutionsRequest - A Consumer that will call methods on GetPendingJobExecutionsRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the GetPendingJobExecutions operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • startNextPendingJobExecution

      default CompletableFuture<StartNextPendingJobExecutionResponse> startNextPendingJobExecution(StartNextPendingJobExecutionRequest startNextPendingJobExecutionRequest)

      Gets and starts the next pending (status IN_PROGRESS or QUEUED) job execution for a thing.

      Parameters:
      startNextPendingJobExecutionRequest -
      Returns:
      A Java Future containing the result of the StartNextPendingJobExecution operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • startNextPendingJobExecution

      default CompletableFuture<StartNextPendingJobExecutionResponse> startNextPendingJobExecution(Consumer<StartNextPendingJobExecutionRequest.Builder> startNextPendingJobExecutionRequest)

      Gets and starts the next pending (status IN_PROGRESS or QUEUED) job execution for a thing.


      This is a convenience which creates an instance of the StartNextPendingJobExecutionRequest.Builder avoiding the need to create one manually via StartNextPendingJobExecutionRequest.builder()

      Parameters:
      startNextPendingJobExecutionRequest - A Consumer that will call methods on StartNextPendingJobExecutionRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the StartNextPendingJobExecution operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • updateJobExecution

      default CompletableFuture<UpdateJobExecutionResponse> updateJobExecution(UpdateJobExecutionRequest updateJobExecutionRequest)

      Updates the status of a job execution.

      Parameters:
      updateJobExecutionRequest -
      Returns:
      A Java Future containing the result of the UpdateJobExecution operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • InvalidStateTransitionException An update attempted to change the job execution to a state that is invalid because of the job execution's current state (for example, an attempt to change a request in state SUCCESS to state IN_PROGRESS). In this case, the body of the error message also contains the executionState field.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • updateJobExecution

      default CompletableFuture<UpdateJobExecutionResponse> updateJobExecution(Consumer<UpdateJobExecutionRequest.Builder> updateJobExecutionRequest)

      Updates the status of a job execution.


      This is a convenience which creates an instance of the UpdateJobExecutionRequest.Builder avoiding the need to create one manually via UpdateJobExecutionRequest.builder()

      Parameters:
      updateJobExecutionRequest - A Consumer that will call methods on UpdateJobExecutionRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the UpdateJobExecution operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InvalidRequestException The contents of the request were invalid. For example, this code is returned when an UpdateJobExecution request contains invalid status details. The message contains details about the error.
      • ResourceNotFoundException The specified resource does not exist.
      • ThrottlingException The rate exceeds the limit.
      • ServiceUnavailableException The service is temporarily unavailable.
      • CertificateValidationException The certificate is invalid.
      • InvalidStateTransitionException An update attempted to change the job execution to a state that is invalid because of the job execution's current state (for example, an attempt to change a request in state SUCCESS to state IN_PROGRESS). In this case, the body of the error message also contains the executionState field.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • IotJobsDataPlaneException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • serviceClientConfiguration

      default IotJobsDataPlaneServiceClientConfiguration serviceClientConfiguration()
      Description copied from interface: SdkClient
      The SDK service client configuration exposes client settings to the user, e.g., ClientOverrideConfiguration
      Specified by:
      serviceClientConfiguration in interface AwsClient
      Specified by:
      serviceClientConfiguration in interface SdkClient
      Returns:
      SdkServiceClientConfiguration
    • create

      static IotJobsDataPlaneAsyncClient create()
      Create a IotJobsDataPlaneAsyncClient with the region loaded from the DefaultAwsRegionProviderChain and credentials loaded from the DefaultCredentialsProvider.
    • builder

      Create a builder that can be used to configure and create a IotJobsDataPlaneAsyncClient.