TagAttributeInfopublic class TagAttributeInfo extends Object Information on the attributes of a Tag, available at translation time.
This class is instantiated from the Tag Library Descriptor file (TLD).
Only the information needed to generate code is included here. Other information
like SCHEMA for validation belongs elsewhere.
Note from the Expert Group:
This should have been designed as an interface. Every time we change the TLD,
we need to add a new constructor to this class (not good).
This class should only be instantiated by container implementations
(not by JSP developers). |
Fields Summary |
---|
public static final String | ID"id" is wired in to be ID. There is no real benefit in having it be something else
IDREFs are not handled any differently. | private String | name | private String | type | private boolean | reqTime | private boolean | required | private boolean | fragment | private boolean | deferredValue | private boolean | deferredMethod | private String | expectedTypeName | private String | methodSignature | private String | description |
Constructors Summary |
---|
public TagAttributeInfo(String name, boolean required, String type, boolean reqTime)Constructor for TagAttributeInfo.
This class is to be instantiated only from the
TagLibrary code under request from some JSP code that is parsing a
TLD (Tag Library Descriptor).
this.name = name;
this.required = required;
this.type = type;
this.reqTime = reqTime;
| public TagAttributeInfo(String name, boolean required, String type, boolean reqTime, boolean fragment)JSP 2.0 Constructor for TagAttributeInfo.
This class is to be instantiated only from the
TagLibrary code under request from some JSP code that is parsing a
TLD (Tag Library Descriptor).
this( name, required, type, reqTime );
this.fragment = fragment;
| public TagAttributeInfo(String name, boolean required, String type, boolean reqTime, boolean fragment, String description, boolean deferredValue, boolean deferredMethod, String expectedTypeName, String methodSignature)JSP 2.1 Constructor for TagAttributeInfo.
This class is to be instantiated only from the
TagLibrary code under request from some JSP code that is parsing a
TLD (Tag Library Descriptor).
this( name, required, type, reqTime, fragment );
this.description = description;
this.deferredValue = deferredValue;
this.deferredMethod = deferredMethod;
this.expectedTypeName = expectedTypeName;
this.methodSignature = methodSignature;
|
Methods Summary |
---|
public boolean | canBeRequestTime()Whether this attribute has been specified in the TLD
as rtexprvalue. If true , this means the attribute
can hold a request-time value.
return reqTime;
| public java.lang.String | getDescription()Gets the description string of this tag attribute.
return description;
| public java.lang.String | getExpectedTypeName()Returns the name of the expected type (as a String) of this
deferred value attribute.
This method returns null if
isDeferredValue() returns false .
return expectedTypeName;
| public static javax.servlet.jsp.tagext.TagAttributeInfo | getIdAttribute(javax.servlet.jsp.tagext.TagAttributeInfo[] a)Convenience static method that goes through an array of TagAttributeInfo
objects and looks for "id".
for (int i=0; i<a.length; i++) {
if (a[i].getName().equals(ID)) {
return a[i];
}
}
return null; // no such attribute
| public java.lang.String | getMethodSignature()Returns the expected method signature of this deferred method attribute.
This method returns null if
isDeferredMethod() returns false .
return methodSignature;
| public java.lang.String | getName()The name of this attribute.
return name;
| public java.lang.String | getTypeName()The type (as a String) of this attribute.
This method must return "javax.el.ValueExpression"
if isDeferredValue() returns true and
canBeRequestTime() returns false . It
must return "javax.el.MethodExpression" if
isDeferredMethod() returns true .
It must return "java.lang.Object" if
isDeferredValue() returns true and
canBeRequestTime() returns true .
return type;
| public boolean | isDeferredMethod()Returns true if this attribute is to be passed a
MethodExpression so that expression evaluation
can be deferred.
If this method returns true , then
getTypeName() must return
"javax.el.MethodExpression" .
The getMethodSignature() method can be used to retrieve
the expected method signature this method expression will be
constructed with.
return deferredMethod;
| public boolean | isDeferredValue()Returns true if this attribute is to be passed a
ValueExpression so that expression evaluation
can be deferred.
If this method returns true , then
getTypeName() must return
"javax.el.ValueExpression" .
The getExpectedType() method can be used to retrieve
the expected type this value expression will be constructed with.
return deferredValue;
| public boolean | isFragment()Whether this attribute is of type JspFragment.
return fragment;
| public boolean | isRequired()Whether this attribute is required.
return required;
| public java.lang.String | toString()Returns a String representation of this TagAttributeInfo, suitable
for debugging purposes.
StringBuffer b = new StringBuffer();
b.append("name = "+name+" ");
b.append("type = "+type+" ");
b.append("reqTime = "+reqTime+" ");
b.append("required = "+required+" ");
b.append("fragment = "+fragment+" ");
b.append("deferredValue = "+deferredValue+" ");
b.append("deferredMethod = "+deferredMethod+" ");
b.append("expectedTypeName = "+expectedTypeName+" ");
b.append("methodSignature = "+methodSignature+" ");
return b.toString();
|
|