public class CompositeComponentAttributesELResolver
extends javax.el.ELResolver
This ELResolver
will handle the resolution of attrs
when processing a composite component instance.
Constructor and Description |
---|
CompositeComponentAttributesELResolver() |
Modifier and Type | Method and Description |
---|---|
Class<?> |
getCommonPropertyType(javax.el.ELContext context,
Object base)
attrs |
Map<String,Object> |
getEvalMapFor(UIComponent c,
FacesContext ctx)
Creates (if necessary) and caches an
ExpressionEvalMap
instance associated with the owning UIComponent |
Iterator<FeatureDescriptor> |
getFeatureDescriptors(javax.el.ELContext context,
Object base)
This
ELResolver currently returns no feature descriptors
as we have no way to effectively iterate over the UIComponent
attributes Map. |
Class<?> |
getType(javax.el.ELContext context,
Object base,
Object property)
Readonly, so return
null . |
Object |
getValue(javax.el.ELContext context,
Object base,
Object property)
If
base is a composite component and property
is attrs , return a new ExpressionEvalMap
which wraps the composite component's attributes map. |
boolean |
isReadOnly(javax.el.ELContext context,
Object base,
Object property)
Readonly, so return
true |
void |
setValue(javax.el.ELContext context,
Object base,
Object property,
Object value)
This is a no-op.
|
public CompositeComponentAttributesELResolver()
public Object getValue(javax.el.ELContext context, Object base, Object property)
If base
is a composite component and property
is attrs
, return a new ExpressionEvalMap
which wraps the composite component's attributes map.
The ExpressionEvalMap
simple evaluates any ValueExpression
instances stored in the composite component's attribute map and returns
the result.
If base
is a composite component and property
is parent
attempt to resolve the composite componet parent
of the current composite component by calling
UIComponent.getCompositeComponentParent(javax.faces.component.UIComponent)
)
and returning that value.
getValue
in class javax.el.ELResolver
ELResolver.getValue(javax.el.ELContext, Object, Object)
,
CompositeComponentAttributesELResolver.ExpressionEvalMap
public Class<?> getType(javax.el.ELContext context, Object base, Object property)
Readonly, so return null
.
getType
in class javax.el.ELResolver
ELResolver.getType(javax.el.ELContext, Object, Object)
public void setValue(javax.el.ELContext context, Object base, Object property, Object value)
This is a no-op.
setValue
in class javax.el.ELResolver
ELResolver.setValue(javax.el.ELContext, Object, Object, Object)
public boolean isReadOnly(javax.el.ELContext context, Object base, Object property)
Readonly, so return true
isReadOnly
in class javax.el.ELResolver
ELResolver.isReadOnly(javax.el.ELContext, Object, Object)
public Iterator<FeatureDescriptor> getFeatureDescriptors(javax.el.ELContext context, Object base)
This ELResolver
currently returns no feature descriptors
as we have no way to effectively iterate over the UIComponent
attributes Map.
getFeatureDescriptors
in class javax.el.ELResolver
ELResolver.getFeatureDescriptors(javax.el.ELContext, Object)
public Class<?> getCommonPropertyType(javax.el.ELContext context, Object base)
attrs
is considered a
String
property.
getCommonPropertyType
in class javax.el.ELResolver
ELResolver.getCommonPropertyType(javax.el.ELContext, Object)
public Map<String,Object> getEvalMapFor(UIComponent c, FacesContext ctx)
Creates (if necessary) and caches an ExpressionEvalMap
instance associated with the owning UIComponent
c
- the owning UIComponent
ctx
- the FacesContext
for the current requestExpressionEvalMap
for the specified componentComments to: faces-dev@eclipse.org.
Copyright © 2019 Eclipse Foundation. All rights reserved.
Use is subject to license terms.