com.atlassian.plugin.web.descriptors
Class AbstractWebFragmentModuleDescriptor<T>

java.lang.Object
  extended by com.atlassian.plugin.descriptors.AbstractModuleDescriptor<T>
      extended by com.atlassian.plugin.web.descriptors.AbstractWebFragmentModuleDescriptor<T>
All Implemented Interfaces:
ModuleDescriptor<T>, Resourced, StateAware, WebFragmentModuleDescriptor<T>, WeightedDescriptor
Direct Known Subclasses:
DefaultWebItemModuleDescriptor, DefaultWebSectionModuleDescriptor

public abstract class AbstractWebFragmentModuleDescriptor<T>
extends AbstractModuleDescriptor<T>
implements StateAware, WebFragmentModuleDescriptor<T>

An abstract convenience class for web fragment descriptors.


Field Summary
protected  Condition condition
           
protected  ContextProvider contextProvider
           
protected  org.dom4j.Element element
           
protected  DefaultWebLabel label
           
protected  WebParam params
           
protected  DefaultWebLabel tooltip
           
protected  WebInterfaceManager webInterfaceManager
           
protected  int weight
           
 
Fields inherited from class com.atlassian.plugin.descriptors.AbstractModuleDescriptor
plugin, resources, singleton
 
Fields inherited from interface com.atlassian.plugin.web.descriptors.WebFragmentModuleDescriptor
COMPOSITE_TYPE_AND, COMPOSITE_TYPE_OR
 
Constructor Summary
  AbstractWebFragmentModuleDescriptor()
           
protected AbstractWebFragmentModuleDescriptor(WebInterfaceManager webInterfaceManager)
           
 
Method Summary
 void disabled()
          Disables the module descriptor.
 void enabled()
          Enables the descriptor by loading the module class.
 Condition getCondition()
           
 ContextProvider getContextProvider()
           
 WebLabel getTooltip()
           
 WebLabel getWebLabel()
           
 WebParam getWebParams()
           
 int getWeight()
           
 void init(Plugin plugin, org.dom4j.Element element)
          Initialise a module given it's parent plugin and the XML element representing the module.
protected  Condition makeCondition(org.dom4j.Element element)
           
protected  Condition makeConditions(org.dom4j.Element element, int type)
          Create a condition for when this web fragment should be displayed
protected  Condition makeConditions(java.util.List elements, int type)
           
protected  ContextProvider makeContextProvider(org.dom4j.Element element)
           
 void setWebInterfaceManager(WebInterfaceManager webInterfaceManager)
           
 
Methods inherited from class com.atlassian.plugin.descriptors.AbstractModuleDescriptor
assertModuleClassImplements, destroy, getCompleteKey, getDescription, getDescriptionKey, getI18nNameKey, getKey, getMinJavaVersion, getModule, getModuleClass, getName, getParams, getPlugin, getPluginKey, getResourceDescriptor, getResourceDescriptors, getResourceDescriptors, getResourceLocation, isEnabledByDefault, isSingleton, isSingletonByDefault, isSystemModule, loadClass, loadClass, provideValidationRules, satisfiesMinJavaVersion, setPlugin, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.atlassian.plugin.ModuleDescriptor
destroy, getCompleteKey, getDescription, getDescriptionKey, getI18nNameKey, getKey, getMinJavaVersion, getModule, getModuleClass, getName, getParams, getPlugin, getPluginKey, isEnabledByDefault, isSystemModule, satisfiesMinJavaVersion
 
Methods inherited from interface com.atlassian.plugin.Resourced
getResourceDescriptor, getResourceDescriptors, getResourceDescriptors, getResourceLocation
 

Field Detail

webInterfaceManager

protected WebInterfaceManager webInterfaceManager

element

protected org.dom4j.Element element

weight

protected int weight

condition

protected Condition condition

contextProvider

protected ContextProvider contextProvider

label

protected DefaultWebLabel label

tooltip

protected DefaultWebLabel tooltip

params

protected WebParam params
Constructor Detail

AbstractWebFragmentModuleDescriptor

protected AbstractWebFragmentModuleDescriptor(WebInterfaceManager webInterfaceManager)

AbstractWebFragmentModuleDescriptor

public AbstractWebFragmentModuleDescriptor()
Method Detail

init

public void init(Plugin plugin,
                 org.dom4j.Element element)
          throws PluginParseException
Description copied from interface: ModuleDescriptor
Initialise a module given it's parent plugin and the XML element representing the module.

Since atlassian-plugins v2.2, you can no longer load classes from the plugin in this method, because the OSGi bundle that they will live in is not built yet. Load classes in the AbstractModuleDescriptor.enabled() method instead.

Specified by:
init in interface ModuleDescriptor<T>
Overrides:
init in class AbstractModuleDescriptor<T>
Parameters:
plugin - The plugin that the module belongs to.
element - XML element representing the module.
Throws:
PluginParseException - Can be thrown if an error occurs while parsing the XML element.

makeConditions

protected Condition makeConditions(org.dom4j.Element element,
                                   int type)
                            throws PluginParseException
Create a condition for when this web fragment should be displayed

Parameters:
element - Element of web-section or web-item
type - logical operator type getCompositeType(java.lang.String)
Throws:
PluginParseException

makeConditions

protected Condition makeConditions(java.util.List elements,
                                   int type)
                            throws PluginParseException
Throws:
PluginParseException

makeCondition

protected Condition makeCondition(org.dom4j.Element element)
                           throws PluginParseException
Throws:
PluginParseException

makeContextProvider

protected ContextProvider makeContextProvider(org.dom4j.Element element)
                                       throws PluginParseException
Throws:
PluginParseException

enabled

public void enabled()
Description copied from class: AbstractModuleDescriptor
Enables the descriptor by loading the module class. Classes overriding this method MUST call super.enabled() before their own enabling code.

Specified by:
enabled in interface StateAware
Overrides:
enabled in class AbstractModuleDescriptor<T>

disabled

public void disabled()
Description copied from class: AbstractModuleDescriptor
Disables the module descriptor. Classes overriding this method MUST call super.disabled() after their own disabling code.

Specified by:
disabled in interface StateAware
Overrides:
disabled in class AbstractModuleDescriptor<T>

getWeight

public int getWeight()
Specified by:
getWeight in interface WebFragmentModuleDescriptor<T>
Specified by:
getWeight in interface WeightedDescriptor

getWebLabel

public WebLabel getWebLabel()
Specified by:
getWebLabel in interface WebFragmentModuleDescriptor<T>

getTooltip

public WebLabel getTooltip()
Specified by:
getTooltip in interface WebFragmentModuleDescriptor<T>

setWebInterfaceManager

public void setWebInterfaceManager(WebInterfaceManager webInterfaceManager)

getCondition

public Condition getCondition()
Specified by:
getCondition in interface WebFragmentModuleDescriptor<T>

getContextProvider

public ContextProvider getContextProvider()
Specified by:
getContextProvider in interface WebFragmentModuleDescriptor<T>

getWebParams

public WebParam getWebParams()
Specified by:
getWebParams in interface WebFragmentModuleDescriptor<T>


Copyright © 2009 Atlassian Pty Ltd. All Rights Reserved.