Package: org.gradle.api.plugins

## [Java] Interface ObjectConfigurationAction

- An `ObjectConfigurationAction` allows you to apply Plugins and scripts to an object or objects.

- - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `ObjectConfigurationAction` | `from(Object script)` Adds a script to use to configure the target objects.
    `ObjectConfigurationAction` | `plugin(Class<? extends Plugin> pluginClass)` Adds a Plugin to use to configure the target objects.
    `ObjectConfigurationAction` | `plugin(String pluginId)` Adds a Plugin to use to configure the target objects.
    `ObjectConfigurationAction` | `to(Object... targets)`
    `ObjectConfigurationAction` | `type(Class<?> pluginClass)` Adds the plugin implemented by the given class to the target.

- - ### Method Detail

    - #### public ObjectConfigurationAction from(Object script)

      Adds a script to use to configure the target objects. You can call this method multiple times, to use multiple scripts. Scripts and plugins are applied in the order that they are added.

      Parameters:
        `script` - The script. Evaluated as per Project.file. However, note that a URL can also be used, allowing the script to be fetched using HTTP, for example.
      Returns:
        this

    - #### public ObjectConfigurationAction plugin(Class<? extends Plugin> pluginClass)

      Adds a Plugin to use to configure the target objects. You can call this method multiple times, to use multiple plugins. Scripts and plugins are applied in the order that they are added.

      Parameters:
        `pluginClass` - The plugin to apply.
      Returns:
        this

    - #### public ObjectConfigurationAction plugin(String pluginId)

      Adds a Plugin to use to configure the target objects. You can call this method multiple times, to use multiple plugins. Scripts and plugins are applied in the order that they are added.

      Parameters:
        `pluginId` - The id of the plugin to apply.
      Returns:
        this

    - #### public ObjectConfigurationAction to(Object... targets)

      Specifies some target objects to be configured. Any collections or arrays in the given parameters will be flattened, and the script applied to each object in the result, in the order given. Each call to this method adds some additional target objects.

      Parameters:
        `targets` - The target objects.
      Returns:
        this

    - #### public ObjectConfigurationAction type(Class<?> pluginClass)

      Adds the plugin implemented by the given class to the target.

      The class is expected to either implement Plugin, or extend RuleSource. An exception will be thrown if the class is not a valid plugin implementation.

      Parameters:
        `pluginClass` - the plugin to apply
      Returns:
        this