Class DefaultExpressionManager
java.lang.Object
org.flowable.common.engine.impl.el.DefaultExpressionManager
- All Implemented Interfaces:
ExpressionManager
- Direct Known Subclasses:
VariableScopeExpressionManager
Default
ExpressionManager
implementation that contains the logic for creating
and resolving Expression
instances.- Author:
- Tom Baeyens, Dave Syer, Frederik Heremans, Joram Barrez, Filip Hrisafov
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected List<FlowableAstFunctionCreator>
protected ELResolver
protected DeploymentCache<Expression>
protected ExpressionFactory
protected int
protected List<FlowableFunctionDelegate>
protected FlowableFunctionResolver
protected FlowableFunctionResolverFactory
protected ELResolver
protected ELContext
protected List<ELResolver>
protected List<ELResolver>
protected List<ELResolver>
protected ELResolver
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addPostDefaultResolver
(ELResolver elResolver) void
addPreBeanResolver
(ELResolver elResolver) void
addPreDefaultResolver
(ELResolver elResolver) protected ELResolver
protected List<ELResolver>
createExpression
(String text) Creates anExpression
instance from the given String.protected ELResolver
protected Expression
createJuelExpression
(String expression, ValueExpression valueExpression) protected ELResolver
Returns theFlowableAstFunctionCreator
which potentially can alter the expression functions during the creation of anExpression
instance.getBeans()
Returns the beans registered with this expression manager instance.getElContext
(VariableContainer variableContainer) Creates anELContext
against whichExpression
instance can be resolved.int
Returns the custom functions registered and usable in expressions.protected ELResolver
protected boolean
isCacheEnabled
(String text) void
setAstFunctionCreators
(List<FlowableAstFunctionCreator> astFunctionCreators) Sets theFlowableAstFunctionCreator
instances which can alter the expression functions during the creation of anExpression
instance.void
setBeanResolver
(ELResolver beanResolver) void
Sets the beans which can be used in expressions.void
setExpressionCache
(DeploymentCache<Expression> expressionCache) void
setExpressionFactory
(ExpressionFactory expressionFactory) void
setExpressionTextLengthCacheLimit
(int expressionTextLengthCacheLimit) void
setFunctionDelegates
(List<FlowableFunctionDelegate> functionDelegates) Set the custom functions usable in expressions.void
setFunctionResolverFactory
(FlowableFunctionResolverFactory functionResolverFactory) void
setJsonNodeResolver
(ELResolver jsonNodeResolver) protected void
-
Field Details
-
expressionFactory
-
functionDelegates
-
functionResolver
-
functionResolverFactory
-
astFunctionCreators
-
parsingElContext
-
beans
-
expressionCache
-
expressionTextLengthCacheLimit
protected int expressionTextLengthCacheLimit -
preDefaultResolvers
-
jsonNodeResolver
-
postDefaultResolvers
-
preBeanResolvers
-
beanResolver
-
staticElResolver
-
-
Constructor Details
-
DefaultExpressionManager
-
-
Method Details
-
createExpression
Description copied from interface:ExpressionManager
Creates anExpression
instance from the given String. Expression are resolved against aVariableContainer
(e.g. a process Execution, a case instance plan item, etc.)- Specified by:
createExpression
in interfaceExpressionManager
-
isCacheEnabled
-
createJuelExpression
-
setExpressionFactory
-
getElContext
Description copied from interface:ExpressionManager
Creates anELContext
against whichExpression
instance can be resolved.- Specified by:
getElContext
in interfaceExpressionManager
-
getOrCreateStaticElResolver
-
createDefaultElResolvers
-
createVariableElResolver
-
createJsonNodeElResolver
-
createBeanElResolver
-
getBeans
Description copied from interface:ExpressionManager
Returns the beans registered with this expression manager instance.- Specified by:
getBeans
in interfaceExpressionManager
-
setBeans
Description copied from interface:ExpressionManager
Sets the beans which can be used in expressions.- Specified by:
setBeans
in interfaceExpressionManager
-
getFunctionDelegates
Description copied from interface:ExpressionManager
Returns the custom functions registered and usable in expressions.- Specified by:
getFunctionDelegates
in interfaceExpressionManager
-
setFunctionDelegates
Description copied from interface:ExpressionManager
Set the custom functions usable in expressions.- Specified by:
setFunctionDelegates
in interfaceExpressionManager
-
updateFunctionResolver
protected void updateFunctionResolver() -
getAstFunctionCreators
Description copied from interface:ExpressionManager
Returns theFlowableAstFunctionCreator
which potentially can alter the expression functions during the creation of anExpression
instance.- Specified by:
getAstFunctionCreators
in interfaceExpressionManager
-
setAstFunctionCreators
Description copied from interface:ExpressionManager
Sets theFlowableAstFunctionCreator
instances which can alter the expression functions during the creation of anExpression
instance.- Specified by:
setAstFunctionCreators
in interfaceExpressionManager
-
getFunctionResolverFactory
- Specified by:
getFunctionResolverFactory
in interfaceExpressionManager
-
setFunctionResolverFactory
- Specified by:
setFunctionResolverFactory
in interfaceExpressionManager
-
getExpressionCache
-
setExpressionCache
-
getExpressionTextLengthCacheLimit
public int getExpressionTextLengthCacheLimit() -
setExpressionTextLengthCacheLimit
public void setExpressionTextLengthCacheLimit(int expressionTextLengthCacheLimit) -
addPreDefaultResolver
-
getJsonNodeResolver
-
setJsonNodeResolver
-
addPostDefaultResolver
-
addPreBeanResolver
-
getBeanResolver
-
setBeanResolver
-