public interface

ProjectWorkflowSchemeHelper

com.atlassian.jira.workflow.ProjectWorkflowSchemeHelper
Known Indirect Subclasses

Class Overview

Provides the ability to deromilize the workflow -> workflowscheme ->project relationship in a number of different ways. This is really an internal helper class for Project Configuration.

Summary

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.

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.