public final class OsgiBundleFactory extends AbstractPluginFactory
applications, descriptorParserFactory| Constructor and Description |
|---|
OsgiBundleFactory(OsgiContainerManager osgi) |
OsgiBundleFactory(String pluginDescriptorFileName,
OsgiContainerManager osgi) |
| Modifier and Type | Method and Description |
|---|---|
String |
canCreate(PluginArtifact pluginArtifact)
Determines if this deployer can handle this artifact by looking for the plugin descriptor
|
Plugin |
create(PluginArtifact pluginArtifact,
ModuleDescriptorFactory moduleDescriptorFactory)
Create a plugin from the given artifact.
|
ModuleDescriptor<?> |
createModule(Plugin plugin,
org.dom4j.Element module,
ModuleDescriptorFactory moduleDescriptorFactory)
If this factory is capable of loading a plugin of the type passed, attempt to create a module descriptor.
|
protected InputStream |
getDescriptorInputStream(PluginArtifact pluginArtifact) |
protected Predicate<Integer> |
isValidPluginsVersion() |
getPluginKeyFromDescriptor, hasDescriptorpublic OsgiBundleFactory(OsgiContainerManager osgi)
public OsgiBundleFactory(String pluginDescriptorFileName, OsgiContainerManager osgi)
protected InputStream getDescriptorInputStream(PluginArtifact pluginArtifact)
getDescriptorInputStream in class AbstractPluginFactoryprotected Predicate<Integer> isValidPluginsVersion()
isValidPluginsVersion in class AbstractPluginFactorypublic String canCreate(PluginArtifact pluginArtifact) throws PluginParseException
OsgiBundlePlugin wraps usual OSGi Bundle into Atlassian Plugin. Factory could create plugin for any bundle that is not Spring powered even for those has not atlassian-plugin.xml. Note that some parts of plugin descriptor, such as <component> or <component-import>, relies on IoC container in order to work, so without PluginContainerAccessor service exported it won't work and will throw an exception
canCreate in interface PluginFactorycanCreate in class AbstractPluginFactorypluginArtifact - The artifact to testPluginParseException - If there are exceptions parsing the plugin configurationpublic Plugin create(PluginArtifact pluginArtifact, ModuleDescriptorFactory moduleDescriptorFactory)
pluginArtifact - the plugin artifact containing the plugin.moduleDescriptorFactory - The factory for plugin modules.UnloadablePlugin if the plugin cannot be loaded.public ModuleDescriptor<?> createModule(Plugin plugin, org.dom4j.Element module, ModuleDescriptorFactory moduleDescriptorFactory)
PluginFactory
If capable, always return a ModuleDescriptor, even if it indicates a failure case. Caller is responsible for
handling exceptional ModuleDescriptor.
Implementors should use (plugin instanceof <plugin-class>) to determine their capability;
subclasses of implementors should override this if special handling is required.
plugin - that the module will be a member ofmodule - to createmoduleDescriptorFactory - basic factory, may be overriddenCopyright © 2019 Atlassian. All rights reserved.