DraftWorkflowSchemeBuilder(AssignableWorkflowScheme parent) { super(null, parent.getMappings()); this.lastModifiedUser = null; this.lastModifiedTime = null; this.parent = parent; }
MockAssignableWorkflowSchemeState(AssignableWorkflowScheme scheme) { this.id = scheme.getId(); this.mappings = Maps.newHashMap(scheme.getMappings()); this.name = scheme.getName(); this.description = scheme.getDescription(); }
private void createSchemeEntities(AssignableWorkflowScheme workflowScheme) { // Create all new entities for (Map.Entry<String, String> mappingEntry : workflowScheme.getMappings().entrySet()) { String issueTypeId = mappingEntry.getKey(); if (issueTypeId == null) { issueTypeId = ALL_ISSUE_TYPES; } String workflowName = mappingEntry.getValue(); SchemeEntity schemeEntity = new SchemeEntity(workflowName, issueTypeId); try { createSchemeEntity(workflowScheme.getId(), schemeEntity); } catch (GenericEntityException e) { throw new DataAccessException(e); } } }
@Override public ServiceOutcome<Void> validateUpdateWorkflowScheme(ApplicationUser user, @Nonnull AssignableWorkflowScheme scheme) { ServiceOutcome<AssignableWorkflowScheme> outcome = checkEditPermission(user); if (!outcome.isValid()) { return error(outcome); } outcome = getWorkflowSchemeNoPermissionCheck(user, scheme.getId()); if (!outcome.isValid()) { return error(outcome); } AssignableWorkflowScheme currentScheme = outcome.getReturnedValue(); outcome = validateAssignable(user, scheme, false); if (!outcome.isValid()) { return error(outcome); } if (isActive(currentScheme) && !Objects.equal(scheme.getMappings(), currentScheme.getMappings())) { return getError(user, Reason.VALIDATION_FAILED, "admin.workflowschemes.service.error.change.active"); } return error(outcome); }
if (scheme.getMappings().equals(newScheme.getMappings()))
@Nonnull @Override public AssignableWorkflowScheme createScheme(@Nonnull AssignableWorkflowScheme workflowScheme) { notNull("wokflowScheme", workflowScheme); AssignableWorkflowSchemeStore.AssignableState.Builder builder = assignableWorkflowSchemeStore.builder(); builder.setName(workflowScheme.getName()) .setDescription(workflowScheme.getDescription()) .setMappings(workflowScheme.getMappings()); AssignableWorkflowSchemeStore.AssignableState savedState = assignableWorkflowSchemeStore.create(builder.build()); eventPublisher.publish(createSchemeCreatedEvent(getSchemeObject(savedState.getId()))); return toWorkflowScheme(savedState); }
@Override @Nonnull public DraftWorkflowScheme createDraftOf(ApplicationUser creator, @Nonnull AssignableWorkflowScheme workflowScheme) { notNull("workflowScheme", workflowScheme); Assertions.not("workflowScheme.default", workflowScheme.isDefault()); notNull("workflowScheme.id", workflowScheme.getId()); Assertions.not("scheme already has draft.", hasDraft(workflowScheme)); final DraftWorkflowSchemeStore.DraftState.Builder builder = draftWorkflowSchemeStore.builder(workflowScheme.getId()); builder.setMappings(workflowScheme.getMappings()); builder.setLastModifiedUser(creator != null ? creator.getKey() : null); final DraftWorkflowSchemeStore.DraftState state = draftWorkflowSchemeStore.create(builder.build()); return toWorkflowScheme(state); }
public AssignableState addStateForScheme(AssignableWorkflowScheme scheme) { return addState(new MockAssignableWorkflowSchemeState.Builder() .setId(scheme.getId()) .setName(scheme.getName()) .setDescription(scheme.getDescription()) .setMappings(scheme.getMappings()) .build()); }
DraftWorkflowScheme child = magicDraft ? getDraft() : null; Map<String, String> map = getWorkflowMap(scheme, bean); if (child == null && (!workflowSchemeService.isActive(scheme) || Objects.equal(map, scheme.getMappings()) || !magicDraft))