org.camunda.bpm.engine.impl.juel
Class AstNode
java.lang.Object
org.camunda.bpm.engine.impl.juel.AstNode
- All Implemented Interfaces:
- ExpressionNode, Node
- Direct Known Subclasses:
- AstEval, AstIdentifier, AstMethod, AstProperty, AstRightValue, AstText
public abstract class AstNode
- extends Object
- implements ExpressionNode
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AstNode
public AstNode()
getValue
public final Object getValue(Bindings bindings,
ELContext context,
Class<?> type)
- evaluate and return the (optionally coerced) result.
- Specified by:
getValue
in interface ExpressionNode
- Parameters:
bindings
- bindings containing variables and functionscontext
- evaluation contexttype
- result type
- Returns:
- evaluated node, coerced to the expected type
appendStructure
public abstract void appendStructure(StringBuilder builder,
Bindings bindings)
eval
public abstract Object eval(Bindings bindings,
ELContext context)
getStructuralId
public final String getStructuralId(Bindings bindings)
- Description copied from interface:
ExpressionNode
- Get the canonical expression string for this node. Variable and funtion names will be
replaced in a way such that two expression nodes that have the same node structure and
bindings will also answer the same value here.
For example,
"${foo:bar()+2*foobar}"
may lead to
"${<fn>() + 2 * <var>}"
if foobar
is a bound variable.
Otherwise, the structural id would be "${<fn>() + 2 * foobar}"
.
If the bindings is null
, the full canonical subexpression is returned.
- Specified by:
getStructuralId
in interface ExpressionNode
Copyright © 2016 camunda services GmbH. All rights reserved.