com.atlassian.plugin.osgi.factory
Class OsgiPlugin

java.lang.Object
  extended by com.atlassian.plugin.impl.AbstractPlugin
      extended by com.atlassian.plugin.osgi.factory.OsgiPlugin
All Implemented Interfaces:
AutowireCapablePlugin, DynamicPlugin, Plugin, Resourced, java.lang.Comparable
Direct Known Subclasses:
OsgiBundlePlugin

public class OsgiPlugin
extends AbstractPlugin
implements AutowireCapablePlugin, DynamicPlugin

Plugin that wraps an OSGi bundle that does contain a plugin descriptor.


Field Summary
 
Fields inherited from interface com.atlassian.plugin.AutowireCapablePlugin
AUTOWIRE_AUTODETECT, AUTOWIRE_BY_CONSTRUCTOR, AUTOWIRE_BY_NAME, AUTOWIRE_BY_TYPE, AUTOWIRE_NO
 
Fields inherited from interface com.atlassian.plugin.Plugin
NAME_COMPARATOR
 
Constructor Summary
OsgiPlugin(org.osgi.framework.Bundle bundle)
           
 
Method Summary
 java.lang.Object autowire(java.lang.Class clazz)
           
<T> T
autowire(java.lang.Class<T> clazz, AutowireStrategy autowireStrategy)
           
 java.lang.Object autowire(java.lang.Class clazz, int autowireStrategy)
           
<T> T
autowireGeneric(java.lang.Class<T> clazz)
           
 void close()
           
 org.osgi.framework.Bundle getBundle()
           
 java.lang.ClassLoader getClassLoader()
           
 java.net.URL getResource(java.lang.String name)
           
 java.io.InputStream getResourceAsStream(java.lang.String name)
           
 boolean isBundledPlugin()
           
 boolean isDeleteable()
           
 boolean isDynamicallyLoaded()
          This plugin is dynamically loaded, so returns true.
 boolean isEnabled()
           
 boolean isUninstallable()
           
 java.lang.Class loadClass(java.lang.String clazz, java.lang.Class callingClass)
           
 void setBundled(boolean bundled)
           
 void setDeletable(boolean deletable)
           
 void setEnabled(boolean enabled)
           
 
Methods inherited from class com.atlassian.plugin.impl.AbstractPlugin
addModuleDescriptor, compareTo, containsSystemModule, getDateLoaded, getI18nNameKey, getKey, getModuleDescriptor, getModuleDescriptors, getModuleDescriptorsByModuleClass, getName, getPluginInformation, getPluginsVersion, getResourceDescriptor, getResourceDescriptors, getResourceDescriptors, getResourceLocation, isEnabledByDefault, isSystemPlugin, setEnabledByDefault, setI18nNameKey, setKey, setName, setPluginInformation, setPluginsVersion, setResources, setSystemPlugin
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.plugin.Plugin
addModuleDescriptor, containsSystemModule, getDateLoaded, getI18nNameKey, getKey, getModuleDescriptor, getModuleDescriptors, getModuleDescriptorsByModuleClass, getName, getPluginInformation, getPluginsVersion, isEnabledByDefault, isSystemPlugin, setEnabledByDefault, setI18nNameKey, setKey, setName, setPluginInformation, setPluginsVersion, setResources, setSystemPlugin
 
Methods inherited from interface com.atlassian.plugin.Resourced
getResourceDescriptor, getResourceDescriptors, getResourceDescriptors, getResourceLocation
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Constructor Detail

OsgiPlugin

public OsgiPlugin(org.osgi.framework.Bundle bundle)
Method Detail

getBundle

public org.osgi.framework.Bundle getBundle()

loadClass

public java.lang.Class loadClass(java.lang.String clazz,
                                 java.lang.Class callingClass)
                          throws java.lang.ClassNotFoundException
Specified by:
loadClass in interface DynamicPlugin
Specified by:
loadClass in interface Plugin
Throws:
java.lang.ClassNotFoundException

isUninstallable

public boolean isUninstallable()
Specified by:
isUninstallable in interface DynamicPlugin
Specified by:
isUninstallable in interface Plugin

getResource

public java.net.URL getResource(java.lang.String name)
Specified by:
getResource in interface DynamicPlugin
Specified by:
getResource in interface Plugin

getResourceAsStream

public java.io.InputStream getResourceAsStream(java.lang.String name)
Specified by:
getResourceAsStream in interface DynamicPlugin
Specified by:
getResourceAsStream in interface Plugin

getClassLoader

public java.lang.ClassLoader getClassLoader()
Specified by:
getClassLoader in interface DynamicPlugin
Specified by:
getClassLoader in interface Plugin

isDynamicallyLoaded

public boolean isDynamicallyLoaded()
This plugin is dynamically loaded, so returns true.

Specified by:
isDynamicallyLoaded in interface DynamicPlugin
Specified by:
isDynamicallyLoaded in interface Plugin
Returns:
true

isDeleteable

public boolean isDeleteable()
Specified by:
isDeleteable in interface DynamicPlugin
Specified by:
isDeleteable in interface Plugin

setDeletable

public void setDeletable(boolean deletable)
Specified by:
setDeletable in interface DynamicPlugin

isBundledPlugin

public boolean isBundledPlugin()
Specified by:
isBundledPlugin in interface DynamicPlugin
Specified by:
isBundledPlugin in interface Plugin

setBundled

public void setBundled(boolean bundled)
Specified by:
setBundled in interface DynamicPlugin

isEnabled

public boolean isEnabled()
Specified by:
isEnabled in interface Plugin
Overrides:
isEnabled in class AbstractPlugin

setEnabled

public void setEnabled(boolean enabled)
                throws OsgiContainerException
Specified by:
setEnabled in interface Plugin
Overrides:
setEnabled in class AbstractPlugin
Throws:
OsgiContainerException

close

public void close()
           throws OsgiContainerException
Specified by:
close in interface DynamicPlugin
Specified by:
close in interface Plugin
Throws:
OsgiContainerException

autowireGeneric

public <T> T autowireGeneric(java.lang.Class<T> clazz)

autowire

public <T> T autowire(java.lang.Class<T> clazz,
                      AutowireStrategy autowireStrategy)

autowire

public java.lang.Object autowire(java.lang.Class clazz)
Specified by:
autowire in interface AutowireCapablePlugin

autowire

public java.lang.Object autowire(java.lang.Class clazz,
                                 int autowireStrategy)
Specified by:
autowire in interface AutowireCapablePlugin


Copyright © 2008 Atlassian Pty Ltd. All Rights Reserved.