Class AbstractFlowableVariableExpressionFunction
java.lang.Object
org.flowable.common.engine.impl.el.function.AbstractFlowableVariableExpressionFunction
- All Implemented Interfaces:
FlowableFunctionDelegate,FlowableAstFunctionCreator
- Direct Known Subclasses:
AbstractVariableComparatorExpressionFunction,VariableBase64ExpressionFunction,VariableContainsAnyExpressionFunction,VariableContainsExpressionFunction,VariableEqualsExpressionFunction,VariableExistsExpressionFunction,VariableGetExpressionFunction,VariableGetOrDefaultExpressionFunction,VariableIsEmptyExpressionFunction,VariableIsNotEmptyExpressionFunction,VariableNotEqualsExpressionFunction
public abstract class AbstractFlowableVariableExpressionFunction
extends Object
implements FlowableAstFunctionCreator, FlowableFunctionDelegate
- Author:
- Joram Barrez, Filip Hrisafov
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Stringprotected Collection<String>protected Methodprotected String -
Constructor Summary
ConstructorsConstructorDescriptionAbstractFlowableVariableExpressionFunction(String functionName) AbstractFlowableVariableExpressionFunction(List<String> functionNameOptions, String functionName) -
Method Summary
Modifier and TypeMethodDescriptioncreateFunction(String name, int index, AstParameters parameters, boolean varargs, FlowableExpressionParser parser) Create anAstFunctionbased on the provided name, index, parameters.protected AstNodecreateVariableNameNode(AstNode variableNode) protected MethodfindMethod(String functionName) Returns the method that is invoked by JUEL.The names of the functions that this creator can create.protected static ObjectgetVariableValue(VariableContainer variableContainer, String variableName) The name of the method when used in an expression, like the second part of ${prefix:method()}.All the names of the method when used in an expression, like the second part of ${prefix:method()}.prefix()The prefix of the method when used in an expression, like the first part of ${prefix:method()}.prefixes()All the prefixes of the method when used in an expression.protected static booleanvaluesAreNumbers(Object variableValue, Object actualValue)
-
Field Details
-
method
-
functionName
-
functionNamesOptions
-
variableScopeName
-
-
Constructor Details
-
AbstractFlowableVariableExpressionFunction
-
AbstractFlowableVariableExpressionFunction
-
-
Method Details
-
findMethod
-
prefix
Description copied from interface:FlowableFunctionDelegateThe prefix of the method when used in an expression, like the first part of ${prefix:method()}. Will be used to match the text of the expression to the actualFlowableFunctionDelegateinstance.- Specified by:
prefixin interfaceFlowableFunctionDelegate
-
prefixes
Description copied from interface:FlowableFunctionDelegateAll the prefixes of the method when used in an expression. It allows one method to cover multiple prefixes. e.g.${prefix:method()}or {$code ${alternativePrefix:method()}}. Will be used to match the text of the expression to the actualFlowableFunctionDelegateinstance.- Specified by:
prefixesin interfaceFlowableFunctionDelegate
-
localName
Description copied from interface:FlowableFunctionDelegateThe name of the method when used in an expression, like the second part of ${prefix:method()}. Will be used to match the text of the expression to the actualFlowableFunctionDelegateinstance.- Specified by:
localNamein interfaceFlowableFunctionDelegate
-
localNames
Description copied from interface:FlowableFunctionDelegateAll the names of the method when used in an expression, like the second part of ${prefix:method()}. It allows one method to cover multiple local names. e.g.${prefix:method()}or${prefix:alternativeMethod()}. Will be used to match the text of the expression to the actualFlowableFunctionDelegateinstance.- Specified by:
localNamesin interfaceFlowableFunctionDelegate
-
functionMethod
Description copied from interface:FlowableFunctionDelegateReturns the method that is invoked by JUEL.- Specified by:
functionMethodin interfaceFlowableFunctionDelegate
-
getVariableValue
-
valuesAreNumbers
-
getFunctionNames
Description copied from interface:FlowableAstFunctionCreatorThe names of the functions that this creator can create.- Specified by:
getFunctionNamesin interfaceFlowableAstFunctionCreator
-
createFunction
public AstFunction createFunction(String name, int index, AstParameters parameters, boolean varargs, FlowableExpressionParser parser) Description copied from interface:FlowableAstFunctionCreatorCreate anAstFunctionbased on the provided name, index, parameters. Potentially creating new parameters to enhance the function.- Specified by:
createFunctionin interfaceFlowableAstFunctionCreator- Parameters:
name- the name of the functionindex- the indexparameters- the parameters for the functionvarargs- whether varargs is supportedparser- the parser for potentially creating identifiers
-
createVariableNameNode
-