org.camunda.bpm.dmn.engine.impl
Class DefaultDmnDecisionContext
java.lang.Object
org.camunda.bpm.dmn.engine.impl.DefaultDmnDecisionContext
public class DefaultDmnDecisionContext
- extends Object
Context which evaluates a decision on a given input
|
Method Summary |
protected void |
addResultToVariableContext(DmnDecisionTableResult evaluatedResult,
org.camunda.bpm.engine.variable.VariableMap variableMap)
|
protected void |
buildDecisionTree(DmnDecision decision,
List<DmnDecision> requiredDecisions)
|
protected org.camunda.bpm.engine.variable.VariableMap |
buildVariableMapFromVariableContext(org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected long |
calculateExecutedDecisionElements(DmnDecisionTableImpl decisionTable)
|
DmnDecisionTableResult |
evaluateDecision(DmnDecision decision,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
Evaluate a decision with the given VariableContext |
protected DmnDecisionTableEvaluationEventImpl |
evaluateDecisionTable(DmnDecision decision,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected Object |
evaluateExpression(String expressionLanguage,
DmnExpressionImpl expression,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected org.camunda.bpm.engine.variable.value.TypedValue |
evaluateFeelSimpleExpression(DmnExpressionImpl expression,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected Object |
evaluateFeelSimpleUnaryTests(DmnDecisionTableInputImpl input,
DmnExpressionImpl condition,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected DmnEvaluatedInput |
evaluateInput(DmnDecisionTableInputImpl input,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected Object |
evaluateInputExpression(DmnExpressionImpl expression,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected List<DmnDecisionTableRuleImpl> |
evaluateInputForAvailableRules(int conditionIdx,
DmnDecisionTableInputImpl input,
List<DmnDecisionTableRuleImpl> availableRules,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected DmnEvaluatedDecisionRule |
evaluateMatchingRule(List<DmnDecisionTableOutputImpl> decisionTableOutputs,
DmnDecisionTableRuleImpl matchingRule,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected Map<String,DmnEvaluatedOutput> |
evaluateOutputEntries(List<DmnDecisionTableOutputImpl> decisionTableOutputs,
DmnDecisionTableRuleImpl matchingRule,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected Object |
evaluateOutputEntry(DmnExpressionImpl conclusion,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected void |
generateDecisionEvaluationEvent(List<DmnDecisionTableEvaluationEvent> evaluatedEvents)
|
protected DmnDecisionTableResult |
generateDecisionTableResult(DmnDecisionTableEvaluationEvent evaluationResult)
|
protected DmnDecisionTableResult |
generateDecisionTableResult(DmnDecisionTableImpl decisionTable,
DmnDecisionTableEvaluationEventImpl evaluationResult)
|
protected String |
getExpressionTextForLanguage(DmnExpressionImpl expression,
String expressionLanguage)
|
protected ScriptEngine |
getScriptEngineForName(String expressionLanguage)
|
protected boolean |
isConditionApplicable(DmnDecisionTableInputImpl input,
DmnExpressionImpl condition,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
|
protected boolean |
isElExpression(String expressionLanguage)
|
protected boolean |
isFeelExpressionLanguage(String expressionLanguage)
|
protected boolean |
isNonEmptyExpression(DmnExpressionImpl expression)
|
protected void |
setEvaluationOutput(DmnDecisionTableImpl decisionTable,
List<DmnDecisionTableRuleImpl> matchingRules,
org.camunda.bpm.engine.variable.context.VariableContext variableContext,
DmnDecisionTableEvaluationEventImpl evaluationResult)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LOG
protected static final DmnEngineLogger LOG
evaluationListeners
protected final List<DmnDecisionTableEvaluationListener> evaluationListeners
decisionEvaluationListeners
protected final List<DmnDecisionEvaluationListener> decisionEvaluationListeners
scriptEngineResolver
protected final DmnScriptEngineResolver scriptEngineResolver
elProvider
protected final ElProvider elProvider
feelEngine
protected final FeelEngine feelEngine
inputExpressionExpressionLanguage
protected final String inputExpressionExpressionLanguage
inputEntryExpressionLanguage
protected final String inputEntryExpressionLanguage
outputEntryExpressionLanguage
protected final String outputEntryExpressionLanguage
DefaultDmnDecisionContext
public DefaultDmnDecisionContext(DefaultDmnEngineConfiguration configuration)
evaluateDecision
public DmnDecisionTableResult evaluateDecision(DmnDecision decision,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
- Evaluate a decision with the given
VariableContext
- Parameters:
decision - the decision to evaluatevariableContext - the available variable context
- Returns:
- the result of the decision evaluation
evaluateDecisionTable
protected DmnDecisionTableEvaluationEventImpl evaluateDecisionTable(DmnDecision decision,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
generateDecisionEvaluationEvent
protected void generateDecisionEvaluationEvent(List<DmnDecisionTableEvaluationEvent> evaluatedEvents)
addResultToVariableContext
protected void addResultToVariableContext(DmnDecisionTableResult evaluatedResult,
org.camunda.bpm.engine.variable.VariableMap variableMap)
buildVariableMapFromVariableContext
protected org.camunda.bpm.engine.variable.VariableMap buildVariableMapFromVariableContext(org.camunda.bpm.engine.variable.context.VariableContext variableContext)
buildDecisionTree
protected void buildDecisionTree(DmnDecision decision,
List<DmnDecision> requiredDecisions)
evaluateInput
protected DmnEvaluatedInput evaluateInput(DmnDecisionTableInputImpl input,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
evaluateInputForAvailableRules
protected List<DmnDecisionTableRuleImpl> evaluateInputForAvailableRules(int conditionIdx,
DmnDecisionTableInputImpl input,
List<DmnDecisionTableRuleImpl> availableRules,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
isConditionApplicable
protected boolean isConditionApplicable(DmnDecisionTableInputImpl input,
DmnExpressionImpl condition,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
setEvaluationOutput
protected void setEvaluationOutput(DmnDecisionTableImpl decisionTable,
List<DmnDecisionTableRuleImpl> matchingRules,
org.camunda.bpm.engine.variable.context.VariableContext variableContext,
DmnDecisionTableEvaluationEventImpl evaluationResult)
evaluateMatchingRule
protected DmnEvaluatedDecisionRule evaluateMatchingRule(List<DmnDecisionTableOutputImpl> decisionTableOutputs,
DmnDecisionTableRuleImpl matchingRule,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
generateDecisionTableResult
protected DmnDecisionTableResult generateDecisionTableResult(DmnDecisionTableImpl decisionTable,
DmnDecisionTableEvaluationEventImpl evaluationResult)
generateDecisionTableResult
protected DmnDecisionTableResult generateDecisionTableResult(DmnDecisionTableEvaluationEvent evaluationResult)
calculateExecutedDecisionElements
protected long calculateExecutedDecisionElements(DmnDecisionTableImpl decisionTable)
evaluateInputExpression
protected Object evaluateInputExpression(DmnExpressionImpl expression,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
evaluateOutputEntries
protected Map<String,DmnEvaluatedOutput> evaluateOutputEntries(List<DmnDecisionTableOutputImpl> decisionTableOutputs,
DmnDecisionTableRuleImpl matchingRule,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
evaluateOutputEntry
protected Object evaluateOutputEntry(DmnExpressionImpl conclusion,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
evaluateFeelSimpleExpression
protected org.camunda.bpm.engine.variable.value.TypedValue evaluateFeelSimpleExpression(DmnExpressionImpl expression,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
evaluateFeelSimpleUnaryTests
protected Object evaluateFeelSimpleUnaryTests(DmnDecisionTableInputImpl input,
DmnExpressionImpl condition,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
evaluateExpression
protected Object evaluateExpression(String expressionLanguage,
DmnExpressionImpl expression,
org.camunda.bpm.engine.variable.context.VariableContext variableContext)
getExpressionTextForLanguage
protected String getExpressionTextForLanguage(DmnExpressionImpl expression,
String expressionLanguage)
getScriptEngineForName
protected ScriptEngine getScriptEngineForName(String expressionLanguage)
isElExpression
protected boolean isElExpression(String expressionLanguage)
isNonEmptyExpression
protected boolean isNonEmptyExpression(DmnExpressionImpl expression)
isFeelExpressionLanguage
protected boolean isFeelExpressionLanguage(String expressionLanguage)
Copyright © 2016 camunda services GmbH. All rights reserved.