Package org.gradle.api.tasks

## Interface TaskProvider<T extends Task>

- Type Parameters:
    `T` - Task type
  All Superinterfaces:
    `NamedDomainObjectProvider<T>`, `Provider<T>`

      public interface TaskProvider<T extends Task>
      extends NamedDomainObjectProvider<T>

  Providers a task of the given type.
  Since:
    4.8

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `configure​(Action<? super T> action)` | Configures the task with the given action.
    `String` | `getName()` | The task name referenced by this provider.

    - ### Methods inherited from interface org.gradle.api.provider.Provider

      `flatMap, forUseAtConfigurationTime, get, getOrElse, getOrNull, isPresent, map, orElse, orElse, zip`

- - ### Method Detail

    - #### configure

          void configure​(Action<? super T> action)

      Configures the task with the given action. Actions are run in the order added.
      Specified by:
        `configure` in interface `NamedDomainObjectProvider<T extends Task>`
      Parameters:
        `action` - A `Action` that can configure the task when required.
      Since:
        4.8

    - #### getName

          String getName()

      The task name referenced by this provider.

      Must be constant for the life of the object.

      Specified by:
        `getName` in interface `NamedDomainObjectProvider<T extends Task>`
      Returns:
        The task name. Never null.
      Since:
        4.9