public class DefaultPluginDiscovery extends java.lang.Object implements PluginDiscovery
Default PluginDiscovery implementation used during Grails bootstrap.
This class discovers plugins from two sources:
When init(Environment) is invoked, the discovery process loads candidate plugins, applies the configured PluginFilter, resolves load ordering and delayed dependencies, and exposes both the load order and the topologically sorted order required by later bootstrap components.
| Modifiers | Name | Description |
|---|---|---|
protected Metadata |
applicationMeta |
|
protected java.util.Map<PluginInfo, java.lang.String> |
delayedEvictions |
|
protected java.util.List<PluginInfo> |
delayedLoadPlugins |
|
protected java.util.List<PluginInfo> |
dynamicPlugins |
|
protected java.util.Map<java.lang.String, PluginInfo> |
failedPlugins |
|
protected PluginFilterRetriever |
filterRetriever |
|
protected boolean |
initialized |
|
protected boolean |
loadClasspathPlugins |
|
protected java.util.List<PluginInfo> |
loadOrderedPlugins |
|
protected java.util.List<PluginInfo> |
orderedPlugins |
|
protected java.lang.Class<?>[] |
pluginClasses |
|
protected PluginFilter |
pluginFilter |
|
protected Resource[] |
pluginResources |
|
protected java.util.Map<java.lang.String, java.util.Set<PluginInfo>> |
pluginToObserverMap |
|
protected java.util.LinkedHashMap<java.lang.String, PluginInfo> |
plugins |
|
protected boolean |
requireClasspathPlugin |
| Constructor and description |
|---|
DefaultPluginDiscovery() |
DefaultPluginDiscovery(PluginFilterRetriever filterRetriever) |
DefaultPluginDiscovery(java.lang.String resourcePath) |
DefaultPluginDiscovery(java.lang.Class<?>[] pluginClasses) |
DefaultPluginDiscovery(java.lang.String[] pluginResources) |
DefaultPluginDiscovery(Resource[] pluginFiles) |
| Type Params | Return Type | Name and description |
|---|---|---|
|
protected void |
evictPlugin(PluginInfo evictor, java.lang.String evicteeName) |
|
public PluginInfo |
findPlugin(java.lang.String pluginName) |
|
public PluginInfo |
findPlugin(java.lang.String pluginName, java.lang.Object version) |
|
public java.util.Collection<PluginInfo> |
findPluginObservers(PluginInfo plugin) |
|
public java.util.Collection<PluginInfo> |
getDynamicPlugins() |
|
public PluginInfo |
getFailedPlugin(java.lang.String name) |
|
public java.util.Collection<PluginInfo> |
getFailedPlugins() |
|
public Resource[] |
getPluginResources() |
|
public java.util.List<PluginInfo> |
getPluginsInLoadOrder() |
|
public java.util.List<PluginInfo> |
getPluginsInTopologicalOrder() |
|
public boolean |
hasFailedPlugin(java.lang.String name) |
|
public boolean |
hasPlugin(java.lang.String name) |
|
public void |
init(Environment environment) |
|
public void |
reset()Resets all derived discovery state so plugin discovery can be performed again. |
|
public void |
setClasspathPluginsRequired(boolean requireClasspathPlugin) |
|
public void |
setLoadPluginsFromClasspath(boolean loadClasspathPlugins) |
|
public void |
setPluginClasses(java.lang.Class<?>[] pluginClasses) |
|
public void |
setPluginFilter(PluginFilter filter) |
|
public void |
setPluginResources(java.lang.String[] pluginResources) |
|
public void |
setPluginResources(java.lang.String resourcePath) |
|
public void |
setPluginResources(Resource[] pluginResources) |
| Methods inherited from class | Name |
|---|---|
class java.lang.Object |
java.lang.Object#equals(java.lang.Object), java.lang.Object#getClass(), java.lang.Object#hashCode(), java.lang.Object#notify(), java.lang.Object#notifyAll(), java.lang.Object#toString(), java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int) |
Resets all derived discovery state so plugin discovery can be performed again.
This is primarily intended for controlled scenarios such as tests.