Interface PluginSetupDescriptor

All Known Implementing Classes:
ClasspathFilePluginSetupDescriptor, CurrentClassloaderPluginSetupDescriptor, CurrentContextPluginSetupDescriptor, FolderClasspathPluginSetupDescriptor, PluginBasedSetupDescriptor, ResourceClasspathPluginSetupDescriptor, URLPluginSetupDescriptor

public interface PluginSetupDescriptor
A descriptor to describe the presence of a plugin. Used for setting up the PluginManager.
Author:
Holger Eichelberger, SSE
  • Method Details

    • createClassLoader

      ClassLoader createClassLoader(ClassLoader parent)
      Returns the class loader being responsible for loading the plugin.
      Parameters:
      parent - the parent class loader with basic dependencies to use for loading this plugin
      Returns:
      the class loader
    • getInstallDir

      default File getInstallDir()
      Returns the installation directory.
      Returns:
      the installation directory, may be null
    • preventDuplicates

      default boolean preventDuplicates()
      Prevents duplicates by classloader filtering. [testing]
      Returns:
      true prevent (default), false allow all
    • getPluginDescriptors

      default Stream<PluginDescriptor> getPluginDescriptors(ClassLoader loader)
      Returns the plugin descriptors represented by this setup descriptor.
      Parameters:
      loader - the class loader to use, preferably the result of createClassLoader(ClassLoader)
      Returns:
      the plugin descriptors