How do I get dependent workflows from a FieldScreen via the API?

Paul Tiseo
Contributor
June 1, 2018

I have multiple field screens obtained via fieldScreenManager.getFieldScreens(). I can get dependent FieldScreenSchemes via a FieldScreenSchemeManager's getFieldScreenSchemes(fieldScreen) method. Similarly, how do I find dependent workflows?

1 answer

1 accepted

0 votes
Answer accepted
Paul Tiseo
Contributor
June 8, 2018

Answering my own question: the ViewFieldScreen class will get dependent FieldScreenSchemes or Workflows given a FieldScreen. Also, there's a handy isDeletable function that asserts if it has no dependencies.

You can instatiate it via:

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.fields.screen.FieldScreenFactory
import com.atlassian.jira.issue.fields.screen.FieldScreenManager
import com.atlassian.jira.issue.fields.screen.FieldScreenSchemeManager
import com.atlassian.jira.web.action.admin.issuefields.screens.ViewFieldScreens
import com.atlassian.jira.workflow.WorkflowManager

FieldScreenManager fieldScreenManager = ComponentAccessor.getFieldScreenManager()
FieldScreenFactory fieldScreenFactory = ComponentAccessor.getComponent(FieldScreenFactory.class)
FieldScreenSchemeManager fieldScreenSchemeManager = ComponentAccessor.getComponent(FieldScreenSchemeManager.class)
WorkflowManager workflowManager = ComponentAccessor.getWorkflowManager()
ViewFieldScreens viewFieldScreens = new ViewFieldScreens(fieldScreenManager, fieldScreenFactory, fieldScreenSchemeManager, workflowManager)

Suggest an answer

Log in or Sign up to answer