List of usage examples for javax.servlet.jsp.tagext TagAttributeInfo TagAttributeInfo
public TagAttributeInfo(String name, boolean required, String type, boolean reqTime, boolean fragment)
From source file:org.apache.jasper.compiler.TagLibraryInfoImpl.java
TagAttributeInfo createAttribute(TreeNode elem) {
String name = null;/* w w w. j ava 2 s . c om*/
String type = null;
boolean required = false, rtexprvalue = false, reqTime = false, isFragment = false;
Iterator list = elem.findChildren();
while (list.hasNext()) {
TreeNode element = (TreeNode) list.next();
String tname = element.getName();
if ("name".equals(tname)) {
name = element.getBody();
} else if ("required".equals(tname)) {
String s = element.getBody();
if (s != null)
required = JspUtil.booleanValue(s);
} else if ("rtexprvalue".equals(tname)) {
String s = element.getBody();
if (s != null)
rtexprvalue = JspUtil.booleanValue(s);
} else if ("type".equals(tname)) {
type = element.getBody();
} else if ("fragment".equals(tname)) {
String s = element.getBody();
if (s != null)
isFragment = JspUtil.booleanValue(s);
} else if ("description".equals(tname) || // Ignored elements
false) {
;
} else {
if (log.isWarnEnabled()) {
log.warn(Localizer.getMessage("jsp.warning.unknown.element.in.attribute", tname));
}
}
}
if (!rtexprvalue) {
// According to JSP spec, for static values (those determined at
// translation time) the type is fixed at java.lang.String.
type = "java.lang.String";
}
return new TagAttributeInfo(name, required, type, rtexprvalue, isFragment);
}