Package: org.gradle.api

## [Java] Interface NamedDomainObjectList<T>

- org.gradle.api.NamedDomainObjectList

- All Superinterfaces:
    Iterable, NamedDomainObjectCollection, DomainObjectCollection, Collection

  A specialisation of NamedDomainObjectCollection that also implements List.

  All object equality is determined in terms of object names. That is, calling `remove()` with an object that is NOT equal to an existing object in terms of `equals`, but IS in terms of name equality will result in the existing collection item with the equal name being removed.

  Parameters:
    `` - The type of element in the set

- - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `List<T>` | `findAll(groovy.lang.Closure spec)` {@inheritDoc}
    `NamedDomainObjectList<T>` | `matching(Spec<? super T> spec)` {@inheritDoc}
    `NamedDomainObjectList<T>` | `matching(groovy.lang.Closure spec)` {@inheritDoc}
    `NamedDomainObjectList<S>` | `withType(Class<S> type)` {@inheritDoc}

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `interface NamedDomainObjectCollection` | `add, addAll, addRule, addRule, findByName, getAsMap, getAt, getByName, getByName, getNamer, getNames, getRules, matching, matching, withType`
    `interface List` | `add, add, get, equals, hashCode, indexOf, clear, contains, isEmpty, lastIndexOf, size, subList, toArray, toArray, addAll, addAll, iterator, remove, remove, set, containsAll, listIterator, listIterator, removeAll, retainAll`
    `class Object` | `wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`

- - ### Method Detail

    - #### public List<T> findAll(groovy.lang.Closure spec)

      {@inheritDoc}

    - #### public NamedDomainObjectList<T> matching(Spec<? super T> spec)

      {@inheritDoc}

    - #### public NamedDomainObjectList<T> matching(groovy.lang.Closure spec)

      {@inheritDoc}

    - #### public NamedDomainObjectList<S> withType(Class<S> type)

      {@inheritDoc}