com.atlassian.plugin.osgi.factory
Class RemotablePluginFactory
java.lang.Object
com.atlassian.plugin.factories.AbstractPluginFactory
com.atlassian.plugin.osgi.factory.RemotablePluginFactory
- All Implemented Interfaces:
- PluginFactory
public final class RemotablePluginFactory
- extends AbstractPluginFactory
Plugin loader that starts an OSGi container and loads plugins into it, wrapped as OSGi bundles. Supports
- Dynamic loading of module descriptors via OSGi services
- Delayed enabling until the plugin container is active
- XML or Jar manifest configuration
- Since:
- 3.0
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RemotablePluginFactory
public RemotablePluginFactory(java.lang.String pluginDescriptorFileName,
java.util.Set<Application> applications,
OsgiContainerManager osgi,
PluginEventManager pluginEventManager)
- Constructor for implementations that want to override the DefaultPluginTransformer with a custom implementation
getDescriptorInputStream
protected java.io.InputStream getDescriptorInputStream(PluginArtifact pluginArtifact)
- Specified by:
getDescriptorInputStream in class AbstractPluginFactory
isValidPluginsVersion
protected com.google.common.base.Predicate<java.lang.Integer> isValidPluginsVersion()
- Specified by:
isValidPluginsVersion in class AbstractPluginFactory
create
public Plugin create(PluginArtifact pluginArtifact,
ModuleDescriptorFactory moduleDescriptorFactory)
throws PluginParseException
- Creates the plugin
- Parameters:
pluginArtifact - the plugin artifact to deploymoduleDescriptorFactory - The factory for plugin modules
- Returns:
- The instantiated and populated plugin
- Throws:
PluginParseException - If the descriptor cannot be parsed
java.lang.IllegalArgumentException - If the plugin descriptor isn't found, and the plugin key and bundle version aren't
specified in the manifest
Copyright © 2013 Atlassian. All Rights Reserved.