public class

DefaultProjectWorkflowSchemeHelper

extends Object
implements ProjectWorkflowSchemeHelper
java.lang.Object
   ↳ com.atlassian.jira.workflow.DefaultProjectWorkflowSchemeHelper

Summary

Public Constructors
DefaultProjectWorkflowSchemeHelper(ProjectService projectService, WorkflowSchemeManager workflowSchemeManager, JiraAuthenticationContext authenticationContext)
Public Methods
List<Project> getProjectsForScheme(Long schemeId)
Return a list of projects that use the workflow scheme with the passed query.
List<Project> getProjectsForWorkflow(String workflowName)
Returns a list of the projects are currently using the passed workflow.
Multimap<StringProject> getProjectsForWorkflow(Set<String> workflows)
Return a map of active workflow names to the projects that use those workflows.
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.atlassian.jira.workflow.ProjectWorkflowSchemeHelper

Public Constructors

public DefaultProjectWorkflowSchemeHelper (ProjectService projectService, WorkflowSchemeManager workflowSchemeManager, JiraAuthenticationContext authenticationContext)

Public Methods

public List<Project> getProjectsForScheme (Long schemeId)

Return a list of projects that use the workflow scheme with the passed query. Only projects that the passed user can change the configurtion for will be returned.

Parameters
schemeId the scheme id query. Null can be passed to search for the magical default workflow scheme.
Returns
  • a list of projects that use the workflow. The list is sorted by project name. The list is mutable and can be changed by the caller safely.

public List<Project> getProjectsForWorkflow (String workflowName)

Returns a list of the projects are currently using the passed workflow. A workflow is only considered "active" if it is currently actually being used by a project. This means it is active if:

  1. The workflow is mapped to an issue type in the project's scheme and the project has that issue type.
  2. The workflow is a default for the project's scheme and there are some unmapped issue types.
Only projects that the passed user can change the configurtion for will be returned.

Parameters
workflowName the name of the workflow the check.
Returns
  • a list of active projects. The list is sorted by project name. The list is mutable and can be changed by the caller safely.

public Multimap<StringProject> getProjectsForWorkflow (Set<String> workflows)

Return a map of active workflow names to the projects that use those workflows. A workflow is only considered "active" if it is currently actually being used by a project. This means it is active if:

  1. The workflow is mapped to an issue type in the project's scheme and the project has that issue type.
  2. The workflow is a default for the project's scheme and there are some unmapped issue types.
Only projects that the passed user can change the configurtion for will be returned.

Parameters
workflows the workflows to query.
Returns
  • a list of active projects. The projects are sorted by name. The map is mutable and can be changed by the caller.