Package: org.grails.plugins

## [Java] Class AbstractGrailsPluginManager

- org.grails.plugins.AbstractGrailsPluginManager

- All Implemented Interfaces and Traits:
    GrailsPluginManager

      public abstract class AbstractGrailsPluginManager
      extends java.lang.Object
      implements GrailsPluginManager

  Abstract implementation of the GrailsPluginManager interface

  Authors:
    Graeme Rocher
  Since:
    0.4

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `private static java.lang.String` | `BLANK` |
    `private static java.lang.String` | `CONFIG_BINDING_APP_NAME` |
    `private static java.lang.String` | `CONFIG_BINDING_APP_VERSION` |
    `private static java.lang.String` | `CONFIG_BINDING_GRAILS_HOME` |
    `private static java.lang.String` | `CONFIG_BINDING_USER_HOME` |
    `static java.lang.String` | `CONFIG_FILE` |
    `private static org.apache.commons.logging.Log` | `LOG` |
    `protected GrailsApplication` | `application` |
    `protected org.springframework.context.ApplicationContext` | `applicationContext` |
    `protected java.util.Map<java.lang.String, GrailsPlugin>` | `classNameToPluginMap` |
    `protected java.util.Map<java.lang.String, GrailsPlugin>` | `failedPlugins` |
    `protected boolean` | `initialised` |
    `protected boolean` | `loadCorePlugins` |
    `protected java.lang.Class<?>[]` | `pluginClasses` |
    `protected java.util.List<GrailsPlugin>` | `pluginList` |
    `protected org.springframework.core.io.Resource[]` | `pluginResources` |
    `protected java.util.Map<java.lang.String, GrailsPlugin>` | `plugins` |
    `protected boolean` | `shutdown` |

  - ### Constructor Summary

    Constructors
    Constructor and description
    `AbstractGrailsPluginManager (GrailsApplication application)`

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `protected void` | `checkInitialised()`
    `` | `public java.lang.Object` | `convert(NullSafeNavigator source)`
    `` | `public void` | `doArtefactConfiguration()`
    `` | `public void` | `doDynamicMethods()`
    `` | `public void` | `doPostProcessing(org.springframework.context.ApplicationContext ctx)` Base implementation that will simply go through each plugin and call doWithApplicationContext on each.
    `` | `public void` | `doRuntimeConfiguration(RuntimeSpringConfiguration springConfig)` Base implementation that simply goes through the list of plugins and calls doWithRuntimeConfiguration on each
    `` | `public void` | `doRuntimeConfiguration(java.lang.String pluginName, RuntimeSpringConfiguration springConfig)` Base implementation that will perform runtime configuration for the specified plugin name.
    `` | `private void` | `doRuntimeConfigurationForDependencies(java.lang.String[] dependencyNames, RuntimeSpringConfiguration springConfig)`
    `` | `public GrailsPlugin[]` | `getAllPlugins()`
    `` | `static groovy.util.ConfigSlurper` | `getConfigSlurper(GrailsApplication application)`
    `` | `public GrailsPlugin[]` | `getFailedLoadPlugins()`
    `` | `public GrailsPlugin` | `getFailedPlugin(java.lang.String name)`
    `` | `public GrailsPlugin` | `getGrailsPlugin(java.lang.String name)`
    `` | `public GrailsPlugin` | `getGrailsPlugin(java.lang.String name, java.lang.Object version)`
    `` | `public GrailsPlugin` | `getGrailsPluginForClassName(java.lang.String name)`
    `` | `public GrailsPlugin` | `getPluginForClass(java.lang.Class<?> theClass)`
    `` | `public GrailsPlugin` | `getPluginForInstance(java.lang.Object instance)`
    `` | `public java.lang.String` | `getPluginPath(java.lang.String name)`
    `` | `public java.lang.String` | `getPluginPath(java.lang.String name, boolean forceCamelCase)`
    `` | `public java.lang.String` | `getPluginPathForClass(java.lang.Class<?> theClass)`
    `` | `public java.lang.String` | `getPluginPathForInstance(java.lang.Object instance)`
    `` | `public org.springframework.core.io.Resource[]` | `getPluginResources()`
    `` | `public java.lang.String` | `getPluginViewsPathForClass(java.lang.Class<?> theClass)`
    `` | `public java.lang.String` | `getPluginViewsPathForInstance(java.lang.Object instance)`
    `` | `public java.util.List<org.springframework.core.type.filter.TypeFilter>` | `getTypeFilters()`
    `` | `public boolean` | `hasGrailsPlugin(java.lang.String name)`
    `` | `public void` | `informOfClassChange(java.lang.Class<?> aClass)`
    `` | `public void` | `informOfClassChange(java.io.File file, java.lang.Class cls)`
    `` | `public void` | `informOfFileChange(java.io.File file)`
    `` | `public void` | `informPluginsOfConfigChange()`
    `` | `private boolean` | `isAlreadyRegistered(GrailsApplication app, java.lang.Class<?> artefact)`
    `` | `public boolean` | `isInitialised()` Returns: the initialised
    `` | `protected boolean` | `isPluginDisabledForProfile(GrailsPlugin plugin)`
    `` | `public boolean` | `isShutdown()`
    `` | `private java.lang.Class<?>` | `loadApplicationClass(java.lang.String className)`
    `` | `public void` | `onStartup(java.util.Map<java.lang.String, java.lang.Object> event)`
    `` | `public void` | `registerProvidedArtefacts(GrailsApplication app)`
    `` | `public void` | `setApplication(GrailsApplication application)`
    `` | `public void` | `setApplicationContext(org.springframework.context.ApplicationContext applicationContext)`
    `` | `public void` | `setLoadCorePlugins(boolean shouldLoadCorePlugins)`
    `` | `public void` | `setPluginFilter(PluginFilter pluginFilter)`
    `` | `public void` | `shutdown()`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class java.lang.Object` | `java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()`

- - ### Field Detail

    - #### private static final java.lang.String BLANK

    - #### private static final java.lang.String CONFIG_BINDING_APP_NAME

    - #### private static final java.lang.String CONFIG_BINDING_APP_VERSION

    - #### private static final java.lang.String CONFIG_BINDING_GRAILS_HOME

    - #### private static final java.lang.String CONFIG_BINDING_USER_HOME

    - #### public static final java.lang.String CONFIG_FILE

    - #### private static final org.apache.commons.logging.Log LOG

    - #### protected GrailsApplication application

    - #### protected org.springframework.context.ApplicationContext applicationContext

    - #### protected java.util.Map<java.lang.String, GrailsPlugin> classNameToPluginMap

    - #### protected java.util.Map<java.lang.String, GrailsPlugin> failedPlugins

    - #### protected boolean initialised

    - #### protected boolean loadCorePlugins

    - #### protected java.lang.Class<?>[] pluginClasses

    - #### protected java.util.List<GrailsPlugin> pluginList

    - #### protected org.springframework.core.io.Resource[] pluginResources

    - #### protected java.util.Map<java.lang.String, GrailsPlugin> plugins

    - #### protected boolean shutdown

  - ### Constructor Detail

    - #### public AbstractGrailsPluginManager(GrailsApplication application)

  - ### Method Detail

    - #### protected void checkInitialised()

    - #### @java.lang.Override public java.lang.Object convert(NullSafeNavigator source)

    - #### public void doArtefactConfiguration()

    - #### public void doDynamicMethods()

    - #### public void doPostProcessing(org.springframework.context.ApplicationContext ctx)

      Base implementation that will simply go through each plugin and call doWithApplicationContext on each.

    - #### public void doRuntimeConfiguration(RuntimeSpringConfiguration springConfig)

      Base implementation that simply goes through the list of plugins and calls doWithRuntimeConfiguration on each

      Parameters:
        `springConfig` - The RuntimeSpringConfiguration instance

    - #### public void doRuntimeConfiguration(java.lang.String pluginName, RuntimeSpringConfiguration springConfig)

      Base implementation that will perform runtime configuration for the specified plugin name.

    - #### private void doRuntimeConfigurationForDependencies(java.lang.String[] dependencyNames, RuntimeSpringConfiguration springConfig)

    - #### public GrailsPlugin[] getAllPlugins()

    - #### static groovy.util.ConfigSlurper getConfigSlurper(GrailsApplication application)

    - #### public GrailsPlugin[] getFailedLoadPlugins()

    - #### public GrailsPlugin getFailedPlugin(java.lang.String name)

    - #### public GrailsPlugin getGrailsPlugin(java.lang.String name)

    - #### public GrailsPlugin getGrailsPlugin(java.lang.String name, java.lang.Object version)

    - #### public GrailsPlugin getGrailsPluginForClassName(java.lang.String name)

    - #### public GrailsPlugin getPluginForClass(java.lang.Class<?> theClass)

    - #### public GrailsPlugin getPluginForInstance(java.lang.Object instance)

    - #### public java.lang.String getPluginPath(java.lang.String name)

    - #### public java.lang.String getPluginPath(java.lang.String name, boolean forceCamelCase)

    - #### public java.lang.String getPluginPathForClass(java.lang.Class<?> theClass)

    - #### public java.lang.String getPluginPathForInstance(java.lang.Object instance)

    - #### public org.springframework.core.io.Resource[] getPluginResources()

    - #### public java.lang.String getPluginViewsPathForClass(java.lang.Class<?> theClass)

    - #### public java.lang.String getPluginViewsPathForInstance(java.lang.Object instance)

    - #### public java.util.List<org.springframework.core.type.filter.TypeFilter> getTypeFilters()

    - #### public boolean hasGrailsPlugin(java.lang.String name)

    - #### public void informOfClassChange(java.lang.Class<?> aClass)

    - #### public void informOfClassChange(java.io.File file, @java.lang.SuppressWarnings("rawtypes") java.lang.Class cls)

    - #### public void informOfFileChange(java.io.File file)

    - #### @java.lang.Override public void informPluginsOfConfigChange()

    - #### private boolean isAlreadyRegistered(GrailsApplication app, java.lang.Class<?> artefact)

    - #### public boolean isInitialised()

      Returns:
        the initialised

    - #### protected boolean isPluginDisabledForProfile(GrailsPlugin plugin)

    - #### public boolean isShutdown()

    - #### private java.lang.Class<?> loadApplicationClass(java.lang.String className)

    - #### public void onStartup(java.util.Map<java.lang.String, java.lang.Object> event)

    - #### public void registerProvidedArtefacts(GrailsApplication app)

    - #### public void setApplication(GrailsApplication application)

    - #### public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)

    - #### public void setLoadCorePlugins(boolean shouldLoadCorePlugins)

    - #### @java.lang.Override public void setPluginFilter(PluginFilter pluginFilter)

    - #### public void shutdown()