Package de.odysseus.el.util
Class SimpleResolver
- java.lang.Object
-
- javax.el.ELResolver
-
- de.odysseus.el.util.SimpleResolver
-
public class SimpleResolver extends javax.el.ELResolver
Simple resolver implementation. This resolver handles root properties (top-level identifiers). Resolving "real" properties (base != null
) is delegated to a resolver specified at construction time.
-
-
Field Summary
Fields Modifier and Type Field Description private static javax.el.ELResolver
DEFAULT_RESOLVER_READ_ONLY
private static javax.el.ELResolver
DEFAULT_RESOLVER_READ_WRITE
private javax.el.CompositeELResolver
delegate
private RootPropertyResolver
root
-
Constructor Summary
Constructors Constructor Description SimpleResolver()
Create a read/write resolver capable of resolving top-level identifiers, array values, list values, map values, resource values and bean properties.SimpleResolver(boolean readOnly)
Create a resolver capable of resolving top-level identifiers, array values, list values, map values, resource values and bean properties.SimpleResolver(javax.el.ELResolver resolver)
Create a read/write resolver capable of resolving top-level identifiers.SimpleResolver(javax.el.ELResolver resolver, boolean readOnly)
Create a resolver capable of resolving top-level identifiers.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class<?>
getCommonPropertyType(javax.el.ELContext context, java.lang.Object base)
java.util.Iterator<java.beans.FeatureDescriptor>
getFeatureDescriptors(javax.el.ELContext context, java.lang.Object base)
RootPropertyResolver
getRootPropertyResolver()
Answer our root resolver which provides an API to access top-level properties.java.lang.Class<?>
getType(javax.el.ELContext context, java.lang.Object base, java.lang.Object property)
java.lang.Object
getValue(javax.el.ELContext context, java.lang.Object base, java.lang.Object property)
java.lang.Object
invoke(javax.el.ELContext context, java.lang.Object base, java.lang.Object method, java.lang.Class<?>[] paramTypes, java.lang.Object[] params)
boolean
isReadOnly(javax.el.ELContext context, java.lang.Object base, java.lang.Object property)
void
setValue(javax.el.ELContext context, java.lang.Object base, java.lang.Object property, java.lang.Object value)
-
-
-
Field Detail
-
DEFAULT_RESOLVER_READ_ONLY
private static final javax.el.ELResolver DEFAULT_RESOLVER_READ_ONLY
-
DEFAULT_RESOLVER_READ_WRITE
private static final javax.el.ELResolver DEFAULT_RESOLVER_READ_WRITE
-
root
private final RootPropertyResolver root
-
delegate
private final javax.el.CompositeELResolver delegate
-
-
Constructor Detail
-
SimpleResolver
public SimpleResolver(javax.el.ELResolver resolver, boolean readOnly)
Create a resolver capable of resolving top-level identifiers. Everything else is passed to the supplied delegate.
-
SimpleResolver
public SimpleResolver(javax.el.ELResolver resolver)
Create a read/write resolver capable of resolving top-level identifiers. Everything else is passed to the supplied delegate.
-
SimpleResolver
public SimpleResolver(boolean readOnly)
Create a resolver capable of resolving top-level identifiers, array values, list values, map values, resource values and bean properties.
-
SimpleResolver
public SimpleResolver()
Create a read/write resolver capable of resolving top-level identifiers, array values, list values, map values, resource values and bean properties.
-
-
Method Detail
-
getRootPropertyResolver
public RootPropertyResolver getRootPropertyResolver()
Answer our root resolver which provides an API to access top-level properties.- Returns:
- root property resolver
-
getCommonPropertyType
public java.lang.Class<?> getCommonPropertyType(javax.el.ELContext context, java.lang.Object base)
- Specified by:
getCommonPropertyType
in classjavax.el.ELResolver
-
getFeatureDescriptors
public java.util.Iterator<java.beans.FeatureDescriptor> getFeatureDescriptors(javax.el.ELContext context, java.lang.Object base)
- Specified by:
getFeatureDescriptors
in classjavax.el.ELResolver
-
getType
public java.lang.Class<?> getType(javax.el.ELContext context, java.lang.Object base, java.lang.Object property)
- Specified by:
getType
in classjavax.el.ELResolver
-
getValue
public java.lang.Object getValue(javax.el.ELContext context, java.lang.Object base, java.lang.Object property)
- Specified by:
getValue
in classjavax.el.ELResolver
-
isReadOnly
public boolean isReadOnly(javax.el.ELContext context, java.lang.Object base, java.lang.Object property)
- Specified by:
isReadOnly
in classjavax.el.ELResolver
-
setValue
public void setValue(javax.el.ELContext context, java.lang.Object base, java.lang.Object property, java.lang.Object value)
- Specified by:
setValue
in classjavax.el.ELResolver
-
invoke
public java.lang.Object invoke(javax.el.ELContext context, java.lang.Object base, java.lang.Object method, java.lang.Class<?>[] paramTypes, java.lang.Object[] params)
- Overrides:
invoke
in classjavax.el.ELResolver
-
-