/* 281 */ this.xmlAccessorFactorySupport = xmlAccessorFactorySupport;
/* 282 */ this.allNillable = allNillable;
/* 283 */ this.classes = new Class[classes.length];
/* 284 */ System.arraycopy(classes, 0, this.classes, 0, classes.length);
/* */
/* 286 */ RuntimeTypeInfoSet typeSet = getTypeInfoSet();
/* */
/* 290 */ this.elements.put(null, new LinkedHashMap());
/* */
/* 293 */ for (RuntimeBuiltinLeafInfo leaf : RuntimeBuiltinLeafInfoImpl.builtinBeanInfos) {
/* 294 */ bi = new LeafBeanInfoImpl(this, leaf);
/* 295 */ this.beanInfoMap.put(leaf.getClazz(), bi);
/* 296 */ for (QName t : bi.getTypeNames())
/* 297 */ this.typeMap.put(t, bi);
/* */ }
/* */ LeafBeanInfoImpl bi;
/* 300 */ for (RuntimeEnumLeafInfo e : typeSet.enums().values()) {
/* 301 */ JaxBeanInfo bi = getOrCreate(e);
/* 302 */ for (QName qn : bi.getTypeNames())
/* 303 */ this.typeMap.put(qn, bi);
/* 304 */ if (e.isElement()) {
/* 305 */ this.rootMap.put(e.getElementName(), bi);
/* */ }
/* */ }
/* 308 */ for (RuntimeArrayInfo a : typeSet.arrays().values()) {
/* 309 */ ai = getOrCreate(a);
/* 310 */ for (QName qn : ai.getTypeNames())
/* 311 */ this.typeMap.put(qn, ai);
/* */ }
/* */ JaxBeanInfo ai;
/* 314 */ for (RuntimeClassInfo ci : typeSet.beans().values()) {
/* 315 */ bi = getOrCreate(ci);
/* */
/* 317 */ if (bi.isElement()) {
/* 318 */ this.rootMap.put(ci.getElementName(), bi);
/* */ }
/* 320 */ for (QName qn : bi.getTypeNames())
/* 321 */ this.typeMap.put(qn, bi);
/* */ }
/* */ ClassBeanInfoImpl bi;
/* 325 */ for (RuntimeElementInfo n : typeSet.getAllElements()) {
/* 326 */ ElementBeanInfoImpl bi = getOrCreate(n);
/* 327 */ if (n.getScope() == null) {
/* 328 */ this.rootMap.put(n.getElementName(), bi);
/* */ }
/* 330 */ RuntimeClassInfo scope = n.getScope();
/* 331 */ Class scopeClazz = scope == null ? null : (Class)scope.getClazz();
/* 332 */ Map m = (Map)this.elements.get(scopeClazz);
/* 333 */ if (m == null) {
/* 334 */ m = new LinkedHashMap();
/* 335 */ this.elements.put(scopeClazz, m);
/* */ }
/* 337 */ m.put(n.getElementName(), bi);
/* */ }
/* */
/* 341 */ this.beanInfoMap.put(JAXBElement.class, new ElementBeanInfoImpl(this));
/* */
/* 343 */ this.beanInfoMap.put(CompositeStructure.class, new CompositeStructureBeanInfo(this));
/* */
/* 345 */ getOrCreate(typeSet.getAnyTypeInfo());
/* */
/* 348 */ for (JaxBeanInfo bi : this.beanInfos.values()) {
/* 349 */ bi.link(this);
/* */ }
/* */
/* 352 */ for (Map.Entry e : RuntimeUtil.primitiveToBox.entrySet()) {
/* 353 */ this.beanInfoMap.put(e.getKey(), this.beanInfoMap.get(e.getValue()));
/* */ }
/* */
/* 356 */ ReflectionNavigator nav = typeSet.getNavigator();
/* */
/* 358 */ for (TypeReference tr : typeRefs) {
/* 359 */ XmlJavaTypeAdapter xjta = (XmlJavaTypeAdapter)tr.get(XmlJavaTypeAdapter.class);
/* 360 */ Adapter a = null;
/* 361 */ XmlList xl = (XmlList)tr.get(XmlList.class);