use of com.sun.tools.xjc.reader.dtd.bindinfo.BIElement in project jaxb-ri by eclipse-ee4j.
the class TDTDReader method processConstructorDeclarations.
/**
* Creates constructor declarations as specified in the
* binding information.
*
* <p>
* Also checks that the binding file does not contain
* declarations for non-existent elements.
*/
private void processConstructorDeclarations() {
for (BIElement decl : bindInfo.elements()) {
Element e = elements.get(decl.name());
if (e == null) {
error(decl.getSourceLocation(), Messages.ERR_BINDINFO_NON_EXISTENT_ELEMENT_DECLARATION, decl.name());
// continue to process next declaration
continue;
}
if (!decl.isClass())
// only element-class declaration has constructor definitions
continue;
decl.declareConstructors(e.getClassInfo());
}
}
use of com.sun.tools.xjc.reader.dtd.bindinfo.BIElement 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