com.atlassian.plugin.osgi.factory
Class OsgiBundleFactory

java.lang.Object
  extended by com.atlassian.plugin.osgi.factory.OsgiBundleFactory
All Implemented Interfaces:
PluginFactory

public class OsgiBundleFactory
extends Object
implements PluginFactory

Plugin deployer that deploys OSGi bundles that don't contain XML descriptor files


Constructor Summary
OsgiBundleFactory(OsgiContainerManager osgi, PluginEventManager pluginEventManager)
           
OsgiBundleFactory(String pluginDescriptorFileName, OsgiContainerManager osgi, PluginEventManager pluginEventManager)
           
 
Method Summary
 String canCreate(PluginArtifact pluginArtifact)
          Determines if this factory can handle this artifact.
 Plugin create(DeploymentUnit deploymentUnit, ModuleDescriptorFactory moduleDescriptorFactory)
          Deprecated. Since 2.2.0, use create(PluginArtifact,ModuleDescriptorFactory) instead
 Plugin create(PluginArtifact pluginArtifact, ModuleDescriptorFactory moduleDescriptorFactory)
          Deploys the plugin artifact
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OsgiBundleFactory

public OsgiBundleFactory(OsgiContainerManager osgi,
                         PluginEventManager pluginEventManager)

OsgiBundleFactory

public OsgiBundleFactory(String pluginDescriptorFileName,
                         OsgiContainerManager osgi,
                         PluginEventManager pluginEventManager)
Method Detail

canCreate

public String canCreate(PluginArtifact pluginArtifact)
                 throws PluginParseException
Description copied from interface: PluginFactory
Determines if this factory can handle this artifact.

Specified by:
canCreate in interface PluginFactory
Parameters:
pluginArtifact - The artifact to test
Returns:
The plugin key, null if it cannot load the plugin
Throws:
PluginParseException - If there are exceptions parsing the plugin configuration when the deployer should have been able to deploy the plugin

create

public Plugin create(DeploymentUnit deploymentUnit,
                     ModuleDescriptorFactory moduleDescriptorFactory)
              throws PluginParseException
Deprecated. Since 2.2.0, use create(PluginArtifact,ModuleDescriptorFactory) instead

Description copied from interface: PluginFactory
Deploys the deployment unit by instantiating the plugin and configuring it. Should only be called if the respective PluginFactory.canCreate(PluginArtifact) call returned the plugin key

Specified by:
create in interface PluginFactory
Parameters:
deploymentUnit - the unit to deploy
moduleDescriptorFactory - the factory for the module descriptors
Returns:
the plugin loaded from the deployment unit, or an UnloadablePlugin instance if loading fails.
Throws:
PluginParseException - if the plugin could not be parsed

create

public Plugin create(PluginArtifact pluginArtifact,
                     ModuleDescriptorFactory moduleDescriptorFactory)
              throws PluginParseException
Deploys the plugin artifact

Specified by:
create in interface PluginFactory
Parameters:
pluginArtifact - the plugin artifact to deploy
moduleDescriptorFactory - The factory for plugin modules
Returns:
The instantiated and populated plugin
Throws:
PluginParseException - If the descriptor cannot be parsed
Since:
2.2.0


Copyright © 2013 Atlassian. All Rights Reserved.