Class AstProperty
java.lang.Object
org.flowable.common.engine.impl.de.odysseus.el.tree.impl.ast.AstNode
org.flowable.common.engine.impl.de.odysseus.el.tree.impl.ast.AstProperty
- All Implemented Interfaces:
ExpressionNode,Node
- Direct Known Subclasses:
AstBracket,AstDot
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final booleanprotected final booleanprotected final AstNodeprotected final boolean -
Constructor Summary
ConstructorsConstructorDescriptionAstProperty(AstNode prefix, boolean lvalue, boolean strict) AstProperty(AstNode prefix, boolean lvalue, boolean strict, boolean ignoreReturnType) -
Method Summary
Modifier and TypeMethodDescriptionprotected MethodfindMethod(String name, Class<?> clazz, Class<?> returnType, Class<?>[] paramTypes) getChild(int i) Get i'th childgetMethodInfo(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes) Get method information.protected AstNodeprotected abstract ObjectgetProperty(Bindings bindings, ELContext context) Class<?>Get the value type accepted inExpressionNode.setValue(Bindings, ELContext, Object).getValueReference(Bindings bindings, ELContext context) Get value reference.invoke(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes, Object[] paramValues) Invoke method.final booleanfinal booleanbooleanbooleanisReadOnly(Bindings bindings, ELContext context) Determine whetherExpressionNode.setValue(Bindings, ELContext, Object)will throw a javax.el.PropertyNotWritableException.voidAssign value.Methods inherited from class org.flowable.common.engine.impl.de.odysseus.el.tree.impl.ast.AstNode
appendStructure, findAccessibleMethod, getStructuralId, getValueMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.flowable.common.engine.impl.de.odysseus.el.tree.Node
getCardinality
-
Field Details
-
prefix
-
lvalue
protected final boolean lvalue -
strict
protected final boolean strict -
ignoreReturnType
protected final boolean ignoreReturnType
-
-
Constructor Details
-
AstProperty
-
AstProperty
-
-
Method Details
-
getProperty
- Throws:
ELException
-
getPrefix
-
getValueReference
Description copied from interface:ExpressionNodeGet value reference.- Returns:
- value reference
-
eval
-
isLiteralText
public final boolean isLiteralText()- Returns:
trueif this node represents literal text
-
isLeftValue
public final boolean isLeftValue()- Returns:
trueif the subtree rooted at this node could be used as an lvalue expression (identifier or property sequence with non-literal prefix).
-
isMethodInvocation
public boolean isMethodInvocation()- Returns:
trueif the subtree rooted at this node is a method invocation.
-
getType
Description copied from interface:ExpressionNodeGet the value type accepted inExpressionNode.setValue(Bindings, ELContext, Object).- Parameters:
bindings- bindings containing variables and functionscontext- evaluation context- Returns:
- accepted type or
nullfor non-lvalue nodes
-
isReadOnly
Description copied from interface:ExpressionNodeDetermine whetherExpressionNode.setValue(Bindings, ELContext, Object)will throw a javax.el.PropertyNotWritableException.- Parameters:
bindings- bindings containing variables and functionscontext- evaluation context- Returns:
trueif this a read-only expression node- Throws:
ELException
-
setValue
Description copied from interface:ExpressionNodeAssign value.- Parameters:
bindings- bindings containing variables and functionscontext- evaluation contextvalue- value to set- Throws:
ELException
-
findMethod
-
getMethodInfo
public MethodInfo getMethodInfo(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes) Description copied from interface:ExpressionNodeGet method information. If this is a non-lvalue node, answernull.- Parameters:
bindings- bindings containing variables and functionscontext- evaluation contextreturnType- expected method return type (may benullmeaning don't care)paramTypes- expected method argument types- Returns:
- method information or
null
-
invoke
public Object invoke(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes, Object[] paramValues) Description copied from interface:ExpressionNodeInvoke method.- Parameters:
bindings- bindings containing variables and functionscontext- evaluation contextreturnType- expected method return type (may benullmeaning don't care)paramTypes- expected method argument typesparamValues- parameter values- Returns:
- result of the method invocation
-
getChild
Description copied from interface:NodeGet i'th child
-