public CompoundRule addRules(org.dmg.pmml.rule_set.Rule... rules) { getRules().addAll(Arrays.asList(rules)); return this; }
public CompoundRule addRules(org.dmg.pmml.rule_set.Rule... rules) { getRules().addAll(Arrays.asList(rules)); return this; }
private ImmutableBiMap.Builder<String, SimpleRule> collectRule(Rule rule, AtomicInteger index, ImmutableBiMap.Builder<String, SimpleRule> builder){ if(rule instanceof SimpleRule){ SimpleRule simpleRule = (SimpleRule)rule; builder = EntityUtil.put(simpleRule, index, builder); } else if(rule instanceof CompoundRule){ CompoundRule compoundRule = (CompoundRule)rule; builder = collectRules(compoundRule.getRules(), index, builder); } else { throw new UnsupportedElementException(rule); } return builder; }
static private void evaluateRule(Rule rule, ListMultimap<String, SimpleRule> firedRules, EvaluationContext context){ Boolean status = PredicateUtil.evaluatePredicateContainer(rule, context); if(status == null || !status.booleanValue()){ return; } // End if if(rule instanceof SimpleRule){ SimpleRule simpleRule = (SimpleRule)rule; firedRules.put(simpleRule.getScore(), simpleRule); } else if(rule instanceof CompoundRule){ CompoundRule compoundRule = (CompoundRule)rule; evaluateRules(compoundRule.getRules(), firedRules, context); } else { throw new UnsupportedElementException(rule); } }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = PMMLObject.traverse(visitor, getExtensions()); } if (status == VisitorAction.CONTINUE) { status = PMMLObject.traverse(visitor, getPredicate()); } if ((status == VisitorAction.CONTINUE)&&hasRules()) { status = PMMLObject.traverse(visitor, getRules()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = PMMLObject.traverse(visitor, getExtensions()); } if (status == VisitorAction.CONTINUE) { status = PMMLObject.traverse(visitor, getPredicate()); } if ((status == VisitorAction.CONTINUE)&&hasRules()) { status = PMMLObject.traverse(visitor, getRules()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }