Class CompositeComponentAttributesELResolver
public class CompositeComponentAttributesELResolver
extends jakarta.el.ELResolver
This ELResolver will handle the resolution of attrs when processing a composite component
instance.
-
Field Summary
-
Constructor Summary
Constructors Constructor Description CompositeComponentAttributesELResolver() -
Method Summary
Modifier and Type Method Description Class<?>getCommonPropertyType(jakarta.el.ELContext context, Object base)attrsis considered aStringproperty.Map<String,Object>getEvalMapFor(UIComponent c, FacesContext ctx)Creates (if necessary) and caches anExpressionEvalMapinstance associated with the owningUIComponentIterator<FeatureDescriptor>getFeatureDescriptors(jakarta.el.ELContext context, Object base)ThisELResolvercurrently returns no feature descriptors as we have no way to effectively iterate over the UIComponent attributes Map.Class<?>getType(jakarta.el.ELContext context, Object base, Object property)Readonly, so returnnull.ObjectgetValue(jakarta.el.ELContext context, Object base, Object property)Ifbaseis a composite component andpropertyisattrs, return a newExpressionEvalMapwhich wraps the composite component's attributes map.booleanisReadOnly(jakarta.el.ELContext context, Object base, Object property)Readonly, so returntruevoidsetValue(jakarta.el.ELContext context, Object base, Object property, Object value)This is a no-op.
-
Constructor Details
-
CompositeComponentAttributesELResolver
public CompositeComponentAttributesELResolver()
-
-
Method Details
-
getValue
If
baseis a composite component andpropertyisattrs, return a newExpressionEvalMapwhich wraps the composite component's attributes map.The
ExpressionEvalMapsimple evaluates anyValueExpressioninstances stored in the composite component's attribute map and returns the result.If
baseis a composite component andpropertyisparentattempt to resolve the composite componet parent of the current composite component by callingUIComponent.getCompositeComponentParent(jakarta.faces.component.UIComponent)) and returning that value.- Specified by:
getValuein classjakarta.el.ELResolver- See Also:
ELResolver.getValue(jakarta.el.ELContext, Object, Object),CompositeComponentAttributesELResolver.ExpressionEvalMap
-
getType
Readonly, so return
null.- Specified by:
getTypein classjakarta.el.ELResolver- See Also:
ELResolver.getType(jakarta.el.ELContext, Object, Object)
-
setValue
This is a no-op.
- Specified by:
setValuein classjakarta.el.ELResolver- See Also:
ELResolver.setValue(jakarta.el.ELContext, Object, Object, Object)
-
isReadOnly
Readonly, so return
true- Specified by:
isReadOnlyin classjakarta.el.ELResolver- See Also:
ELResolver.isReadOnly(jakarta.el.ELContext, Object, Object)
-
getFeatureDescriptors
public Iterator<FeatureDescriptor> getFeatureDescriptors(jakarta.el.ELContext context, Object base)This
ELResolvercurrently returns no feature descriptors as we have no way to effectively iterate over the UIComponent attributes Map.- Specified by:
getFeatureDescriptorsin classjakarta.el.ELResolver- See Also:
ELResolver.getFeatureDescriptors(jakarta.el.ELContext, Object)
-
getCommonPropertyType
attrsis considered aStringproperty.- Specified by:
getCommonPropertyTypein classjakarta.el.ELResolver- See Also:
ELResolver.getCommonPropertyType(jakarta.el.ELContext, Object)
-
getEvalMapFor
Creates (if necessary) and caches an
ExpressionEvalMapinstance associated with the owningUIComponent- Parameters:
c- the owningUIComponentctx- theFacesContextfor the current request- Returns:
- an
ExpressionEvalMapfor the specified component
-