com.atlassian.jira.plugin.workflow
Class AbstractWorkflowPluginFactory

java.lang.Object
  extended by com.atlassian.jira.plugin.workflow.AbstractWorkflowPluginFactory
All Implemented Interfaces:
WorkflowPluginFactory
Direct Known Subclasses:
AbstractWorkflowPermissionPluginFactory, ReferenceWorkflowModuleFactory, UpdateIssueFieldFunctionPluginFactory, WorkflowChangeHistoryFunctionPluginFactory, WorkflowFireIssueEventFunctionPluginFactory, WorkflowIsUserInGroupCFConditionFactoryImpl, WorkflowIsUserInGroupConditionFactoryImpl, WorkflowIsUserInProjectRoleConditionFactoryImpl, WorkflowNoInputPluginFactory, WorkflowSubTaskBlockingConditionFactoryImpl, WorkflowUberFunctionPluginFactory

public abstract class AbstractWorkflowPluginFactory
extends Object
implements WorkflowPluginFactory

A base WorkflowPluginFactory class that most concrete implementations should extend. A WorkflowPluginFactory mainly exists to provide velocity parameters to the templates. WorkflowPluginFactory implements methods used to configure a workflow plugin. Generally there will be a WorkflowPluginFactory implementation for each workflow plugin type.


Constructor Summary
AbstractWorkflowPluginFactory()
           
 
Method Summary
protected  Map<String,String> createMap(Map<String,String> extractedParams)
           
protected  Map<String,?> extractMultipleParams(Map<String,Object> params, Collection<String> paramNames)
           
protected  String extractSingleParam(Map<String,Object> conditionParams, String paramName)
           
 Map<String,Object> getVelocityParams(String resourceName, com.opensymphony.workflow.loader.AbstractDescriptor descriptor)
          Creates a Map of parameters for a view-specific velocity context given the name of the resource (i.e.
protected abstract  void getVelocityParamsForEdit(Map<String,Object> velocityParams, com.opensymphony.workflow.loader.AbstractDescriptor descriptor)
          Populates the given map with velocity parameters for 'edit-parameters' velocity template.
protected abstract  void getVelocityParamsForInput(Map<String,Object> velocityParams)
          Get velocity parameters for 'input-parameters' velocity template.
protected abstract  void getVelocityParamsForView(Map<String,Object> velocityParams, com.opensymphony.workflow.loader.AbstractDescriptor descriptor)
          Populates the given map with velocity parameters for 'view' velocity template.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.plugin.workflow.WorkflowPluginFactory
getDescriptorParams
 

Constructor Detail

AbstractWorkflowPluginFactory

public AbstractWorkflowPluginFactory()
Method Detail

getVelocityParams

public Map<String,Object> getVelocityParams(String resourceName,
                                            com.opensymphony.workflow.loader.AbstractDescriptor descriptor)
Creates a Map of parameters for a view-specific velocity context given the name of the resource (i.e. configured velocity template name: one of view, input-parameters or edit-parameters) and delegates the parameter adding to the appropriate abstract method for that view.

Specified by:
getVelocityParams in interface WorkflowPluginFactory
Parameters:
resourceName - the name of the velocity
descriptor -
Returns:
the populated velocity params.

getVelocityParamsForInput

protected abstract void getVelocityParamsForInput(Map<String,Object> velocityParams)
Get velocity parameters for 'input-parameters' velocity template.

Parameters:
velocityParams - Map to populate.
See Also:
getVelocityParams(String, com.opensymphony.workflow.loader.AbstractDescriptor)

getVelocityParamsForEdit

protected abstract void getVelocityParamsForEdit(Map<String,Object> velocityParams,
                                                 com.opensymphony.workflow.loader.AbstractDescriptor descriptor)
Populates the given map with velocity parameters for 'edit-parameters' velocity template. Typically an implementation would call descriptor.getArgs() to retrieve the current configuration, and populate velocityParams from that.

Parameters:
velocityParams - Map to populate.
descriptor - Eg. FunctionDescriptor or ConditionDescriptor describing the function/condition and its current configuration.
See Also:
getVelocityParams(String, com.opensymphony.workflow.loader.AbstractDescriptor)

getVelocityParamsForView

protected abstract void getVelocityParamsForView(Map<String,Object> velocityParams,
                                                 com.opensymphony.workflow.loader.AbstractDescriptor descriptor)
Populates the given map with velocity parameters for 'view' velocity template. Eg. call descriptor.getArgs() to retrieve the current configuration, look up a displayable string for the value and and populate velocityParams with that.

Parameters:
velocityParams - Map to populate.
descriptor - Eg. a FunctionDescriptor or ConditionDescriptor describing the function/condition and its current configuration.
See Also:
getVelocityParams(String, com.opensymphony.workflow.loader.AbstractDescriptor)

extractMultipleParams

protected Map<String,?> extractMultipleParams(Map<String,Object> params,
                                              Collection<String> paramNames)

extractSingleParam

protected String extractSingleParam(Map<String,Object> conditionParams,
                                    String paramName)

createMap

protected Map<String,String> createMap(Map<String,String> extractedParams)


Copyright © 2002-2014 Atlassian. All Rights Reserved.