Package jakarta.faces.view.facelets
Class TagAttribute
- java.lang.Object
-
- jakarta.faces.view.facelets.TagAttribute
-
public abstract class TagAttribute extends Object
Representation of an XML attribute name=value pair on an XML element in a Facelet file.
- Since:
- 2.0
-
-
Constructor Summary
Constructors Constructor Description TagAttribute()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract booleangetBoolean(FaceletContext ctx)If literal,returnBoolean.valueOf(java.lang.String)passing our value, otherwise callgetObject(FaceletContext, Class).abstract intgetInt(FaceletContext ctx)If literal, callInteger.parseInt(String), otherwise callgetObject(FaceletContext, Class).abstract StringgetLocalName()Local name of this attributeabstract LocationgetLocation()The location of this attribute in the FaceletContextabstract MethodExpressiongetMethodExpression(FaceletContext ctx, Class type, Class[] paramTypes)Create a MethodExpression, using this attribute's value as the expression String.abstract StringgetNamespace()The resolved Namespace for this attributeabstract ObjectgetObject(FaceletContext ctx)Delegates to getObject with Object.class as a paramabstract ObjectgetObject(FaceletContext ctx, Class type)If literal, simply coerce our String literal value using an ExpressionFactory, otherwise create a ValueExpression and evaluate it.abstract StringgetQName()The qualified name for this attributeTaggetTag()A reference to the Tag for which this class represents the attributes.abstract StringgetValue()Return the literal value of this attributeabstract StringgetValue(FaceletContext ctx)If literal, then return our value, otherwise delegate to getObject, passing String.class.abstract ValueExpressiongetValueExpression(FaceletContext ctx, Class type)Create a ValueExpression, using this attribute's literal value and the passed expected type.abstract booleanisLiteral()If this TagAttribute is literal (not #{..} or ${..})voidsetTag(Tag tag)Set a reference to the Tag for which this class represents the attributes.
-
-
-
Method Detail
-
getBoolean
public abstract boolean getBoolean(FaceletContext ctx)
If literal,return
Boolean.valueOf(java.lang.String)passing our value, otherwise callgetObject(FaceletContext, Class).- Parameters:
ctx- FaceletContext to use- Returns:
- boolean value
- See Also:
Boolean.valueOf(java.lang.String),getObject(FaceletContext, Class)
-
getInt
public abstract int getInt(FaceletContext ctx)
If literal, callInteger.parseInt(String), otherwise callgetObject(FaceletContext, Class).- Parameters:
ctx- FaceletContext to use- Returns:
- int value
- See Also:
Integer.parseInt(java.lang.String),getObject(FaceletContext, Class)
-
getLocalName
public abstract String getLocalName()
Local name of this attribute- Returns:
- local name of this attribute
-
getLocation
public abstract Location getLocation()
The location of this attribute in the FaceletContext- Returns:
- the TagAttribute's location
-
getMethodExpression
public abstract MethodExpression getMethodExpression(FaceletContext ctx, Class type, Class[] paramTypes)
Create a MethodExpression, using this attribute's value as the expression String.- Parameters:
ctx- FaceletContext to usetype- expected return typeparamTypes- parameter type- Returns:
- a MethodExpression instance
- See Also:
ExpressionFactory.createMethodExpression(jakarta.el.ELContext, java.lang.String, java.lang.Class, java.lang.Class[]),MethodExpression
-
getNamespace
public abstract String getNamespace()
The resolved Namespace for this attribute- Returns:
- resolved Namespace
-
getObject
public abstract Object getObject(FaceletContext ctx)
Delegates to getObject with Object.class as a param- Parameters:
ctx- FaceletContext to use- Returns:
- Object representation of this attribute's value
- See Also:
getObject(FaceletContext, Class)
-
getQName
public abstract String getQName()
The qualified name for this attribute- Returns:
- the qualified name for this attribute
-
getValue
public abstract String getValue()
Return the literal value of this attribute- Returns:
- literal value
-
getValue
public abstract String getValue(FaceletContext ctx)
If literal, then return our value, otherwise delegate to getObject, passing String.class.- Parameters:
ctx- FaceletContext to use- Returns:
- String value of this attribute
- See Also:
getObject(FaceletContext, Class)
-
getObject
public abstract Object getObject(FaceletContext ctx, Class type)
If literal, simply coerce our String literal value using an ExpressionFactory, otherwise create a ValueExpression and evaluate it.- Parameters:
ctx- FaceletContext to usetype- expected return type- Returns:
- Object value of this attribute
- See Also:
ExpressionFactory.coerceToType(java.lang.Object, java.lang.Class),ExpressionFactory.createValueExpression(jakarta.el.ELContext, java.lang.String, java.lang.Class),ValueExpression
-
getValueExpression
public abstract ValueExpression getValueExpression(FaceletContext ctx, Class type)
Create a ValueExpression, using this attribute's literal value and the passed expected type.- Parameters:
ctx- FaceletContext to use.type- expected return type.- Returns:
- the
ValueExpression. - See Also:
ExpressionFactory.createValueExpression(jakarta.el.ELContext, java.lang.String, java.lang.Class),ValueExpression
-
isLiteral
public abstract boolean isLiteral()
If this TagAttribute is literal (not #{..} or ${..})- Returns:
- true if this attribute is literal.
-
getTag
public Tag getTag()
A reference to the Tag for which this class represents the attributes. For compatibility with previous implementations, an implementation is provided that returns
null.- Returns:
- the
Tagfor which this class represents the attributes. - Since:
- 2.2
-
setTag
public void setTag(Tag tag)
Set a reference to the Tag for which this class represents the attributes. The VDL runtime must ensure that this method is called before any
FaceletHandlers for this element are instantiated. For compatibility with previous implementations, a no-op implementation is provided.- Parameters:
tag- the tag we represent.- Since:
- 2.2
-
-