/** * Create an instance of {@link ApprovalStageDefinitionType } * */ public ApprovalStageDefinitionType createApprovalStageDefinitionType() { return new ApprovalStageDefinitionType(); }
/** * Create an instance of {@link ApprovalStageDefinitionType } * */ public ApprovalStageDefinitionType createApprovalStageDefinitionType() { return new ApprovalStageDefinitionType(); }
/** * Create an instance of {@link ApprovalStageDefinitionType } * */ public ApprovalStageDefinitionType createApprovalStageDefinitionType() { return new ApprovalStageDefinitionType(); }
public ApprovalStageDefinitionType beginStage() { ApprovalStageDefinitionType value = new ApprovalStageDefinitionType(); stage(value); return value; }
@Override protected ApprovalStageDefinitionType createItem(PrismContainerValue value) { ApprovalStageDefinitionType level = new ApprovalStageDefinitionType(); level.setupContainerValue(value); return level; }
public ApprovalStageDefinitionType beginDefinition() { ApprovalStageDefinitionType value = new ApprovalStageDefinitionType(); definition(value); return value; }
public ApprovalStageDefinitionType beginLevel() { ApprovalStageDefinitionType value = new ApprovalStageDefinitionType(); level(value); return value; }
@Override protected ApprovalStageDefinitionType createItem(PrismContainerValue value) { ApprovalStageDefinitionType stage = new ApprovalStageDefinitionType(); stage.setupContainerValue(value); return stage; }
public ApprovalStageDefinitionType clone() { ApprovalStageDefinitionType object = new ApprovalStageDefinitionType(); PrismContainerValue value = asPrismContainerValue().clone(); object.setupContainerValue(value); return object; }
private List<ApprovalStageDefinitionType> cloneAndMergeStages(List<Fragment> fragments) throws SchemaException { if (fragments.size() == 1) { return CloneUtil.cloneCollectionMembers(getStages(fragments.get(0).schema)); } PrismContext prismContext = primaryChangeAspect.getChangeProcessor().getPrismContext(); ApprovalStageDefinitionType resultingStageDef = new ApprovalStageDefinitionType(prismContext); fragments.sort((f1, f2) -> Comparator.nullsLast(Comparator.<Integer>naturalOrder()) .compare(f1.compositionStrategy.getMergePriority(), f2.compositionStrategy.getMergePriority())); for (Fragment fragment : fragments) { mergeStageDefFromFragment(resultingStageDef, fragment); } return Collections.singletonList(resultingStageDef); }
private ApprovalSchemaType getSchema(ApprovalSchemaType schema, List<ObjectReferenceType> approverRef, List<ExpressionType> approverExpression, ExpressionType automaticallyApproved, @NotNull PrismContext prismContext) { if (schema != null) { return schema; } else { schema = new ApprovalSchemaType(prismContext); ApprovalStageDefinitionType stageDef = new ApprovalStageDefinitionType(prismContext); stageDef.getApproverRef().addAll(CloneUtil.cloneCollectionMembers(approverRef)); stageDef.getApproverExpression().addAll(approverExpression); stageDef.setAutomaticallyApproved(automaticallyApproved); schema.getStage().add(stageDef); return schema; } }
boolean addPredefined(PrismObject<?> targetObject, RelationKindType relationKind, OperationResult result) { RelationResolver resolver = primaryChangeAspect.createRelationResolver(targetObject, result); List<ObjectReferenceType> approvers = resolver.getApprovers(getRelationRegistry().getAllRelationsFor(relationKind)); if (!approvers.isEmpty()) { ApprovalStageDefinitionType stageDef = new ApprovalStageDefinitionType(); stageDef.getApproverRef().addAll(approvers); addPredefined(targetObject, stageDef); return true; } else { return false; } }
ApprovalSchemaType getSchemaFromAction(@NotNull ApprovalPolicyActionType approvalAction) { // TODO approval process if (approvalAction.getApprovalSchema() != null) { return approvalAction.getApprovalSchema().clone(); } else { ApprovalSchemaType rv = new ApprovalSchemaType(prismContext); ApprovalStageDefinitionType stageDef = new ApprovalStageDefinitionType(prismContext); stageDef.getApproverRef().addAll(CloneUtil.cloneCollectionMembers(approvalAction.getApproverRef())); stageDef.getApproverRelation().addAll(approvalAction.getApproverRelation()); stageDef.getApproverExpression().addAll(approvalAction.getApproverExpression()); stageDef.setAutomaticallyApproved(approvalAction.getAutomaticallyApproved()); // TODO maybe use name + description as well rv.getStage().add(stageDef); return rv; } }
LOGGER.trace("Added legacy approval schema for {}", evaluatedAssignment); } else if (!abstractRole.getApproverRef().isEmpty() || !abstractRole.getApproverExpression().isEmpty()) { ApprovalStageDefinitionType level = new ApprovalStageDefinitionType(prismContext); level.getApproverRef().addAll(CloneUtil.cloneCollectionMembers(abstractRole.getApproverRef())); level.getApproverExpression().addAll(CloneUtil.cloneCollectionMembers(abstractRole.getApproverExpression()));