Package org.camunda.bpm.engine.impl.juel
Class AstRightValue
- java.lang.Object
-
- org.camunda.bpm.engine.impl.juel.AstNode
-
- org.camunda.bpm.engine.impl.juel.AstRightValue
-
- All Implemented Interfaces:
ExpressionNode
,Node
- Direct Known Subclasses:
AstBinary
,AstChoice
,AstComposite
,AstFunction
,AstLiteral
,AstNested
,AstParameters
,AstUnary
public abstract class AstRightValue extends AstNode
- Author:
- Christoph Beck
-
-
Constructor Summary
Constructors Constructor Description AstRightValue()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MethodInfo
getMethodInfo(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes)
Get method information.Class<?>
getType(Bindings bindings, ELContext context)
according to the spec, the result is undefined for rvalues, so answernull
ValueReference
getValueReference(Bindings bindings, ELContext context)
Get value reference.Object
invoke(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes, Object[] paramValues)
Invoke method.boolean
isLeftValue()
boolean
isLiteralText()
Answerfalse
boolean
isMethodInvocation()
boolean
isReadOnly(Bindings bindings, ELContext context)
non-lvalues are always readonly, so answertrue
void
setValue(Bindings bindings, ELContext context, Object value)
non-lvalues are always readonly, so throw an exception-
Methods inherited from class org.camunda.bpm.engine.impl.juel.AstNode
appendStructure, eval, getStructuralId, getValue
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.camunda.bpm.engine.impl.juel.Node
getCardinality, getChild
-
-
-
-
Method Detail
-
isLiteralText
public final boolean isLiteralText()
Answerfalse
- Returns:
true
if this node represents literal text
-
getType
public final Class<?> getType(Bindings bindings, ELContext context)
according to the spec, the result is undefined for rvalues, so answernull
- Parameters:
bindings
- bindings containing variables and functionscontext
- evaluation context- Returns:
- accepted type or
null
for non-lvalue nodes
-
isReadOnly
public final boolean isReadOnly(Bindings bindings, ELContext context)
non-lvalues are always readonly, so answertrue
- Parameters:
bindings
- bindings containing variables and functionscontext
- evaluation context- Returns:
true
if this a read-only expression node
-
setValue
public final void setValue(Bindings bindings, ELContext context, Object value)
non-lvalues are always readonly, so throw an exception- Parameters:
bindings
- bindings containing variables and functionscontext
- evaluation contextvalue
- value to set
-
getMethodInfo
public final MethodInfo getMethodInfo(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes)
Description copied from interface:ExpressionNode
Get method information. If this is a non-lvalue node, answernull
.- Parameters:
bindings
- bindings containing variables and functionscontext
- evaluation contextreturnType
- expected method return type (may benull
meaning don't care)paramTypes
- expected method argument types- Returns:
- method information or
null
-
invoke
public final Object invoke(Bindings bindings, ELContext context, Class<?> returnType, Class<?>[] paramTypes, Object[] paramValues)
Description copied from interface:ExpressionNode
Invoke method.- Parameters:
bindings
- bindings containing variables and functionscontext
- evaluation contextreturnType
- expected method return type (may benull
meaning don't care)paramTypes
- expected method argument typesparamValues
- parameter values- Returns:
- result of the method invocation
-
isLeftValue
public final boolean isLeftValue()
- Returns:
true
if 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:
true
if the subtree rooted at this node is a method invocation.
-
getValueReference
public final ValueReference getValueReference(Bindings bindings, ELContext context)
Description copied from interface:ExpressionNode
Get value reference.- Returns:
- value reference
-
-