com.sun.facelets.tag
Class TagAttribute

java.lang.Object
  extended by com.sun.facelets.tag.TagAttribute

public final class TagAttribute
extends Object

Representation of a Tag's attribute in a Facelet File

Version:
$Id: TagAttribute.java,v 1.7 2005/11/09 03:49:18 jhook Exp $
Author:
Jacob Hookom

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

Constructor Detail

TagAttribute

public TagAttribute(Location location,
                    String ns,
                    String localName,
                    String qName,
                    String value)
Method Detail

getBoolean

public 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 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 String getLocalName()
Local name of this attribute

Returns:
local name of this attribute

getLocation

public Location getLocation()
The location of this attribute in the FaceletContext

Returns:
the TagAttribute's location

getMethodExpression

public javax.el.MethodExpression getMethodExpression(FaceletContext ctx,
                                                     Class type,
                                                     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 String getNamespace()
The resolved Namespace for this attribute

Returns:
resolved Namespace

getObject

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

Returns:
the qualified name for this attribute

getValue

public String getValue()
Return the literal value of this attribute

Returns:
literal value

getValue

public 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 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 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 javax.el.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:
ValueExpression instance
See Also:
ExpressionFactory.createValueExpression(javax.el.ELContext, java.lang.String, java.lang.Class), ValueExpression

isLiteral

public boolean isLiteral()
If this TagAttribute is literal (not #{..} or ${..})

Returns:
true if this attribute is literal

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2005 All Rights Reserved.