Package ognl
Class ASTProperty
- java.lang.Object
-
- ognl.SimpleNode
-
- ognl.ASTProperty
-
- All Implemented Interfaces:
java.io.Serializable
,JavaSource
,Node
,NodeType
public class ASTProperty extends SimpleNode implements NodeType
- Author:
- Luke Blanshard (blanshlu@netscape.net), Drew Davidson (drew@ognl.org)
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class ognl.SimpleNode
_children, _id, _parent, _parser
-
-
Constructor Summary
Constructors Constructor Description ASTProperty(int id)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class
getGetterClass()
The type returned from the expression - if any.int
getIndexedPropertyType(OgnlContext context, java.lang.Object source)
Returns true if this property is described by an IndexedPropertyDescriptor and that if followed by an index specifier it will call the index get/set methods rather than go through property accessors.java.lang.Object
getProperty(OgnlContext context, java.lang.Object source)
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.boolean
isIndexedAccess()
Returns true if this property is itself an index reference.boolean
isNodeSimpleProperty(OgnlContext context)
void
setIndexedAccess(boolean value)
protected void
setValueBody(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.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.java.lang.String
toString()
-
Methods inherited from class ognl.SimpleNode
dump, evaluateGetValueBody, evaluateSetValueBody, flattenTree, getAccessor, getIndexInParent, getNextSibling, getValue, isConstant, isNodeConstant, isSimpleNavigationChain, isSimpleProperty, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, lastChild, setAccessor, setValue, toString
-
-
-
-
Method Detail
-
setIndexedAccess
public void setIndexedAccess(boolean value)
-
isIndexedAccess
public boolean isIndexedAccess()
Returns true if this property is itself an index reference.
-
getIndexedPropertyType
public int getIndexedPropertyType(OgnlContext context, java.lang.Object source) throws OgnlException
Returns true if this property is described by an IndexedPropertyDescriptor and that if followed by an index specifier it will call the index get/set methods rather than go through property accessors.- Throws:
OgnlException
-
getProperty
public java.lang.Object getProperty(OgnlContext context, java.lang.Object source) throws OgnlException
- Throws:
OgnlException
-
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
-
setValueBody
protected void setValueBody(OgnlContext context, java.lang.Object target, java.lang.Object value) throws OgnlException
Description copied from class:SimpleNode
Subclasses 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:
setValueBody
in classSimpleNode
- Throws:
OgnlException
-
isNodeSimpleProperty
public boolean isNodeSimpleProperty(OgnlContext context) throws OgnlException
- Overrides:
isNodeSimpleProperty
in classSimpleNode
- 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.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classSimpleNode
-
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.
-
-