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 Details

    • 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