javax.faces.view.facelets
Class TagAttribute

java.lang.Object
  extended by javax.faces.view.facelets.TagAttribute

public abstract class TagAttribute
extends java.lang.Object

Representation of an XML attribute name=value pair on an XML element in a Facelet file.

Since:
2.0

Constructor Summary
TagAttribute()
           
 
Method Summary
abstract  boolean getBoolean(FaceletContext ctx)
          If literal, return Boolean.getBoolean(java.lang.String) passing our value, otherwise call getObject(FaceletContext, Class).
abstract  int getInt(FaceletContext ctx)
          If literal, call Integer.parseInt(String), otherwise call getObject(FaceletContext, Class).
abstract  java.lang.String getLocalName()
          Local name of this attribute
abstract  Location getLocation()
          The location of this attribute in the FaceletContext
abstract  MethodExpression getMethodExpression(FaceletContext ctx, java.lang.Class type, java.lang.Class[] paramTypes)
          Create a MethodExpression, using this attribute's value as the expression String.
abstract  java.lang.String getNamespace()
          The resolved Namespace for this attribute
abstract  java.lang.Object getObject(FaceletContext ctx)
          Delegates to getObject with Object.class as a param
abstract  java.lang.Object getObject(FaceletContext ctx, java.lang.Class type)
          If literal, simply coerce our String literal value using an ExpressionFactory, otherwise create a ValueExpression and evaluate it.
abstract  java.lang.String getQName()
          The qualified name for this attribute
abstract  java.lang.String getValue()
          Return the literal value of this attribute
abstract  java.lang.String getValue(FaceletContext ctx)
          If literal, then return our value, otherwise delegate to getObject, passing String.class.
abstract  ValueExpression getValueExpression(FaceletContext ctx, java.lang.Class type)
          Create a ValueExpression, using this attribute's literal value and the passed expected type.
abstract  boolean isLiteral()
          If this TagAttribute is literal (not #{..} or ${..})
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TagAttribute

public TagAttribute()
Method Detail

getBoolean

public abstract boolean getBoolean(FaceletContext ctx)
If literal, return Boolean.getBoolean(java.lang.String) passing our value, otherwise call getObject(FaceletContext, Class).

Parameters:
ctx - FaceletContext to use
Returns:
boolean value
See Also:
Boolean.getBoolean(java.lang.String), getObject(FaceletContext, Class)

getInt

public abstract int getInt(FaceletContext ctx)
If literal, call Integer.parseInt(String), otherwise call getObject(FaceletContext, Class).

Parameters:
ctx - FaceletContext to use
Returns:
int value
See Also:
Integer.parseInt(java.lang.String), getObject(FaceletContext, Class)

getLocalName

public abstract java.lang.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,
                                                     java.lang.Class type,
                                                     java.lang.Class[] paramTypes)
Create a MethodExpression, using this attribute's value as the expression String.

Parameters:
ctx - FaceletContext to use
type - expected return type
paramTypes - parameter type
Returns:
a MethodExpression instance
See Also:
ExpressionFactory#createMethodExpression(javax.el.ELContext, java.lang.String, java.lang.Class, java.lang.Class[]), MethodExpression

getNamespace

public abstract java.lang.String getNamespace()
The resolved Namespace for this attribute

Returns:
resolved Namespace

getObject

public abstract java.lang.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 java.lang.String getQName()
The qualified name for this attribute

Returns:
the qualified name for this attribute

getValue

public abstract java.lang.String getValue()
Return the literal value of this attribute

Returns:
literal value

getValue

public abstract java.lang.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 java.lang.Object getObject(FaceletContext ctx,
                                           java.lang.Class type)
If literal, simply coerce our String literal value using an ExpressionFactory, otherwise create a ValueExpression and evaluate it.

Parameters:
ctx - FaceletContext to use
type - expected return type
Returns:
Object value of this attribute
See Also:
ExpressionFactory#coerceToType(java.lang.Object, java.lang.Class), ExpressionFactory#createValueExpression(javax.el.ELContext, java.lang.String, java.lang.Class), ValueExpression

getValueExpression

public abstract ValueExpression getValueExpression(FaceletContext ctx,
                                                   java.lang.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:
ValueExpression instance
See Also:
ExpressionFactory#createValueExpression(javax.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


Submit a bug or feature

Copyright © 2009-2011, Oracle Corporation and/or its affiliates. All Rights Reserved. Use is subject to license terms.

Generated on 10-February-2011 12:41

Scripting on this page tracks web page traffic, but does not change the content in any way.