ELResolver
.public abstract class PropertyResolver
extends java.lang.Object
PropertyResolver represents a pluggable mechanism
for accessing a "property" of an underlying Java object instance.
Different PropertyResolver
implementations can support
property resolution on instances of different Java classes (such as
introspection-based access to properties of a JavaBeans component, or
get()
and put()
calls on a
java.util.Map
instance).
All implementations must respect the rules for JavaBeans component,
java.util.Map
, java.util.List
and array
instances defined for each method but are allowed to add custom
semantics for other types.
Constructor and Description |
---|
PropertyResolver()
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
abstract java.lang.Class |
getType(java.lang.Object base,
int index)
Deprecated.
Return the
java.lang.Class representing the type of
the specified index. |
abstract java.lang.Class |
getType(java.lang.Object base,
java.lang.Object property)
Deprecated.
Return the
java.lang.Class representing the type
of the specified property. |
abstract java.lang.Object |
getValue(java.lang.Object base,
int index)
Deprecated.
Return the value at the specified index of the specified
base object.
|
abstract java.lang.Object |
getValue(java.lang.Object base,
java.lang.Object property)
Deprecated.
Return the value of the specified property from the specified
base object.
|
abstract boolean |
isReadOnly(java.lang.Object base,
int index)
Deprecated.
Checks if the specified index is read-only.
|
abstract boolean |
isReadOnly(java.lang.Object base,
java.lang.Object property)
Deprecated.
Checks if the specified property is read-only.
|
abstract void |
setValue(java.lang.Object base,
int index,
java.lang.Object value)
Deprecated.
Set the value at the specified index of the specified
base object.
|
abstract void |
setValue(java.lang.Object base,
java.lang.Object property,
java.lang.Object value)
Deprecated.
Set the specified value of the specified property on
the specified base object.
|
public abstract java.lang.Object getValue(java.lang.Object base, java.lang.Object property) throws EvaluationException, PropertyNotFoundException
Return the value of the specified property from the specified base object.
For a bean base object, the property is coerced to a
String
and used as the property name.
For all other base object types (e.g., a Map), the property is used
without any coercing.
base
- The base object whose property value is to be returnedproperty
- The property to be returnednull
if base
or property
is null
, or if the property
doesn't exist and the base object is a Map
instanceEvaluationException
- if an exception is thrown while getting
the property value (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the specified property
for a bean base object does not exist or is not readablepublic abstract java.lang.Object getValue(java.lang.Object base, int index) throws EvaluationException, PropertyNotFoundException
Return the value at the specified index of the specified base object.
base
- The base object whose property value is to be returnedindex
- The index of the value to returnnull
if base
is null
, or if the index is out of bounds for the base
objectEvaluationException
- if an exception is thrown while getting
the property value (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the index is out of
bounds or if base
is null
public abstract void setValue(java.lang.Object base, java.lang.Object property, java.lang.Object value) throws EvaluationException, PropertyNotFoundException
Set the specified value of the specified property on the specified base object.
For a bean base object, the property is coerced to a
String
and used as the property name.
For all other base object types (e.g., a Map), the property is used
without any coercing.
base
- The base object whose property value is to be setproperty
- The property to be setvalue
- The value of the property to be setEvaluationException
- if an exception is thrown while setting
the property value (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the specified bean base
object property does not exist or is not writeable, or if
base
or name
is null
public abstract void setValue(java.lang.Object base, int index, java.lang.Object value) throws EvaluationException, PropertyNotFoundException
Set the value at the specified index of the specified base object.
base
- The base object whose property value is to be setindex
- The index of the value to setvalue
- The value to be setEvaluationException
- if an exception is thrown while setting
the property value (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the index is out of
bounds or if base
is null
public abstract boolean isReadOnly(java.lang.Object base, java.lang.Object property) throws EvaluationException, PropertyNotFoundException
Checks if the specified property is read-only.
For a bean base object, the property is coerced to a
String
and used as the property name.
For all other base object types (e.g., a Map), the property is used
without any coercing.
base
- The base object whose property is to be analyzedproperty
- The property to be analyzedtrue
if the specified property of the specified
base object is known to be immutable; otherwise false
EvaluationException
- if an exception is thrown while testing
the property (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the specified bean base
object property does not exist or if base
or
property
is null
public abstract boolean isReadOnly(java.lang.Object base, int index) throws EvaluationException, PropertyNotFoundException
Checks if the specified index is read-only.
base
- The base object whose property is to be analyzedindex
- The index of the value whose type is to be returnedtrue
if the value at the specified index of
the specified base object is known to be immutable; otherwise,
false
EvaluationException
- if an exception is thrown while testing
the property (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the index is out of
bounds or if base
is null
public abstract java.lang.Class getType(java.lang.Object base, java.lang.Object property) throws EvaluationException, PropertyNotFoundException
Return the java.lang.Class
representing the type
of the specified property. An instance of any Object of that
type my be set as the value of that property, as long as the
property is not read-only. The actual value of the property, if
non-null, is guaranteed to be an instance of this type, or an
instance of a subclass of this type. This method is also useful
for discovering the type of Objects that may be set as the value
of the property.
For a bean base object, the property is coerced to a
String
and used as the property name. For all other
base object types (e.g., a Map), the property is used without any
coercing.
base
- The base object whose property is to be analyzedproperty
- The property to be analyzedjava.lang.Class
representing the type of
the specified property of the specified base object, if it can be
determined; otherwise null
EvaluationException
- if an exception is thrown while testing
the property (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the specified bean base
object property does not exist or if base
or
property
is null
public abstract java.lang.Class getType(java.lang.Object base, int index) throws EvaluationException, PropertyNotFoundException
Return the java.lang.Class
representing the type of
the specified index.
base
- The base object whose property is to be analyzedindex
- The index of the value whose type is to be returnedjava.lang.Class
representing the type of
value at the specified index of the specified base object, if it
can be determined; otherwise null
EvaluationException
- if an exception is thrown while testing
the property (the thrown exception must be included as the
cause
property of this exception)PropertyNotFoundException
- if the index is out of
bounds or if base
is null