public abstract class AccumulateVisitor extends Object
Modifier and Type | Class and Description |
---|---|
static class |
AccumulateVisitor.NewBinding |
Modifier and Type | Field and Description |
---|---|
protected RuleContext |
context |
protected AbstractExpressionBuilder |
expressionBuilder |
protected ModelGeneratorVisitor |
modelGeneratorVisitor |
protected PackageModel |
packageModel |
Constructor and Description |
---|
AccumulateVisitor(RuleContext context,
ModelGeneratorVisitor modelGeneratorVisitor,
PackageModel packageModel) |
Modifier and Type | Method and Description |
---|---|
protected abstract com.github.javaparser.ast.expr.MethodCallExpr |
buildBinding(String bindingName,
Collection<String> usedDeclaration,
com.github.javaparser.ast.expr.Expression expression) |
protected com.github.javaparser.ast.expr.Expression |
buildConstraintExpression(com.github.javaparser.ast.expr.Expression expr,
Collection<String> usedDeclarations) |
protected Optional<org.kie.api.runtime.rule.AccumulateFunction> |
getAccumulateFunction(org.drools.compiler.lang.descr.AccumulateDescr.AccumulateFunctionCallDescr function,
Class<?> methodCallExprType) |
protected String |
getRootNodeName(DrlxParseUtil.RemoveRootNodeResult methodCallWithoutRootNode) |
protected TypedExpression |
parseMethodCallType(RuleContext context,
String variableName,
com.github.javaparser.ast.expr.Expression methodCallWithoutRoot) |
protected abstract void |
postVisit() |
protected abstract void |
processNewBinding(Optional<AccumulateVisitor.NewBinding> optNewBinding) |
void |
visit(org.drools.compiler.lang.descr.AccumulateDescr descr,
org.drools.compiler.lang.descr.PatternDescr basePattern) |
protected Optional<AccumulateVisitor.NewBinding> |
visit(RuleContext context,
org.drools.compiler.lang.descr.AccumulateDescr.AccumulateFunctionCallDescr function,
com.github.javaparser.ast.expr.MethodCallExpr accumulateDSL,
org.drools.compiler.lang.descr.PatternDescr basePattern,
boolean inputPatternHasConstraints) |
protected void |
visitAccInlineCustomCode(RuleContext context2,
org.drools.compiler.lang.descr.AccumulateDescr descr,
com.github.javaparser.ast.expr.MethodCallExpr accumulateDSL,
org.drools.compiler.lang.descr.PatternDescr basePattern,
org.drools.compiler.lang.descr.PatternDescr inputDescr,
Set<String> externalDeclrs)
By design this legacy accumulate (with inline custome code) visitor supports only with 1-and-only binding in the accumulate code/expressions.
|
protected final RuleContext context
protected final PackageModel packageModel
protected final ModelGeneratorVisitor modelGeneratorVisitor
protected AbstractExpressionBuilder expressionBuilder
public AccumulateVisitor(RuleContext context, ModelGeneratorVisitor modelGeneratorVisitor, PackageModel packageModel)
public void visit(org.drools.compiler.lang.descr.AccumulateDescr descr, org.drools.compiler.lang.descr.PatternDescr basePattern)
protected Optional<AccumulateVisitor.NewBinding> visit(RuleContext context, org.drools.compiler.lang.descr.AccumulateDescr.AccumulateFunctionCallDescr function, com.github.javaparser.ast.expr.MethodCallExpr accumulateDSL, org.drools.compiler.lang.descr.PatternDescr basePattern, boolean inputPatternHasConstraints)
protected Optional<org.kie.api.runtime.rule.AccumulateFunction> getAccumulateFunction(org.drools.compiler.lang.descr.AccumulateDescr.AccumulateFunctionCallDescr function, Class<?> methodCallExprType)
protected String getRootNodeName(DrlxParseUtil.RemoveRootNodeResult methodCallWithoutRootNode)
protected TypedExpression parseMethodCallType(RuleContext context, String variableName, com.github.javaparser.ast.expr.Expression methodCallWithoutRoot)
protected com.github.javaparser.ast.expr.Expression buildConstraintExpression(com.github.javaparser.ast.expr.Expression expr, Collection<String> usedDeclarations)
protected void visitAccInlineCustomCode(RuleContext context2, org.drools.compiler.lang.descr.AccumulateDescr descr, com.github.javaparser.ast.expr.MethodCallExpr accumulateDSL, org.drools.compiler.lang.descr.PatternDescr basePattern, org.drools.compiler.lang.descr.PatternDescr inputDescr, Set<String> externalDeclrs)
protected abstract com.github.javaparser.ast.expr.MethodCallExpr buildBinding(String bindingName, Collection<String> usedDeclaration, com.github.javaparser.ast.expr.Expression expression)
protected abstract void processNewBinding(Optional<AccumulateVisitor.NewBinding> optNewBinding)
protected abstract void postVisit()
Copyright © 2001–2019 JBoss by Red Hat. All rights reserved.