org.gradle.api.plugins
Interface ExtensionContainer

All Known Subinterfaces:
Convention

public interface ExtensionContainer

Allows adding 'namespaced' DSL extensions to a target object.


Method Summary
 void add(String name, Object extension)
          Adding an extension of name 'foo' will: add 'foo' dynamic property add 'foo' dynamic method that accepts a closure that is a configuration script block
 Object findByName(String name)
          Looks for the extension of a given name.
<T> T
findByType(Class<T> type)
          Looks for the extension of a given type (useful to avoid casting).
 Object getByName(String name)
          Looks for the extension of a given name.
<T> T
getByType(Class<T> type)
          Looks for the extension of a given type (useful to avoid casting).
 

Method Detail

add

void add(String name,
         Object extension)
Adding an extension of name 'foo' will:
  • add 'foo' dynamic property
  • add 'foo' dynamic method that accepts a closure that is a configuration script block

    Parameters:
    name - Will be used as a sort of namespace of properties/methods.
    extension - Any object whose methods and properties will extend the target object

  • getByType

    <T> T getByType(Class<T> type)
                throws UnknownDomainObjectException
    Looks for the extension of a given type (useful to avoid casting). If none found it will throw an exception.

    Parameters:
    type - extension type
    Returns:
    extension, never null
    Throws:
    UnknownDomainObjectException - When the given extension is not found.

    findByType

    <T> T findByType(Class<T> type)
    Looks for the extension of a given type (useful to avoid casting). If none found null is returned.

    Parameters:
    type - extension type
    Returns:
    extension or null

    getByName

    Object getByName(String name)
                     throws UnknownDomainObjectException
    Looks for the extension of a given name. If none found it will throw an exception.

    Parameters:
    name - extension name
    Returns:
    extension, never null
    Throws:
    UnknownDomainObjectException - When the given extension is not found.

    findByName

    Object findByName(String name)
    Looks for the extension of a given name. If none found null is returned.

    Parameters:
    name - extension name
    Returns:
    extension or null