public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { keyLoader = keyBeanInfo.getLoader(chain.context,true); valueLoader = valueBeanInfo.getLoader(chain.context,true); handlers.put(tagName,new ChildLoader(itemsLoader,null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { Loader l = new LeafPropertyLoader(xacc); l = new DefaultValueLoaderDecorator(l, defaultValue); handlers.put(tagName, new ChildLoader(l,null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chainElem, QNameMap<ChildLoader> handlers) { handlers.put(StructureLoaderBuilder.TEXT_HANDLER, new ChildLoader(new ValuePropertyLoader(xacc),null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { for (QNameMap.Entry<JaxBeanInfo> n : expectedElements.entrySet()) handlers.put(n.nsUri,n.localName, new ChildLoader(n.getValue().getLoader(chain.context,true),acc)); if(domHandler!=null) handlers.put(CATCH_ALL,new ChildLoader(new WildcardLoader(domHandler,wcMode),acc)); }
public void createBodyUnmarshaller(UnmarshallerChain chain, QNameMap<ChildLoader> loaders) { final int offset = chain.allocateOffset(); Receiver recv = new ReceiverImpl(offset); for( QNameMap.Entry<JaxBeanInfo> n : expectedElements.entrySet() ) { final JaxBeanInfo beanInfo = n.getValue(); loaders.put(n.nsUri,n.localName,new ChildLoader(beanInfo.getLoader(chain.context,true),recv)); } if(isMixed) { // handler for processing mixed contents. loaders.put(TEXT_HANDLER, new ChildLoader(new MixedTextLoader(recv),null)); } if(domHandler!=null) { loaders.put(CATCH_ALL, new ChildLoader(new WildcardLoader(domHandler,wcMode),recv)); } }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { Loader l = new LeafPropertyLoader(xacc); if (defaultValue != null) l = new DefaultValueLoaderDecorator(l, defaultValue); if (nillable || chain.context.allNillable) l = new XsiNilLoader.Single(l, acc); // LeafPropertyXsiLoader doesn't work well with nillable elements if (improvedXsiTypeHandling) l = new LeafPropertyXsiLoader(l, xacc, acc); handlers.put(tagName, new ChildLoader(l, null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { JAXBContextImpl context = chain.context; for (TypeRef<Type,Class> e : prop.getTypes()) { JaxBeanInfo bi = context.getOrCreate((RuntimeTypeInfo) e.getTarget()); // if the expected Java type is already final, type substitution won't really work anyway. // this also traps cases like trying to substitute xsd:long element with xsi:type='xsd:int' Loader l = bi.getLoader(context,!Modifier.isFinal(bi.jaxbType.getModifiers())); if(e.getDefaultValue()!=null) l = new DefaultValueLoaderDecorator(l,e.getDefaultValue()); if(nillable || chain.context.allNillable) l = new XsiNilLoader.Single(l,acc); handlers.put( e.getTagName(), new ChildLoader(l,acc)); } }
public final void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> loaders) { if(wrapperTagName!=null) { UnmarshallerChain c = new UnmarshallerChain(chain.context); QNameMap<ChildLoader> m = new QNameMap<ChildLoader>(); createBodyUnmarshaller(c,m); Loader loader = new ItemsLoader(acc, lister, m); if(isWrapperNillable || chain.context.allNillable) loader = new XsiNilLoader(loader); loaders.put(wrapperTagName,new ChildLoader(loader,null)); } else { createBodyUnmarshaller(chain,loaders); } }
public void createBodyUnmarshaller(UnmarshallerChain chain, QNameMap<ChildLoader> loaders) { // all items go to the same lister, // so they should share the same offset. int offset = chain.allocateOffset(); Receiver recv = new ReceiverImpl(offset); for (RuntimeTypeRef typeRef : prop.getTypes()) { Name tagName = chain.context.nameBuilder.createElementName(typeRef.getTagName()); Loader item = createItemUnmarshaller(chain,typeRef); if(typeRef.isNillable() || chain.context.allNillable) item = new XsiNilLoader.Array(item); if(typeRef.getDefaultValue()!=null) item = new DefaultValueLoaderDecorator(item,typeRef.getDefaultValue()); loaders.put(tagName,new ChildLoader(item,recv)); } }
public void buildChildElementUnmarshallers(UnmarshallerChain chainElem, QNameMap<ChildLoader> handlers) { handlers.put(StructureLoaderBuilder.TEXT_HANDLER, new ChildLoader(new ValuePropertyLoader(xacc),null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { keyLoader = keyBeanInfo.getLoader(chain.context,true); valueLoader = valueBeanInfo.getLoader(chain.context,true); handlers.put(tagName,new ChildLoader(itemsLoader,null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { Loader l = new LeafPropertyLoader(xacc); l = new DefaultValueLoaderDecorator(l, defaultValue); handlers.put(tagName, new ChildLoader(l,null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { for (QNameMap.Entry<JaxBeanInfo> n : expectedElements.entrySet()) handlers.put(n.nsUri,n.localName, new ChildLoader(n.getValue().getLoader(chain.context,true),acc)); if(domHandler!=null) handlers.put(CATCH_ALL,new ChildLoader(new WildcardLoader(domHandler,wcMode),acc)); }
public void createBodyUnmarshaller(UnmarshallerChain chain, QNameMap<ChildLoader> loaders) { final int offset = chain.allocateOffset(); Receiver recv = new ReceiverImpl(offset); for( QNameMap.Entry<JaxBeanInfo> n : expectedElements.entrySet() ) { final JaxBeanInfo beanInfo = n.getValue(); loaders.put(n.nsUri,n.localName,new ChildLoader(beanInfo.getLoader(chain.context,true),recv)); } if(isMixed) { // handler for processing mixed contents. loaders.put(TEXT_HANDLER, new ChildLoader(new MixedTextLoader(recv),null)); } if(domHandler!=null) { loaders.put(CATCH_ALL, new ChildLoader(new WildcardLoader(domHandler,wcMode),recv)); } }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { Loader l = new LeafPropertyLoader(xacc); if (defaultValue != null) l = new DefaultValueLoaderDecorator(l, defaultValue); if (nillable || chain.context.allNillable) l = new XsiNilLoader.Single(l, acc); // LeafPropertyXsiLoader doesn't work well with nillable elements if (improvedXsiTypeHandling) l = new LeafPropertyXsiLoader(l, xacc, acc); handlers.put(tagName, new ChildLoader(l, null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { JAXBContextImpl context = chain.context; for (TypeRef<Type,Class> e : prop.getTypes()) { JaxBeanInfo bi = context.getOrCreate((RuntimeTypeInfo) e.getTarget()); // if the expected Java type is already final, type substitution won't really work anyway. // this also traps cases like trying to substitute xsd:long element with xsi:type='xsd:int' Loader l = bi.getLoader(context,!Modifier.isFinal(bi.jaxbType.getModifiers())); if(e.getDefaultValue()!=null) l = new DefaultValueLoaderDecorator(l,e.getDefaultValue()); if(nillable || chain.context.allNillable) l = new XsiNilLoader.Single(l,acc); handlers.put( e.getTagName(), new ChildLoader(l,acc)); } }
public final void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> loaders) { if(wrapperTagName!=null) { UnmarshallerChain c = new UnmarshallerChain(chain.context); QNameMap<ChildLoader> m = new QNameMap<ChildLoader>(); createBodyUnmarshaller(c,m); Loader loader = new ItemsLoader(acc, lister, m); if(isWrapperNillable || chain.context.allNillable) loader = new XsiNilLoader(loader); loaders.put(wrapperTagName,new ChildLoader(loader,null)); } else { createBodyUnmarshaller(chain,loaders); } }
public void createBodyUnmarshaller(UnmarshallerChain chain, QNameMap<ChildLoader> loaders) { // all items go to the same lister, // so they should share the same offset. int offset = chain.allocateOffset(); Receiver recv = new ReceiverImpl(offset); for (RuntimeTypeRef typeRef : prop.getTypes()) { Name tagName = chain.context.nameBuilder.createElementName(typeRef.getTagName()); Loader item = createItemUnmarshaller(chain,typeRef); if(typeRef.isNillable() || chain.context.allNillable) item = new XsiNilLoader.Array(item); if(typeRef.getDefaultValue()!=null) item = new DefaultValueLoaderDecorator(item,typeRef.getDefaultValue()); loaders.put(tagName,new ChildLoader(item,recv)); } }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { Loader l = new LeafPropertyLoader(xacc); l = new DefaultValueLoaderDecorator(l, defaultValue); handlers.put(tagName, new ChildLoader(l,null)); }
public void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers) { Loader l = new LeafPropertyLoader(xacc); if (defaultValue != null) l = new DefaultValueLoaderDecorator(l, defaultValue); if (nillable || chain.context.allNillable) l = new XsiNilLoader.Single(l, acc); // LeafPropertyXsiLoader doesn't work well with nillable elements if (improvedXsiTypeHandling) l = new LeafPropertyXsiLoader(l, xacc, acc); handlers.put(tagName, new ChildLoader(l, null)); }