Interface NamedDomainObjectList<T>

Type Parameters:
T - The type of element in the set
All Superinterfaces:
Collection<T>, DomainObjectCollection<T>, Iterable<T>, List<T>, NamedDomainObjectCollection<T>
All Known Subinterfaces:
ArtifactRepositoryContainer, RepositoryHandler

public interface NamedDomainObjectList<T> extends NamedDomainObjectCollection<T>, List<T>

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.

  • Method Details

    • withType

      <S extends T> NamedDomainObjectList<S> withType(Class<S> type)
      Returns a collection containing the objects in this collection of the given type. The returned collection is live, so that when matching objects are later added to this collection, they are also visible in the filtered collection.
      Specified by:
      withType in interface DomainObjectCollection<T>
      Specified by:
      withType in interface NamedDomainObjectCollection<T>
      Parameters:
      type - The type of objects to find.
      Returns:
      The matching objects. Returns an empty collection if there are no such objects in this collection.
    • matching

      NamedDomainObjectList<T> matching(Spec<? super T> spec)
      Returns a collection which contains the objects in this collection which meet the given specification. The returned collection is live, so that when matching objects are added to this collection, they are also visible in the filtered collection.
      Specified by:
      matching in interface DomainObjectCollection<T>
      Specified by:
      matching in interface NamedDomainObjectCollection<T>
      Parameters:
      spec - The specification to use.
      Returns:
      The collection of matching objects. Returns an empty collection if there are no such objects in this collection.
    • matching

      NamedDomainObjectList<T> matching(Closure spec)
      Returns a collection which contains the objects in this collection which meet the given closure specification. The returned collection is live, so that when matching objects are added to this collection, they are also visible in the filtered collection.
      Specified by:
      matching in interface DomainObjectCollection<T>
      Specified by:
      matching in interface NamedDomainObjectCollection<T>
      Parameters:
      spec - The specification to use. The closure gets a collection element as an argument.
      Returns:
      The collection of matching objects. Returns an empty collection if there are no such objects in this collection.
    • findAll

      List<T> findAll(Closure spec)
      Returns a collection which contains the objects in this collection which meet the given closure specification.
      Specified by:
      findAll in interface DomainObjectCollection<T>
      Parameters:
      spec - The specification to use. The closure gets a collection element as an argument.
      Returns:
      The collection of matching objects. Returns an empty collection if there are no such objects in this collection.