Class ClassPathPluginLoader

java.lang.Object
com.atlassian.plugin.loaders.ClassPathPluginLoader
All Implemented Interfaces:
PluginLoader

public class ClassPathPluginLoader extends Object implements PluginLoader
Loads plugins from the classpath
  • Constructor Details

    • ClassPathPluginLoader

      public ClassPathPluginLoader()
    • ClassPathPluginLoader

      public ClassPathPluginLoader(String fileNameToLoad)
  • Method Details

    • loadAllPlugins

      public Iterable<Plugin> loadAllPlugins(ModuleDescriptorFactory moduleDescriptorFactory)
      Description copied from interface: PluginLoader
      Loads all plugins that can be installed in the plugin system.
      Specified by:
      loadAllPlugins in interface PluginLoader
      Parameters:
      moduleDescriptorFactory - the factory for module descriptors
      Returns:
      the list of found plugins, may be empty
    • supportsRemoval

      public boolean supportsRemoval()
      Specified by:
      supportsRemoval in interface PluginLoader
      Returns:
      true if this PluginLoader tracks whether or not plugins are removed from it.
    • supportsAddition

      public boolean supportsAddition()
      Specified by:
      supportsAddition in interface PluginLoader
      Returns:
      true if this PluginLoader tracks whether or not plugins are added to it.
    • isDynamicPluginLoader

      public boolean isDynamicPluginLoader()
      Specified by:
      isDynamicPluginLoader in interface PluginLoader
      Returns:
      true if this plugin loader can load plugins dynamically
    • createModule

      public ModuleDescriptor<?> createModule(Plugin plugin, Element module, ModuleDescriptorFactory moduleDescriptorFactory)
      Description copied from interface: PluginLoader
      If this loader is capable of loading a plugin of the type passed, attempt to create a module descriptor. Add that module descriptor to the plugin.

      If capable, always return a ModuleDescriptor, even if it indicates a failure case. Caller is responsible for handling exceptional ModuleDescriptor.

      Specified by:
      createModule in interface PluginLoader
      Parameters:
      plugin - that the module will be added to
      module - to create
      moduleDescriptorFactory - basic factory, may be overridden
      Returns:
      null if incapable of creating
    • loadFoundPlugins

      public Iterable<Plugin> loadFoundPlugins(ModuleDescriptorFactory moduleDescriptorFactory)
      Description copied from interface: PluginLoader
      Load all newly found plugins that can be installed in the plugin system. Only plugins not previously loaded will be added.
      Specified by:
      loadFoundPlugins in interface PluginLoader
      Parameters:
      moduleDescriptorFactory - the factory for module descriptors
      Returns:
      a list of newly discovered plugins since the last time plugins were loaded
    • removePlugin

      public void removePlugin(Plugin plugin)
      Description copied from interface: PluginLoader
      Remove a specific plugin
      Specified by:
      removePlugin in interface PluginLoader