Interface ModelMap<T>

    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.gradle.api.Named

        Named.Namer
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      <S> void afterEach​(java.lang.Class<S> type, Action<? super S> configAction)
      Applies the given action to each item of the given type in the collection, as each item is required.
      void afterEach​(Action<? super T> configAction)
      Applies the given action to each item in the collection, as each item is required.
      void all​(Action<? super T> configAction)
      Applies the given action to each item in the collection, as each item is required.
      <S> void beforeEach​(java.lang.Class<S> type, Action<? super S> configAction)
      Applies the given action to each item of the given type in this collection, as each item is required.
      void beforeEach​(Action<? super T> configAction)
      Applies the given action to each item in this collection, as each item is required.
      boolean containsKey​(java.lang.Object name)
      Returns true if this collection contains an item with the given name.
      boolean containsValue​(java.lang.Object item)
      Returns true if this collection contains the given item.
      void create​(java.lang.String name)
      Defines an item with the given name and type T.
      <S extends T>
      void
      create​(java.lang.String name, java.lang.Class<S> type)
      Defines an item with the given name and type.
      <S extends T>
      void
      create​(java.lang.String name, java.lang.Class<S> type, Action<? super S> configAction)
      Defines an item with the given name and type.
      void create​(java.lang.String name, Action<? super T> configAction)
      Defines an item with the given name and type T.
      T get​(java.lang.Object name)
      Returns the item with the given name, if any.
      T get​(java.lang.String name)
      Returns the item with the given name, if any.
      boolean isEmpty()
      Returns true if this collection contains no items.
      java.util.Set<java.lang.String> keySet()
      Returns the names of the items in this collection.
      void named​(java.lang.String name, java.lang.Class<? extends RuleSource> ruleSource)
      Applies the given rule source class to the given item, when the item is required.
      void named​(java.lang.String name, Action<? super T> configAction)
      Applies the given action to the given item, when the item is required.
      void put​(java.lang.String name, T instance)
      Adds an element to this ModelMap.
      int size()
      Returns the number of items in this collection.
      java.util.Collection<T> values()
      Returns the items in this collection.
      <S> ModelMap<S> withType​(java.lang.Class<S> type)
      Returns a collection containing the items from this collection which are of the specified type.
      <S> void withType​(java.lang.Class<S> type, java.lang.Class<? extends RuleSource> rules)
      Applies the given rules to all items of the collection of the given type.
      <S> void withType​(java.lang.Class<S> type, Action<? super S> configAction)
      Applies the given action to each item of the given type in the collection, as each item is required.
      • Methods inherited from interface java.lang.Iterable

        forEach, iterator, spliterator
    • Method Detail

      • withType

        <S> ModelMap<S> withType​(java.lang.Class<S> type)
        Returns a collection containing the items from this collection which are of the specified type.
        Type Parameters:
        S - The type.
        Parameters:
        type - The type.
        Returns:
        The collection.
      • size

        int size()
        Returns the number of items in this collection.
        Returns:
        the size of this collection.
      • isEmpty

        boolean isEmpty()
        Returns true if this collection contains no items.
        Returns:
        true if this collection is empty.
      • get

        @Nullable
        T get​(java.lang.Object name)
        Returns the item with the given name, if any.
        Parameters:
        name - The name of the item.
        Returns:
        The item, or null if no such item.
      • get

        @Nullable
        T get​(java.lang.String name)
        Returns the item with the given name, if any.
        Parameters:
        name - The name of the item.
        Returns:
        The item, or null if no such item.
      • containsKey

        boolean containsKey​(java.lang.Object name)
        Returns true if this collection contains an item with the given name.
        Parameters:
        name - The name of the item.
        Returns:
        true if this collection contains an item with the given name.
      • containsValue

        boolean containsValue​(java.lang.Object item)
        Returns true if this collection contains the given item.
        Parameters:
        item - The item.
        Returns:
        true if this collection contains the given item.
      • keySet

        java.util.Set<java.lang.String> keySet()
        Returns the names of the items in this collection.
        Returns:
        The names
      • create

        void create​(java.lang.String name)
        Defines an item with the given name and type T. The item is not created immediately, but is instead created as it is required.
        Parameters:
        name - The name.
      • create

        void create​(java.lang.String name,
                    Action<? super T> configAction)
        Defines an item with the given name and type T. The item is not created immediately, but is instead created as it is required.

        The given action is invoked to configure the item when the item is required.

        Parameters:
        name - The name.
        configAction - An action that initialises the item. The action is executed when the item is required.
      • create

        <S extends T> void create​(java.lang.String name,
                                  java.lang.Class<S> type)
        Defines an item with the given name and type. The item is not created immediately, but is instead created as it is required.
        Parameters:
        name - The name.
      • create

        <S extends T> void create​(java.lang.String name,
                                  java.lang.Class<S> type,
                                  Action<? super S> configAction)
        Defines an item with the given name and type. The item is not created immediately, but is instead created as it is required.

        The given action is invoked to configure the item when the item is required.

        Parameters:
        name - The name.
        configAction - An action that initialises the item. The action is executed when the item is required.
      • put

        void put​(java.lang.String name,
                 T instance)
        Adds an element to this ModelMap.
      • named

        void named​(java.lang.String name,
                   Action<? super T> configAction)
        Applies the given action to the given item, when the item is required.

        The given action is invoked to configure the item when the item is required. It is called after any actions provided to beforeEach(org.gradle.api.Action) and create(String, org.gradle.api.Action).

        Parameters:
        name - The name.
        configAction - An action that configures the item. The action is executed when the item is required.
      • named

        void named​(java.lang.String name,
                   java.lang.Class<? extends RuleSource> ruleSource)
        Applies the given rule source class to the given item, when the item is required.

        Rules are applied in the scope of the item therefore:

        • subject by-type and by-path bindings are of inner scope
        • subject can be bound by type to a child of the scope in which the rule is applied
        • input by-path bindings are of inner scope
        • input by-type bindings are of outer scope
        Parameters:
        name - The name.
        ruleSource - A rule source class.
      • beforeEach

        void beforeEach​(Action<? super T> configAction)
        Applies the given action to each item in this collection, as each item is required.

        The given action is invoked to configure the item when the item is required. It is called before any actions provided to create(String, org.gradle.api.Action).

        Parameters:
        configAction - An action that configures the item. The action is executed when the item is required.
      • beforeEach

        <S> void beforeEach​(java.lang.Class<S> type,
                            Action<? super S> configAction)
        Applies the given action to each item of the given type in this collection, as each item is required.

        The given action is invoked to configure the item when the item is required. It is called before any actions provided to create(String, org.gradle.api.Action).

        Parameters:
        type - The type of elements to apply the action to.
        configAction - An action that configures the item. The action is executed when the item is required.
      • all

        void all​(Action<? super T> configAction)
        Applies the given action to each item in the collection, as each item is required.

        The given action is invoked to configure the item when the item is required. It is called after any actions provided to beforeEach(org.gradle.api.Action) and create(String, org.gradle.api.Action).

        Parameters:
        configAction - An action that configures the item. The action is executed when the item is required.
      • withType

        <S> void withType​(java.lang.Class<S> type,
                          Action<? super S> configAction)
        Applies the given action to each item of the given type in the collection, as each item is required.

        The given action is invoked to configure the item when the item is required. It is called after any actions provided to beforeEach(org.gradle.api.Action) and create(String, org.gradle.api.Action).

        Parameters:
        type - The type of elements to apply the action to.
        configAction - An action that configures the item. The action is executed when the item is required.
      • withType

        <S> void withType​(java.lang.Class<S> type,
                          java.lang.Class<? extends RuleSource> rules)
        Applies the given rules to all items of the collection of the given type.
        Parameters:
        type - the type that the item must be/implement to have the rules applied
        rules - rules to apply
      • afterEach

        void afterEach​(Action<? super T> configAction)
        Applies the given action to each item in the collection, as each item is required.

        The given action is invoked to configure the item when the item is required. It is called after any actions provided to beforeEach(org.gradle.api.Action), create(String, org.gradle.api.Action), and other mutation methods.

        Parameters:
        configAction - An action that configures the item. The action is executed when the item is required.
      • afterEach

        <S> void afterEach​(java.lang.Class<S> type,
                           Action<? super S> configAction)
        Applies the given action to each item of the given type in the collection, as each item is required.

        The given action is invoked to configure the item when the item is required. It is called after any actions provided to beforeEach(org.gradle.api.Action), create(String, org.gradle.api.Action), and other mutation methods.

        Parameters:
        type - The type of elements to apply the action to.
        configAction - An action that configures the item. The action is executed when the item is required.
      • values

        java.util.Collection<T> values()
        Returns the items in this collection.
        Returns:
        The items.