org.springframework.expression.spel.ast
Class CompoundExpression
java.lang.Object
org.springframework.expression.spel.ast.SpelNodeImpl
org.springframework.expression.spel.ast.CompoundExpression
- All Implemented Interfaces:
- SpelNode
public class CompoundExpression
- extends SpelNodeImpl
Represents a DOT separated expression sequence, such as 'property1.property2.methodOne()'
- Since:
- 3.0
- Author:
- Andy Clement
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CompoundExpression
public CompoundExpression(int pos,
SpelNodeImpl... expressionComponents)
getValueInternal
public TypedValue getValueInternal(ExpressionState state)
throws EvaluationException
- Evalutes a compound expression. This involves evaluating each piece in turn and the return value from each piece
is the active context object for the subsequent piece.
- Specified by:
getValueInternal
in class SpelNodeImpl
- Parameters:
state
- the state in which the expression is being evaluated
- Returns:
- the final value from the last piece of the compound expression
- Throws:
EvaluationException
setValue
public void setValue(ExpressionState state,
Object value)
throws EvaluationException
- Description copied from interface:
SpelNode
- Evaluate the expression to a node and then set the new value on that node. For example, if the expression
evaluates to a property reference then the property will be set to the new value.
- Specified by:
setValue
in interface SpelNode
- Overrides:
setValue
in class SpelNodeImpl
- Parameters:
state
- the current expression state (includes the context)value
- the new value
- Throws:
EvaluationException
- if any problem occurs evaluating the expression or setting the new value
isWritable
public boolean isWritable(ExpressionState state)
throws EvaluationException
- Description copied from interface:
SpelNode
- Determine if this expression node will support a setValue() call.
- Specified by:
isWritable
in interface SpelNode
- Overrides:
isWritable
in class SpelNodeImpl
- Parameters:
state
- the current expression state (includes the context)
- Returns:
- true if the expression node will allow setValue()
- Throws:
EvaluationException
- if something went wrong trying to determine if the node supports writing
toStringAST
public String toStringAST()
- Specified by:
toStringAST
in interface SpelNode
- Specified by:
toStringAST
in class SpelNodeImpl
- Returns:
- the string form of this AST node