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
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Class<?>getterClassprivate booleanindexedAccessprivate static longserialVersionUIDprivate java.lang.Class<?>setterClass-
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.intgetIndexedPropertyType(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.(package private) java.lang.reflect.MethodgetIndexedWriteMethod(java.beans.PropertyDescriptor pd)java.lang.ObjectgetProperty(OgnlContext context, java.lang.Object source)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.booleanisIndexedAccess()Returns true if this property is itself an index reference.booleanisNodeSimpleProperty(OgnlContext context)voidsetIndexedAccess(boolean value)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.java.lang.StringtoString()-
Methods inherited from class ognl.SimpleNode
dump, evaluateGetValueBody, evaluateSetValueBody, flattenTree, getAccessor, getIndexInParent, getNextSibling, getValue, isChain, isConstant, isEvalChain, isNodeConstant, isOperation, isSequence, isSimpleMethod, isSimpleNavigationChain, isSimpleProperty, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, lastChild, setAccessor, setValue, toString
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
indexedAccess
private boolean indexedAccess
-
getterClass
private java.lang.Class<?> getterClass
-
setterClass
private java.lang.Class<?> setterClass
-
-
Method Detail
-
setIndexedAccess
public void setIndexedAccess(boolean value)
-
isIndexedAccess
public boolean isIndexedAccess()
Returns true if this property is itself an index reference.- Returns:
- true if this property is an index reference, false otherwise.
-
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.- Parameters:
context- the OgnlContext within which to perform the operation.source- the Object (indexed property) from which to retrieve the indexed property type.- Returns:
- the int representing the indexed property type of source.
- Throws:
OgnlException- if source is not an indexed property.
-
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: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.
-
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- Parameters:
context- the OgnlContext within which to perform the operation.target- the Object upon which to set the value body.value- the Object representing the value body to apply to the target.- Throws:
OgnlException- if the value body set fails.
-
isNodeSimpleProperty
public boolean isNodeSimpleProperty(OgnlContext context) throws OgnlException
- Overrides:
isNodeSimplePropertyin 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.
-
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.
-
getIndexedWriteMethod
java.lang.reflect.Method getIndexedWriteMethod(java.beans.PropertyDescriptor pd)
-
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.
-
-