Interface BuildActionExecuter<T>

Type Parameters:
T - The type of result produced by this executer.
All Superinterfaces:
ConfigurableLauncher<BuildActionExecuter<T>>, LongRunningOperation

public interface BuildActionExecuter<T> extends ConfigurableLauncher<BuildActionExecuter<T>>
Used to execute a BuildAction in the build process.
Since:
1.8
  • Method Details

    • setStreamedValueListener

      @Incubating void setStreamedValueListener(StreamedValueListener listener)
      Sets the listener to use to streamed values sent from the action via BuildController.send(Object). Replaces the current listener.
      Since:
      8.6
    • forTasks

      BuildActionExecuter<T> forTasks(String... tasks)

      Specifies the tasks to execute before executing the BuildAction.

      If not configured or a null array, then no tasks will be executed. If an empty array, the default tasks for the build will be executed.

      If the target Gradle version is >=6.8 then you can execute tasks from included builds. You can target tasks from included builds by specifying the task identity path (i.e. ':included-build-name:subproject-name:taskName').

      Parameters:
      tasks - The paths of the tasks to be executed. Relative paths are evaluated relative to the project for which this launcher was created. An empty list will run the project's default tasks.
      Returns:
      this
      Since:
      3.5
    • forTasks

      BuildActionExecuter<T> forTasks(Iterable<String> tasks)

      Specifies the tasks to execute before executing the BuildAction.

      If not configured or a null iterable, then no tasks will be executed. If an empty iterable, the default tasks for the build will be executed.

      If the target Gradle version is >=6.8 then you can execute tasks from included builds. You can target tasks from included builds by specifying the task identity path (i.e. ':included-build-name:subproject-name:taskName').

      Parameters:
      tasks - The paths of the tasks to be executed. Relative paths are evaluated relative to the project for which this launcher was created. An empty list will run the project's default tasks.
      Returns:
      this
      Since:
      3.5
    • run

      Runs the action, blocking until its result is available.
      Throws:
      UnsupportedVersionException - When the target Gradle version does not support build action execution.
      UnsupportedOperationConfigurationException - When the target Gradle version does not support some requested configuration option.
      UnsupportedBuildArgumentException - When there is a problem with build arguments provided by ConfigurableLauncher.withArguments(String...).
      BuildActionFailureException - When the build action fails with an exception.
      BuildCancelledException - When the operation was cancelled before it completed successfully.
      BuildException - On some failure executing the Gradle build.
      GradleConnectionException - On some other failure using the connection.
      IllegalStateException - When the connection has been closed or is closing.
      Since:
      1.8
    • run

      void run(ResultHandler<? super T> handler) throws IllegalStateException
      Starts executing the action, passing the result to the given handler when complete. This method returns immediately, and the result is later passed to the given handler's ResultHandler.onComplete(Object) method.

      If the operation fails, the handler's ResultHandler.onFailure(GradleConnectionException) method is called with the appropriate exception. See run() for a description of the various exceptions that the operation may fail with.

      Parameters:
      handler - The handler to supply the result to.
      Throws:
      IllegalStateException - When the connection has been closed or is closing.
      Since:
      1.8