Package ognl
Class ASTMethod
- java.lang.Object
-
- ognl.SimpleNode
-
- ognl.ASTMethod
-
- All Implemented Interfaces:
java.io.Serializable,OrderedReturn,JavaSource,Node,NodeType
public class ASTMethod extends SimpleNode implements OrderedReturn, NodeType
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringcoreExpressionprivate java.lang.Class<?>getterClassprivate java.lang.StringlastExpressionprivate java.lang.StringmethodNameprivate static longserialVersionUID-
Fields inherited from class ognl.SimpleNode
children, id, parent, parser
-
-
Constructor Summary
Constructors Constructor Description ASTMethod(int id)ASTMethod(OgnlParser p, int id)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.lang.Class<?>[]getChildrenClasses(OgnlContext context, Node[] _children)private static java.lang.Class<?>getClassMatchingAllChildren(OgnlContext context, Node[] _children)java.lang.StringgetCoreExpression()Get the core expression to execute first before any return foo logic is started.java.lang.Class<?>getGetterClass()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.StringgetMethodName()Returns the method name that this node will call.java.lang.Class<?>getSetterClass()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.booleanisSimpleMethod(OgnlContext context)voidsetMethodName(java.lang.String methodName)Called from parser action.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.java.lang.StringtoString()-
Methods inherited from class ognl.SimpleNode
dump, evaluateGetValueBody, evaluateSetValueBody, flattenTree, getAccessor, getIndexInParent, getNextSibling, getValue, isChain, isConstant, isEvalChain, isNodeConstant, isNodeSimpleProperty, isOperation, isSequence, isSimpleNavigationChain, isSimpleProperty, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, lastChild, setAccessor, setValue, setValueBody, toString
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
methodName
private java.lang.String methodName
-
lastExpression
private java.lang.String lastExpression
-
coreExpression
private java.lang.String coreExpression
-
getterClass
private java.lang.Class<?> getterClass
-
-
Constructor Detail
-
ASTMethod
public ASTMethod(int id)
-
ASTMethod
public ASTMethod(OgnlParser p, int id)
-
-
Method Detail
-
setMethodName
public void setMethodName(java.lang.String methodName)
Called from parser action.- Parameters:
methodName- the method name.
-
getMethodName
public java.lang.String getMethodName()
Returns the method name that this node will call.- Returns:
- the method name.
-
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- Parameters:
context- the OgnlContext within which to perform the operation.source- the Object from which to get the value body.- Returns:
- the value body from the source (as appropriate within the provided context).
- Throws:
OgnlException- if the value body get fails.
-
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.
-
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.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classSimpleNode
-
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- Parameters:
context- the OgnlContext within which to perform the operation.target- the Object from which to retrieve the get source string.- 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- Parameters:
context- the OgnlContext within which to perform the operation.target- the Object from which to retrieve the set source string.- Returns:
- Literal java string representation of an object set.
-
getClassMatchingAllChildren
private static java.lang.Class<?> getClassMatchingAllChildren(OgnlContext context, Node[] _children)
-
getChildrenClasses
private static java.lang.Class<?>[] getChildrenClasses(OgnlContext context, Node[] _children)
-
isSimpleMethod
public boolean isSimpleMethod(OgnlContext context)
- Overrides:
isSimpleMethodin classSimpleNode
-
-