Package org.apache.commons.ognl
Class ASTChain
- java.lang.Object
-
- org.apache.commons.ognl.SimpleNode
-
- org.apache.commons.ognl.ASTChain
-
- All Implemented Interfaces:
java.io.Serializable,OrderedReturn,JavaSource,Node,NodeType
public class ASTChain extends SimpleNode implements NodeType, OrderedReturn
$Id$- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringcoreExpressionprivate java.lang.ClassgetterClassprivate java.lang.StringlastExpressionprivate java.lang.ClasssetterClass-
Fields inherited from class org.apache.commons.ognl.SimpleNode
children, id, parent, parser
-
-
Constructor Summary
Constructors Constructor Description ASTChain(int id)ASTChain(OgnlParser p, int id)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <R,P>
Raccept(NodeVisitor<? extends R,? super P> visitor, P data)Supports the Visitor pattern.java.lang.StringgetCoreExpression()Get the core expression to execute first before any return foo logic is started.java.lang.ClassgetGetterClass()The type returned from the expression - if any.java.lang.StringgetLastExpression()Gets the last expression to be pre-pended with a return <expression> block.java.lang.ClassgetSetterClass()The type used to set the value - if any.protected java.lang.ObjectgetValueBody(OgnlContext context, java.lang.Object source)Subclasses implement this method to do the actual work of extracting the appropriate value from the source object.booleanisSimpleNavigationChain(OgnlContext context)voidjjtClose()This method is called after all the child nodes have been added.protected voidsetValueBody(OgnlContext context, java.lang.Object target, java.lang.Object value)Subclasses implement this method to do the actual work of setting the appropriate value in the target object.java.lang.StringtoGetSourceString(OgnlContext context, java.lang.Object target)Expected to return a java source representation of itself such that it could be turned into a literal java expression to be compiled and executed forExpressionAccessor.get(OgnlContext, Object)calls.java.lang.StringtoSetSourceString(OgnlContext context, java.lang.Object target)Expected to return a java source representation of itself such that it could be turned into a literal java expression to be compiled and executed forExpressionAccessor.get(OgnlContext, Object)calls.-
Methods inherited from class org.apache.commons.ognl.SimpleNode
dump, evaluateGetValueBody, evaluateSetValueBody, flattenTree, getAccessor, getIndexInParent, getNextSibling, getValue, isConstant, isEvalChain, isNodeConstant, isNodeSimpleProperty, isSimpleProperty, jjtAddChild, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, lastChild, setAccessor, setValue, toString, toString
-
-
-
-
Constructor Detail
-
ASTChain
public ASTChain(int id)
-
ASTChain
public ASTChain(OgnlParser p, int id)
-
-
Method Detail
-
getLastExpression
public java.lang.String getLastExpression()
Description copied from interface:OrderedReturnGets the last expression to be pre-pended with a return <expression> block.- Specified by:
getLastExpressionin interfaceOrderedReturn- Returns:
- The expression representing the return portion of a statement;
-
getCoreExpression
public java.lang.String getCoreExpression()
Description copied from interface:OrderedReturnGet the core expression to execute first before any return foo logic is started.- Specified by:
getCoreExpressionin interfaceOrderedReturn- Returns:
- The core standalone expression that shouldn't be pre-pended with a return keyword.
-
jjtClose
public void jjtClose()
Description copied from interface:NodeThis method is called after all the child nodes have been added.- Specified by:
jjtClosein interfaceNode- Overrides:
jjtClosein classSimpleNode
-
getValueBody
protected java.lang.Object getValueBody(OgnlContext context, java.lang.Object source) throws OgnlException
Description copied from class:SimpleNodeSubclasses implement this method to do the actual work of extracting the appropriate value from the source object.- Specified by:
getValueBodyin classSimpleNode- Throws:
OgnlException
-
setValueBody
protected void setValueBody(OgnlContext context, java.lang.Object target, java.lang.Object value) throws OgnlException
Description copied from class:SimpleNodeSubclasses implement this method to do the actual work of setting the appropriate value in the target object. The default implementation throws anInappropriateExpressionException, meaning that it cannot be a set expression.- Overrides:
setValueBodyin classSimpleNode- Throws:
OgnlException
-
isSimpleNavigationChain
public boolean isSimpleNavigationChain(OgnlContext context) throws OgnlException
- Overrides:
isSimpleNavigationChainin classSimpleNode- Throws:
OgnlException
-
getGetterClass
public java.lang.Class getGetterClass()
Description copied from interface:NodeTypeThe type returned from the expression - if any.- Specified by:
getGetterClassin interfaceNodeType- Returns:
- The type.
-
getSetterClass
public java.lang.Class getSetterClass()
Description copied from interface:NodeTypeThe type used to set the value - if any.- Specified by:
getSetterClassin interfaceNodeType- Returns:
- The type.
-
toGetSourceString
public java.lang.String toGetSourceString(OgnlContext context, java.lang.Object target)
Description copied from interface:JavaSourceExpected to return a java source representation of itself such that it could be turned into a literal java expression to be compiled and executed forExpressionAccessor.get(OgnlContext, Object)calls.- Specified by:
toGetSourceStringin interfaceJavaSource- Overrides:
toGetSourceStringin classSimpleNode- Returns:
- Literal java string representation of an object get.
-
toSetSourceString
public java.lang.String toSetSourceString(OgnlContext context, java.lang.Object target)
Description copied from interface:JavaSourceExpected to return a java source representation of itself such that it could be turned into a literal java expression to be compiled and executed forExpressionAccessor.get(OgnlContext, Object)calls.- Specified by:
toSetSourceStringin interfaceJavaSource- Overrides:
toSetSourceStringin classSimpleNode- Returns:
- Literal java string representation of an object get.
-
accept
public <R,P> R accept(NodeVisitor<? extends R,? super P> visitor, P data) throws OgnlException
Description copied from interface:NodeSupports the Visitor pattern. The method which corresponds to the runtime type of this Node will be called.- Specified by:
acceptin interfaceNode- Type Parameters:
R- The return type of the visitor.visit method.P- The type of the second parameter type.- Parameters:
visitor- The visitor to accept.data- The second parameter to pass through to visitor.visit- Returns:
- the value returned by visitor.visit
- Throws:
OgnlException
-
-