Class DecisionTableEvaluationHandler
- java.lang.Object
-
- org.camunda.bpm.dmn.engine.impl.evaluation.DecisionTableEvaluationHandler
-
- All Implemented Interfaces:
DmnDecisionLogicEvaluationHandler
public class DecisionTableEvaluationHandler extends Object implements DmnDecisionLogicEvaluationHandler
-
-
Field Summary
Fields Modifier and Type Field Description protected List<DmnDecisionTableEvaluationListener>
evaluationListeners
protected ExpressionEvaluationHandler
expressionEvaluationHandler
protected FeelEngine
feelEngine
protected String
inputEntryExpressionLanguage
protected String
inputExpressionExpressionLanguage
protected String
outputEntryExpressionLanguage
-
Constructor Summary
Constructors Constructor Description DecisionTableEvaluationHandler(DefaultDmnEngineConfiguration configuration)
-
Method Summary
-
-
-
Field Detail
-
expressionEvaluationHandler
protected final ExpressionEvaluationHandler expressionEvaluationHandler
-
feelEngine
protected final FeelEngine feelEngine
-
evaluationListeners
protected final List<DmnDecisionTableEvaluationListener> evaluationListeners
-
inputExpressionExpressionLanguage
protected final String inputExpressionExpressionLanguage
-
inputEntryExpressionLanguage
protected final String inputEntryExpressionLanguage
-
outputEntryExpressionLanguage
protected final String outputEntryExpressionLanguage
-
-
Constructor Detail
-
DecisionTableEvaluationHandler
public DecisionTableEvaluationHandler(DefaultDmnEngineConfiguration configuration)
-
-
Method Detail
-
evaluate
public DmnDecisionLogicEvaluationEvent evaluate(DmnDecision decision, VariableContext variableContext)
Description copied from interface:DmnDecisionLogicEvaluationHandler
Evaluate a decision with the givenVariableContext
.- Specified by:
evaluate
in interfaceDmnDecisionLogicEvaluationHandler
- Parameters:
decision
- the decision to evaluatevariableContext
- the available variable context- Returns:
- the event which represents the evaluation
-
calculateExecutedDecisionElements
protected long calculateExecutedDecisionElements(DmnDecisionTableImpl decisionTable)
-
evaluateDecisionTable
protected void evaluateDecisionTable(DmnDecisionTableImpl decisionTable, VariableContext variableContext, DmnDecisionTableEvaluationEventImpl evaluationResult)
-
evaluateInput
protected DmnEvaluatedInput evaluateInput(DmnDecisionTableInputImpl input, VariableContext variableContext)
-
evaluateInputForAvailableRules
protected List<DmnDecisionTableRuleImpl> evaluateInputForAvailableRules(int conditionIdx, DmnDecisionTableInputImpl input, List<DmnDecisionTableRuleImpl> availableRules, VariableContext variableContext)
-
isConditionApplicable
protected boolean isConditionApplicable(DmnDecisionTableInputImpl input, DmnExpressionImpl condition, VariableContext variableContext)
-
setEvaluationOutput
protected void setEvaluationOutput(DmnDecisionTableImpl decisionTable, List<DmnDecisionTableRuleImpl> matchingRules, VariableContext variableContext, DmnDecisionTableEvaluationEventImpl evaluationResult)
-
evaluateMatchingRule
protected DmnEvaluatedDecisionRule evaluateMatchingRule(List<DmnDecisionTableOutputImpl> decisionTableOutputs, DmnDecisionTableRuleImpl matchingRule, VariableContext variableContext)
-
getLocalVariableContext
protected VariableContext getLocalVariableContext(DmnDecisionTableInputImpl input, DmnEvaluatedInput evaluatedInput, VariableContext variableContext)
-
isNonEmptyExpression
protected boolean isNonEmptyExpression(DmnExpressionImpl expression)
-
evaluateInputExpression
protected Object evaluateInputExpression(DmnExpressionImpl expression, VariableContext variableContext)
-
evaluateInputEntry
protected Object evaluateInputEntry(DmnDecisionTableInputImpl input, DmnExpressionImpl condition, VariableContext variableContext)
-
evaluateOutputEntries
protected Map<String,DmnEvaluatedOutput> evaluateOutputEntries(List<DmnDecisionTableOutputImpl> decisionTableOutputs, DmnDecisionTableRuleImpl matchingRule, VariableContext variableContext)
-
evaluateOutputEntry
protected Object evaluateOutputEntry(DmnExpressionImpl conclusion, VariableContext variableContext)
-
evaluateFeelSimpleUnaryTests
protected Object evaluateFeelSimpleUnaryTests(DmnDecisionTableInputImpl input, DmnExpressionImpl condition, VariableContext variableContext)
-
generateDecisionResult
public DmnDecisionResult generateDecisionResult(DmnDecisionLogicEvaluationEvent event)
Description copied from interface:DmnDecisionLogicEvaluationHandler
Generates the decision evaluation result of the given event.- Specified by:
generateDecisionResult
in interfaceDmnDecisionLogicEvaluationHandler
- Parameters:
event
- which represents the evaluation- Returns:
- the result of the decision evaluation
-
-