private Transition parseThen(IfModel ifModel) { Expression test = getLocalContext().getExpressionParser().parseExpression(ifModel.getTest(), new FluentParserContext().evaluate(RequestContext.class).expectResult(Boolean.class)); TransitionCriteria matchingCriteria = new DefaultTransitionCriteria(test); TargetStateResolver targetStateResolver = (TargetStateResolver) fromStringTo(TargetStateResolver.class) .execute(ifModel.getThen()); return getLocalContext().getFlowArtifactFactory().createTransition(targetStateResolver, matchingCriteria, null, null); }
private Transition[] parseIf(IfModel ifModel) { Transition thenTransition = parseThen(ifModel); if (StringUtils.hasText(ifModel.getElse())) { Transition elseTransition = parseElse(ifModel); return new Transition[] { thenTransition, elseTransition }; } else { return new Transition[] { thenTransition }; } }
public void testMerge() { DecisionStateModel child = new DecisionStateModel("child"); DecisionStateModel parent = new DecisionStateModel("child"); parent.setSecured(new SecuredModel("secured")); LinkedList<IfModel> ifs = new LinkedList<>(); ifs.add(new IfModel("test", "foo")); parent.setIfs(ifs); child.merge(parent); assertNotNull(child.getSecured()); assertNotNull("test", child.getIfs().get(0).getTest()); }
public void testNotMergeable() { IfModel child = new IfModel("child", "childthen"); IfModel parent = new IfModel("parent", "parentthen"); assertFalse(child.isMergeableWith(parent)); }
private Transition parseThen(IfModel ifModel) { Expression test = getLocalContext().getExpressionParser().parseExpression(ifModel.getTest(), new FluentParserContext().evaluate(RequestContext.class).expectResult(Boolean.class)); TransitionCriteria matchingCriteria = new DefaultTransitionCriteria(test); TargetStateResolver targetStateResolver = (TargetStateResolver) fromStringTo(TargetStateResolver.class) .execute(ifModel.getThen()); return getLocalContext().getFlowArtifactFactory().createTransition(targetStateResolver, matchingCriteria, null, null); }
private Transition parseElse(IfModel ifModel) { TargetStateResolver stateResolver = (TargetStateResolver) fromStringTo(TargetStateResolver.class).execute( ifModel.getElse()); return getLocalContext().getFlowArtifactFactory().createTransition(stateResolver, null, null, null); }
public void testMergeable() { IfModel child = new IfModel("child", "childthen"); assertTrue(child.isMergeableWith(child)); }
private Transition parseThen(IfModel ifModel) { Expression test = getLocalContext().getExpressionParser().parseExpression(ifModel.getTest(), new FluentParserContext().evaluate(RequestContext.class).expectResult(Boolean.class)); TransitionCriteria matchingCriteria = new DefaultTransitionCriteria(test); TargetStateResolver targetStateResolver = (TargetStateResolver) fromStringTo(TargetStateResolver.class) .execute(ifModel.getThen()); return getLocalContext().getFlowArtifactFactory().createTransition(targetStateResolver, matchingCriteria, null, null); }
private Transition[] parseIf(IfModel ifModel) { Transition thenTransition = parseThen(ifModel); if (StringUtils.hasText(ifModel.getElse())) { Transition elseTransition = parseElse(ifModel); return new Transition[] { thenTransition, elseTransition }; } else { return new Transition[] { thenTransition }; } }
public void testNotMergeableWithNull() { IfModel child = new IfModel("child", "childthen"); assertFalse(child.isMergeableWith(null)); }