com.atlassian.plugin.osgi.external
Class SingleModuleDescriptorFactory<T extends ModuleDescriptor>

java.lang.Object
  extended by com.atlassian.plugin.osgi.external.SingleModuleDescriptorFactory<T>
All Implemented Interfaces:
ModuleDescriptorFactory, ListableModuleDescriptorFactory

public class SingleModuleDescriptorFactory<T extends ModuleDescriptor>
extends java.lang.Object
implements ListableModuleDescriptorFactory

A single module descriptor factory for plugins to use when they want to expose just one plugin. Uses HostContainer to optionally provide autowiring for new descriptor instances.

Since:
2.1

Constructor Summary
SingleModuleDescriptorFactory(HostContainer hostContainer, java.lang.String type, java.lang.Class<T> moduleDescriptorClass)
          Constructs an instance using a specific host container
 
Method Summary
 HostContainer getHostContainer()
           
 ModuleDescriptor getModuleDescriptor(java.lang.String type)
           
 java.lang.Class<? extends ModuleDescriptor> getModuleDescriptorClass(java.lang.String type)
           
 java.util.Set<java.lang.Class<? extends ModuleDescriptor>> getModuleDescriptorClasses()
           
 java.lang.Iterable<java.lang.String> getModuleDescriptorKeys()
           
 boolean hasModuleDescriptor(java.lang.String type)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SingleModuleDescriptorFactory

public SingleModuleDescriptorFactory(HostContainer hostContainer,
                                     java.lang.String type,
                                     java.lang.Class<T> moduleDescriptorClass)
Constructs an instance using a specific host container

Parameters:
hostContainer - The host container to use to create descriptor instances
type - The type of module
moduleDescriptorClass - The descriptor class
Since:
2.2.0
Method Detail

getModuleDescriptor

public ModuleDescriptor getModuleDescriptor(java.lang.String type)
                                     throws PluginParseException,
                                            java.lang.IllegalAccessException,
                                            java.lang.InstantiationException,
                                            java.lang.ClassNotFoundException
Specified by:
getModuleDescriptor in interface ModuleDescriptorFactory
Throws:
PluginParseException
java.lang.IllegalAccessException
java.lang.InstantiationException
java.lang.ClassNotFoundException

hasModuleDescriptor

public boolean hasModuleDescriptor(java.lang.String type)
Specified by:
hasModuleDescriptor in interface ModuleDescriptorFactory

getModuleDescriptorClass

public java.lang.Class<? extends ModuleDescriptor> getModuleDescriptorClass(java.lang.String type)
Specified by:
getModuleDescriptorClass in interface ModuleDescriptorFactory

getModuleDescriptorKeys

public java.lang.Iterable<java.lang.String> getModuleDescriptorKeys()
Specified by:
getModuleDescriptorKeys in interface ListableModuleDescriptorFactory
Returns:
the list of descriptor keys this module factory knows about.
Since:
3.0.0

getModuleDescriptorClasses

public java.util.Set<java.lang.Class<? extends ModuleDescriptor>> getModuleDescriptorClasses()
Specified by:
getModuleDescriptorClasses in interface ListableModuleDescriptorFactory

getHostContainer

public HostContainer getHostContainer()


Copyright © 2013 Atlassian. All Rights Reserved.