Class UnloadableStaticPluginFactory

java.lang.Object
com.atlassian.plugin.factories.AbstractPluginFactory
com.atlassian.plugin.osgi.factory.UnloadableStaticPluginFactory
All Implemented Interfaces:
com.atlassian.plugin.factories.PluginFactory

public final class UnloadableStaticPluginFactory extends com.atlassian.plugin.factories.AbstractPluginFactory
Creates unloadable plugins from static plugins. Used to handle when a static plugin (version 1) is deployed to a directory that only accepts OSGi plugins. This should be placed last in the chain of plugin factories and only if LegacyDynamicPluginFactory is not used.
Since:
2.2.3
  • Constructor Details

    • UnloadableStaticPluginFactory

      public UnloadableStaticPluginFactory(String pluginDescriptorFileName)
  • Method Details

    • getDescriptorInputStream

      protected InputStream getDescriptorInputStream(com.atlassian.plugin.PluginArtifact pluginArtifact)
      Specified by:
      getDescriptorInputStream in class com.atlassian.plugin.factories.AbstractPluginFactory
    • isValidPluginsVersion

      protected Predicate<Integer> isValidPluginsVersion()
      Specified by:
      isValidPluginsVersion in class com.atlassian.plugin.factories.AbstractPluginFactory
    • create

      public com.atlassian.plugin.Plugin create(com.atlassian.plugin.PluginArtifact pluginArtifact, com.atlassian.plugin.ModuleDescriptorFactory moduleDescriptorFactory)
      Creates an unloadable plugin
      Parameters:
      pluginArtifact - the plugin artifact to deploy
      moduleDescriptorFactory - The factory for plugin modules
      Returns:
      The instantiated and populated plugin
      Throws:
      com.atlassian.plugin.PluginParseException - If the descriptor cannot be parsed
    • createModule

      @Deprecated public com.atlassian.plugin.ModuleDescriptor<?> createModule(com.atlassian.plugin.Plugin plugin, com.atlassian.plugin.module.Element module, com.atlassian.plugin.ModuleDescriptorFactory moduleDescriptorFactory)
      Deprecated.
      since 7.5.0, use createModule(Plugin, com.atlassian.plugin.module.Element, ModuleDescriptorFactory) instead. This will be removed in atlassian-plugins 8.0.0.