Groovy Documentation

org.gradle.api
[Java] Interface PolymorphicDomainObjectContainer

org.gradle.api.NamedDomainObjectCollection
  org.gradle.api.DomainObjectCollection
      org.gradle.api.NamedDomainObjectSet
          java.lang.Iterable
              org.gradle.util.Configurable
                  org.gradle.api.NamedDomainObjectContainer
                      java.util.Collection
                          org.gradle.api.PolymorphicDomainObjectContainer
All Superinterfaces:
NamedDomainObjectCollection, DomainObjectCollection, NamedDomainObjectSet, Iterable, Configurable, NamedDomainObjectContainer, Collection

@Incubating
public interface PolymorphicDomainObjectContainer
extends NamedDomainObjectContainer

A NamedDomainObjectContainer that allows to create domain objects with different types.

Parameters:
- the (base) type of domain objects in the container


Method Summary
Object create(String name, Class type)

Creates a domain object with the specified name and type, and adds it to the container.

Object create(String name, Class type, Action configuration)

Creates a domain object with the specified name and type, adds it to the container, and configures it with the specified action.

 
Methods inherited from interface NamedDomainObjectContainer
configure, create, create, create, maybeCreate
 
Methods inherited from interface NamedDomainObjectSet
findAll, matching, matching, withType
 

Method Detail

create

public Object create(String name, Class type)
Creates a domain object with the specified name and type, and adds it to the container.
throws:
InvalidUserDataException if a domain object with the specified name already exists or the container does not support creating a domain object with the specified type
Parameters:
name - the name of the domain object to be created
type - the type of the domain object to be created
- the type of the domain object to be created
Returns:
the created domain object


create

public Object create(String name, Class type, Action configuration)
Creates a domain object with the specified name and type, adds it to the container, and configures it with the specified action.
throws:
InvalidUserDataException if a domain object with the specified name already exists or the container does not support creating a domain object with the specified type
Parameters:
name - the name of the domain object to be created
type - the type of the domain object to be created
configuration - an action for configuring the domain object
- the type of the domain object to be created
Returns:
the created domain object


 

Gradle API 1.8