plugins

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Compose method

Allow a rule source to be applied to a model node using an `ExtractedRuleSource` instead of a `Class`.

This allows the `ExtractedRuleSource` to be contextualized in some way, for example, explicit input bindings.

+review REVIEW-5756

  1. … 9 more files in changeset.
Introduced a type to represent an inspected rule source.

Previously this was represented as a set of rule methods. Introducing a type will allow meta-data that applies to the rule source as a whole, such as implicit inputs, to be captured.

+review REVIEW-5756

  1. … 13 more files in changeset.
Moved some classes from o.g.model.internal.core to o.g.model.internal.inspect.

Also moved a class that was only used by a single test to live in that test class.

+review REVIEW-5756

  1. … 27 more files in changeset.
Introduced `RuleSourceSchema` to represent the result of inspecting a `RuleSource`.

+review REVIEW-5756

  1. … 4 more files in changeset.
Simplified extracted rules a bit

+review REVIEW-5620

  1. … 8 more files in changeset.
Prevents decorated subtypes from being used as model node types.

+review REVIEW-5526

  1. … 3 more files in changeset.
Extracted a ScriptTarget type out of DefaultScriptPluginFactory, to encapsulate the target specific behaviour. Also removed some parameters from ScriptPluginFactory.create() that are implied by other parameters.

    • -2
    • +1
    ./DefaultObjectConfigurationAction.java
  1. … 18 more files in changeset.
Allow using hasPlugin() or similar in a plugin application callback.

  1. … 1 more file in changeset.
Release no longer needed script runtime classloaders.

+review REVIEW-5411

    • -1
    • +1
    ./DefaultObjectConfigurationAction.java
  1. … 23 more files in changeset.
GRADLE-3249 - Don't fire pluginManager.withPlugin() callbacks until after the plugin has been “applied”.

+review

  1. … 1 more file in changeset.
Push replaceOrCreate to model registry.

Realligned some other model registry methods.

+review REVIEW-5382

  1. … 14 more files in changeset.
Pull the error for trying to create model nodes as scopes other than root “up”.

+review REVIEW-5353

  1. … 26 more files in changeset.
Added method to ClassLoaderScope to efficiently check whether a Class is defined by a given scope, without needing to construct the ClassLoaders for the scope.

Use this in DefaultPluginRegistry to decide whether to inspect a class or not.

  1. … 6 more files in changeset.
Changed plugin registry so that it queries its parent when inspecting a type before attempting to inspect the type itself. Previously, every registry was inspecting each type, which is practice means that no caching was actually being done.

Also changed DefaultPluginRegistry so that it is always backed by a ClassLoaderScope. Changed the root ClassLoaderScope so that its local ClassLoader is the core plugins ClassLoader.

  1. … 12 more files in changeset.
Some internal reorganisation of DefaultPluginManager.

  1. … 1 more file in changeset.
Rename ModelRuleRegistration to ExtractedModelRule.

+review REVIEW-5353

  1. … 20 more files in changeset.
Remove PluginClassApplicator.

+review REVIEW-5353

  1. … 3 more files in changeset.
Rename ModelRuleInspector to ModelRuleExtractor.

+review REVIEW-5353

  1. … 11 more files in changeset.
Push the class to rule extractor into the registry, to allow nodes etc. to accept RuleSource classes.

While it bothers me slightly that we are pushing knowledge of a particular type of rule representation into the registry, it saves having to cart some extra stuff around.

+review REVIEW-5353

  1. … 37 more files in changeset.
Simplified handling of qualified and unqualified plugin ids in DefaultPluginContainer and DefaultPluginManager.

  1. … 3 more files in changeset.
Added some unit test coverage for DefaultPluginManager and fixed an issue finding plugins from an empty plugin container.

  1. … 1 more file in changeset.
Added a displayName to PluginImplementation.

  1. … 1 more file in changeset.
Changed PluginRegistry.inspect() to also return a PluginImplementation.

  1. … 1 more file in changeset.
Renamed PotentialPluginWithId to PluginImplementation.

    • -0
    • +28
    ./PluginImplementation.java
  1. … 6 more files in changeset.
Use consistent exception for badly-formed plugin implementation.

  1. … 1 more file in changeset.
Added PotentialPluginWithId.isAlsoKnownAs() to allow the alternate ids for a plugin to be queried.

  1. … 1 more file in changeset.
Changed PluginRegistry.lookup() to accept a PluginId. Added some test coverage and simplified implementation of DefaultPluginRegistry.

  1. … 5 more files in changeset.
Don't discard the PotentialPluginWithId lookup that the plugin container does. Instead, pass it across to the plugin manager to apply.

Changed PotentialPluginWithId into an interface.

    • -0
    • +54
    ./DefaultPotentialPluginWithId.java
  1. … 3 more files in changeset.