super(context, accessor);
if (accessor.getAnnotation(XmlList.class) != null)
throw new JAXBException(L.l("@XmlList cannot be used with @XmlElements"));
XmlElements elements = accessor.getAnnotation(XmlElements.class);
if (elements.value().length == 0) {
// XXX special case : equivalent to unannotated
}
if (elements.value().length == 1) {
// XXX special case : equivalent to @XmlElement
}
_qnameMap = new LinkedHashMap<Class,QName>();
Map<QName,Property> qnameToPropertyMap =
new LinkedHashMap<QName,Property>();
Map<Class,Property> classToPropertyMap =
new LinkedHashMap<Class,Property>();
for (XmlElement element : elements.value()) {
if (XmlElement.DEFAULT.class.equals(element.type()))
throw new JAXBException(L.l("@XmlElement annotations in @XmlElements must specify a type"));
QName qname = qnameFromXmlElement(element);
Property property = _context.createProperty(element.type());