Package ognl
Class ObjectPropertyAccessor
- java.lang.Object
-
- ognl.ObjectPropertyAccessor
-
- All Implemented Interfaces:
PropertyAccessor
- Direct Known Subclasses:
ArrayPropertyAccessor
,EnumerationPropertyAccessor
,IteratorPropertyAccessor
,ListPropertyAccessor
,SetPropertyAccessor
public class ObjectPropertyAccessor extends java.lang.Object implements PropertyAccessor
Implementation of PropertyAccessor that uses reflection on the target object's class to find a field or a pair of set/get methods with the given property name.- Author:
- Luke Blanshard (blanshlu@netscape.net), Drew Davidson (drew@ognl.org)
-
-
Constructor Summary
Constructors Constructor Description ObjectPropertyAccessor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
getPossibleProperty(java.util.Map context, java.lang.Object target, java.lang.String name)
Returns OgnlRuntime.NotFound if the property does not exist.java.lang.Object
getProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname)
Extracts and returns the property of the given name from the given target object.java.lang.Class
getPropertyClass(OgnlContext context, java.lang.Object target, java.lang.Object index)
java.lang.String
getSourceAccessor(OgnlContext context, java.lang.Object target, java.lang.Object index)
Returns a java string representing the textual method that should be called to access a particular element.java.lang.String
getSourceSetter(OgnlContext context, java.lang.Object target, java.lang.Object index)
Returns a java string representing the textual method that should be called to set a particular element.boolean
hasGetProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname)
boolean
hasGetProperty(OgnlContext context, java.lang.Object target, java.lang.Object oname)
boolean
hasSetProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname)
boolean
hasSetProperty(OgnlContext context, java.lang.Object target, java.lang.Object oname)
java.lang.Object
setPossibleProperty(java.util.Map context, java.lang.Object target, java.lang.String name, java.lang.Object value)
Returns OgnlRuntime.NotFound if the property does not exist.void
setProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname, java.lang.Object value)
Sets the value of the property of the given name in the given target object.
-
-
-
Method Detail
-
getPossibleProperty
public java.lang.Object getPossibleProperty(java.util.Map context, java.lang.Object target, java.lang.String name) throws OgnlException
Returns OgnlRuntime.NotFound if the property does not exist.- Throws:
OgnlException
-
setPossibleProperty
public java.lang.Object setPossibleProperty(java.util.Map context, java.lang.Object target, java.lang.String name, java.lang.Object value) throws OgnlException
Returns OgnlRuntime.NotFound if the property does not exist.- Throws:
OgnlException
-
hasGetProperty
public boolean hasGetProperty(OgnlContext context, java.lang.Object target, java.lang.Object oname) throws OgnlException
- Throws:
OgnlException
-
hasGetProperty
public boolean hasGetProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname) throws OgnlException
- Throws:
OgnlException
-
hasSetProperty
public boolean hasSetProperty(OgnlContext context, java.lang.Object target, java.lang.Object oname) throws OgnlException
- Throws:
OgnlException
-
hasSetProperty
public boolean hasSetProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname) throws OgnlException
- Throws:
OgnlException
-
getProperty
public java.lang.Object getProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname) throws OgnlException
Description copied from interface:PropertyAccessor
Extracts and returns the property of the given name from the given target object.- Specified by:
getProperty
in interfacePropertyAccessor
- Parameters:
context
- The current execution context.target
- the object to get the property fromoname
- the name of the property to get.- Returns:
- the current value of the given property in the given object
- Throws:
OgnlException
- if there is an error locating the property in the given object
-
setProperty
public void setProperty(java.util.Map context, java.lang.Object target, java.lang.Object oname, java.lang.Object value) throws OgnlException
Description copied from interface:PropertyAccessor
Sets the value of the property of the given name in the given target object.- Specified by:
setProperty
in interfacePropertyAccessor
- Parameters:
context
- The current execution context.target
- the object to set the property inoname
- the name of the property to setvalue
- the new value for the property.- Throws:
OgnlException
- if there is an error setting the property in the given object
-
getPropertyClass
public java.lang.Class getPropertyClass(OgnlContext context, java.lang.Object target, java.lang.Object index)
-
getSourceAccessor
public java.lang.String getSourceAccessor(OgnlContext context, java.lang.Object target, java.lang.Object index)
Description copied from interface:PropertyAccessor
Returns a java string representing the textual method that should be called to access a particular element. (ie "get")- Specified by:
getSourceAccessor
in interfacePropertyAccessor
- Parameters:
context
- The current execution context.target
- The current object target on the expression tree being evaluated.index
- The index object that will be placed inside the string to access the value.- Returns:
- The source accessor method to call.
-
getSourceSetter
public java.lang.String getSourceSetter(OgnlContext context, java.lang.Object target, java.lang.Object index)
Description copied from interface:PropertyAccessor
Returns a java string representing the textual method that should be called to set a particular element. (ie "set")- Specified by:
getSourceSetter
in interfacePropertyAccessor
- Parameters:
context
- The current execution context.target
- The current object target on the expression tree being evaluated.index
- The index object that will be placed inside the string to set the value.- Returns:
- The source setter method to call.
-
-