protected String doExecute() throws Exception { xml = WorkflowUtil.convertDescriptorToXML(workflow.getDescriptor()); return SUCCESS; }
public Collection getOutboundTransitions() { // TODO add global actions Collection transitions = new LinkedList(step.getActions()); transitions.addAll(workflow.getDescriptor().getGlobalActions()); return transitions; }
private static StepDescriptor getInitialStepDescriptor(JiraWorkflow workflow) { List initialActions = workflow.getDescriptor().getInitialActions(); ActionDescriptor initialAction = (ActionDescriptor) initialActions.get(0); int initialStep = initialAction.getUnconditionalResult().getStep(); return workflow.getDescriptor().getStep(initialStep); }
private StepDescriptor getInitialStepDescriptor(JiraWorkflow workflow) { List initialActions = workflow.getDescriptor().getInitialActions(); ActionDescriptor initialAction = (ActionDescriptor) initialActions.get(0); int initialStep = initialAction.getUnconditionalResult().getStep(); return workflow.getDescriptor().getStep(initialStep); }
private boolean isStatusLinked(GenericValue status) { for (final Object o : workflow.getDescriptor().getSteps()) { StepDescriptor stepDescriptor = (StepDescriptor) o; if (status.getString("id").equals(stepDescriptor.getMetaAttributes().get(JiraWorkflow.STEP_STATUS_KEY))) { return true; } } return false; }
ActionDescriptor getActionDescriptor(Issue issue, int actionId) { final JiraWorkflow workflow = workflowManager.getWorkflow(issue); if (workflow == null) { return null; } final WorkflowDescriptor descriptor = workflow.getDescriptor(); if (descriptor == null) { return null; } return descriptor.getAction(actionId); }
private boolean findMoreStatuses() { boolean changed = false; while (!changed && hasMoreWorkflows()) { final JiraWorkflow workflow = workflowManager.getWorkflow(pendingWorkflowNames.removeFirst()); @SuppressWarnings ("unchecked") final List<StepDescriptor> steps = workflow.getDescriptor().getSteps(); for (StepDescriptor step : steps) { final String linkedStatusId = (String)step.getMetaAttributes().get("jira.status.id"); changed |= seenStatusIds.add(linkedStatusId); } } return changed; }
public String getStepId(long actionDescriptorId, String workflowName) { int actionDescId = new Long(actionDescriptorId).intValue(); String stepId = null; JiraWorkflow workflow = getWorkflow(workflowName); ActionDescriptor actionDescriptor = workflow.getDescriptor().getAction(actionDescId); if (actionDescriptor != null) { Collection<StepDescriptor> stepsForTransition = workflow.getStepsForTransition(actionDescriptor); for (final StepDescriptor stepDescriptor : stepsForTransition) { stepId = String.valueOf(stepDescriptor.getId()); break; } } return stepId; }
public StepDescriptor getDestinationStepDescriptor() { int targetStepId = resultDescriptor.getStep(); return getWorkflow().getDescriptor().getStep(targetStepId); }
@Override public ActionDescriptor get() { return workflowManager.getWorkflow(getIssue()).getDescriptor().getAction(actionId); } });
public ActionDescriptor getActionDescriptor(WorkflowTransitionKey workflowTransitionKey) { String workflowName = workflowTransitionKey.getWorkflowName(); String actionDescriptorId = workflowTransitionKey.getActionDescriptorId(); JiraWorkflow workflow = workflowManager.getWorkflow(workflowName); return workflow.getDescriptor().getAction(Integer.parseInt(actionDescriptorId)); }
public StepDescriptor getStepDescriptor(ConditionalResultDescriptor conditionalResultDescriptor) { final int targetStepId = conditionalResultDescriptor.getStep(); return getWorkflow().getDescriptor().getStep(targetStepId); }
@Override public CacheObject<String> load(@Nonnull final String parentWorkflowName) { //if a draft workflow is not in the cache, try to get it from the DB. final JiraWorkflow draftWorkflow = delegate.getDraftWorkflow(parentWorkflowName); if (draftWorkflow == null) { // Lets cache the fact that there is no Draft return CacheObject.NULL(); } else { //lets lazy load the cache with the draft Workflow. return CacheObject.wrap(convertDescriptorToXML(draftWorkflow.getDescriptor())); } } }
public ActionDescriptor getActionDescriptor(WorkflowProgressAware workflowProgressAware) throws Exception { JiraWorkflow workflow = getWorkflow(workflowProgressAware.getIssue().getGenericValue()); return workflow.getDescriptor().getAction(workflowProgressAware.getAction()); }
/** * Form submit button's i18n'ed name. Usually 'Create', but possibly overridden in workflow. */ public String getSubmitButtonName() { JiraWorkflow workflow; try { workflow = ComponentAccessor.getWorkflowManager().getWorkflow(getPid(), getIssuetype()); return super.getWorkflowTransitionDisplayName(workflow.getDescriptor().getInitialAction(1)); } catch (WorkflowException e) { log.error(e, e); return "Create"; } }
/** * Returns <meta> attributes of the initial "create issue" workflow action. */ private Map getWorkflowMetaAttributes() throws WorkflowException { JiraWorkflow workflow = ComponentAccessor.getWorkflowManager().getWorkflow(getPid(), getIssuetype()); return workflow.getDescriptor().getInitialAction(1).getMetaAttributes(); }
public List getTransitionSteps() { List transitions = getWorkflow().getDescriptor().getSteps(); if(getTransition().getUnconditionalResult().getStep() == JiraWorkflow.ACTION_ORIGIN_STEP_ID) { StepDescriptor dummyStep = new DescriptorFactory().createStepDescriptor(); dummyStep.setId(JiraWorkflow.ACTION_ORIGIN_STEP_ID); dummyStep.setName(getText("admin.workflowtransitions.same.destination.step")); transitions.add(dummyStep); } return transitions; }
private WorkflowBean jiraWorkflowToWorkflowBean(JiraWorkflow jiraWorkflow) { String name = jiraWorkflow.getName(); String description = jiraWorkflow.getDescription(); int steps = jiraWorkflow.getDescriptor().getSteps().size(); boolean isDefault = jiraWorkflow.isDefault(); String updateDate = jiraWorkflow.getUpdatedDate() != null ? dateTimeFormatter.forLoggedInUser().format(jiraWorkflow.getUpdatedDate()) : null; ApplicationUser updateAuthor = jiraWorkflow.getUpdateAuthor(); String updateAuthorName = userManager.isUserExisting(updateAuthor)?updateAuthor.getDisplayName():null; return new WorkflowBean(name, description, updateDate, updateAuthorName, steps, isDefault); } }
@RequiresXsrfCheck protected String doExecute() throws Exception { StepDescriptor stepDescriptor = getWorkflow().getDescriptor().getStep(step.getId()); stepDescriptor.setName(getStepName()); //For a draft workflow, you can only changed the linked status for new steps. if (!isOldStepOnDraft(step)) { stepDescriptor.getMetaAttributes().put(JiraWorkflow.STEP_STATUS_KEY, getStepStatus()); } workflowService.updateWorkflow(getJiraServiceContext(), getWorkflow()); return getRedirect(getCancelUrl()); }
public Status getDestinationStatus(final WorkflowTransitionKey workflowTransitionKey) { final ActionDescriptor actionDescriptor = getBulkWorkflowTransitionOperation().getActionDescriptor(workflowTransitionKey); final JiraWorkflow workflow = workflowManager.getWorkflow(workflowTransitionKey.getWorkflowName()); final int newStepId = actionDescriptor.getUnconditionalResult().getStep(); if (newStepId == JiraWorkflow.ACTION_ORIGIN_STEP_ID) { return getOriginStatus(workflowTransitionKey); } else { final StepDescriptor step = workflow.getDescriptor().getStep(newStepId); return workflow.getLinkedStatus(step); } }