com.sun.xml.bind.v2.runtime.property
Interface StructureLoaderBuilder

All Known Subinterfaces:
Property<BeanT>
All Known Implementing Classes:
ArrayElementLeafProperty, ArrayElementNodeProperty, ArrayElementProperty, ArrayERProperty, ArrayProperty, ArrayReferenceNodeProperty, AttributeProperty, ListElementProperty, PropertyImpl, SingleElementLeafProperty, SingleElementNodeProperty, SingleMapNodeProperty, SingleReferenceNodeProperty, ValueProperty

public interface StructureLoaderBuilder

Component that contributes element unmarshallers into StructureLoader. TODO: think of a better name.


Field Summary
static QName CATCH_ALL
          Magic QName used to store a handler for the rest of the elements.
static QName TEXT_HANDLER
          Magic QName used to store a handler for the text.
 
Method Summary
 void buildChildElementUnmarshallers(UnmarshallerChain chain, QNameMap<ChildLoader> handlers)
          Every Property class has an implementation of buildChildElementUnmarshallers which will fill in the specified QNameMap by elements that are expected by this property.
 

Field Detail

TEXT_HANDLER

static final QName TEXT_HANDLER
Magic QName used to store a handler for the text.

To support the mixed content model, StructureLoader can have at most one ValuePropertyLoader for processing text found amoung elements. This special text handler is put into the QNameMap parameter of the buildChildElementUnmarshallers(com.sun.xml.bind.v2.runtime.property.UnmarshallerChain, com.sun.xml.bind.v2.util.QNameMap) method by using this magic token as the key.


CATCH_ALL

static final QName CATCH_ALL
Magic QName used to store a handler for the rest of the elements.

To support the wildcard, StructureLoader can have at most one Loader for processing elements that didn't match any of the named elements. This special text handler is put into the QNameMap parameter of the buildChildElementUnmarshallers(com.sun.xml.bind.v2.runtime.property.UnmarshallerChain, com.sun.xml.bind.v2.util.QNameMap) method by using this magic token as the key.

Method Detail

buildChildElementUnmarshallers

void buildChildElementUnmarshallers(UnmarshallerChain chain,
                                    QNameMap<ChildLoader> handlers)
Every Property class has an implementation of buildChildElementUnmarshallers which will fill in the specified QNameMap by elements that are expected by this property.