Package org.apache.commons.ognl
Class ASTStaticField
- java.lang.Object
-
- org.apache.commons.ognl.SimpleNode
-
- org.apache.commons.ognl.ASTStaticField
-
- All Implemented Interfaces:
java.io.Serializable
,JavaSource
,Node
,NodeType
public class ASTStaticField extends SimpleNode implements NodeType
$Id$- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
className
private java.lang.String
fieldName
private java.lang.Class
getterClass
-
Fields inherited from class org.apache.commons.ognl.SimpleNode
children, id, parent, parser
-
-
Constructor Summary
Constructors Constructor Description ASTStaticField(int id)
ASTStaticField(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.(package private) java.lang.String
getClassName()
Get the class name for this field.(package private) java.lang.Class
getFieldClass(OgnlContext context)
(package private) java.lang.String
getFieldName()
Get the field name for this field.java.lang.Class
getGetterClass()
The type returned from the expression - if any.java.lang.Class
getSetterClass()
The type used to set the value - if any.protected java.lang.Object
getValueBody(OgnlContext context, java.lang.Object source)
Subclasses implement this method to do the actual work of extracting the appropriate value from the source object.(package private) void
init(java.lang.String className, java.lang.String fieldName)
Called from parser action.boolean
isNodeConstant(OgnlContext context)
Returns true iff this node is constant without respect to the children.java.lang.String
toGetSourceString(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.String
toSetSourceString(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, isNodeSimpleProperty, isSimpleNavigationChain, isSimpleProperty, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, lastChild, setAccessor, setValue, setValueBody, toString, toString
-
-
-
-
Constructor Detail
-
ASTStaticField
public ASTStaticField(int id)
-
ASTStaticField
public ASTStaticField(OgnlParser p, int id)
-
-
Method Detail
-
init
void init(java.lang.String className, java.lang.String fieldName)
Called from parser action.
-
getValueBody
protected java.lang.Object getValueBody(OgnlContext context, java.lang.Object source) throws OgnlException
Description copied from class:SimpleNode
Subclasses implement this method to do the actual work of extracting the appropriate value from the source object.- Specified by:
getValueBody
in classSimpleNode
- Throws:
OgnlException
-
isNodeConstant
public boolean isNodeConstant(OgnlContext context) throws OgnlException
Description copied from class:SimpleNode
Returns true iff this node is constant without respect to the children.- Overrides:
isNodeConstant
in classSimpleNode
- Throws:
OgnlException
-
getFieldClass
java.lang.Class getFieldClass(OgnlContext context) throws OgnlException
- Throws:
OgnlException
-
getGetterClass
public java.lang.Class getGetterClass()
Description copied from interface:NodeType
The type returned from the expression - if any.- Specified by:
getGetterClass
in interfaceNodeType
- Returns:
- The type.
-
getSetterClass
public java.lang.Class getSetterClass()
Description copied from interface:NodeType
The type used to set the value - if any.- Specified by:
getSetterClass
in interfaceNodeType
- Returns:
- The type.
-
toGetSourceString
public java.lang.String toGetSourceString(OgnlContext context, java.lang.Object target)
Description copied from interface:JavaSource
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.- Specified by:
toGetSourceString
in interfaceJavaSource
- Overrides:
toGetSourceString
in 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:JavaSource
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.- Specified by:
toSetSourceString
in interfaceJavaSource
- Overrides:
toSetSourceString
in 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:Node
Supports the Visitor pattern. The method which corresponds to the runtime type of this Node will be called.- Specified by:
accept
in 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
-
getFieldName
java.lang.String getFieldName()
Get the field name for this field.- Returns:
- the field name.
- Since:
- 4.0
-
getClassName
java.lang.String getClassName()
Get the class name for this field.- Returns:
- the class name.
- Since:
- 4.0
-
-