use of com.sun.tools.xjc.reader.dtd.bindinfo.BIAttribute in project jaxb-ri by eclipse-ee4j.
the class TDTDReader method createAttribute.
protected CPropertyInfo createAttribute(String elementName, String attributeName, String attributeType, String[] enums, short attributeUse, String defaultValue) throws SAXException {
boolean required = attributeUse == USE_REQUIRED;
// get the attribute-property declaration
BIElement edecl = bindInfo.element(elementName);
BIAttribute decl = null;
if (edecl != null)
decl = edecl.attribute(attributeName);
String propName;
if (decl == null)
propName = model.getNameConverter().toPropertyName(attributeName);
else
propName = decl.getPropertyName();
QName qname = new QName("", attributeName);
// if no declaration is specified, just wrap it by
// a FieldItem and let the normalizer handle its content.
TypeUse use;
if (decl != null && decl.getConversion() != null)
use = decl.getConversion().getTransducer();
else
use = builtinConversions.get(attributeType);
CPropertyInfo r = new CAttributePropertyInfo(propName, null, null, /*TODO*/
copyLocator(), qname, use, null, required);
if (defaultValue != null)
r.defaultValue = CDefaultValue.create(use, new XmlString(defaultValue));
return r;
}
Aggregations