Package org.gradle.api

# Interface NamedDomainObjectProvider<T>

Type Parameters:
  `T` - type of domain object

All Superinterfaces:
  `Provider<T>`

All Known Subinterfaces:
  `TaskProvider<T>`

public interface NamedDomainObjectProvider<T> extends Provider<T>
Provides a domain object of the given type.

Since:
  4.10

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `configure(Action<? super T> action)`
  Configures the domain object with the given action.
  `String`
  `getName()`
  The domain object name referenced by this provider.

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

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

- ## Method Details

  - ### configure

    void configure(Action<? super T> action)
    Configures the domain object with the given action. Actions are run in the order added.
    Parameters:
      `action` - A `Action` that can configure the domain object when required.
    Since:
      4.10

  - ### getName

    String getName()
    The domain object name referenced by this provider.

    Must be constant for the life of the object.

    Returns:
      The domain object. Never null.
    Since:
      4.10