Interface Convention

  • All Superinterfaces:
    ExtensionContainer

    public interface Convention
    extends ExtensionContainer

    A Convention manages a set of convention objects. When you add a convention object to a Convention, and the properties and methods of the convention object become available as properties and methods of the object which the convention is associated to. A convention object is simply a POJO or POGO. Usually, a Convention is used by plugins to extend a Project or a Task.

    • Method Detail

      • getPlugins

        Map<String,​Object> getPlugins()
        Returns the plugin convention objects contained in this convention.
        Returns:
        The plugins. Returns an empty map when this convention does not contain any convention objects.
      • getPlugin

        <T> T getPlugin​(Class<T> type)
                 throws IllegalStateException
        Locates the plugin convention object with the given type.
        Parameters:
        type - The convention object type.
        Returns:
        The object. Never returns null.
        Throws:
        IllegalStateException - When there is no such object contained in this convention, or when there are multiple such objects.
      • findPlugin

        @Nullable
        <T> T findPlugin​(Class<T> type)
                  throws IllegalStateException
        Locates the plugin convention object with the given type.
        Parameters:
        type - The convention object type.
        Returns:
        The object. Returns null if there is no such object.
        Throws:
        IllegalStateException - When there are multiple matching objects.
      • getExtensionsAsDynamicObject

        org.gradle.internal.metaobject.DynamicObject getExtensionsAsDynamicObject()
        Returns a dynamic object which represents the properties and methods contributed by the extensions and convention objects contained in this convention.
        Returns:
        The dynamic object