public final class StructureLoader extends Loader
This loader works with a single JaxBeanInfo and handles
attributes, child elements, or child text.
expectText| Constructor and Description |
|---|
StructureLoader(ClassBeanInfoImpl beanInfo) |
| Modifier and Type | Method and Description |
|---|---|
void |
childElement(UnmarshallingContext.State state,
TagName arg)
Called when this loaderis an active loaderand we see a new child start tag.
|
JaxBeanInfo |
getBeanInfo() |
Collection<QName> |
getExpectedAttributes()
Returns a set of tag names expected as possible child elements in this context.
|
Collection<QName> |
getExpectedChildElements()
Returns a set of tag names expected as possible child elements in this context.
|
void |
init(JAXBContextImpl context,
ClassBeanInfoImpl beanInfo,
Accessor<?,Map<QName,String>> attWildcard)
Completes the initialization.
|
void |
leaveElement(UnmarshallingContext.State state,
TagName ea)
Called when this loaderis an active loaderand we see an end tag.
|
void |
startElement(UnmarshallingContext.State state,
TagName ea)
Called when the loader is activated, which is when a new start tag is seen
and when the parent designated this loader as the child loader.
|
void |
text(UnmarshallingContext.State state,
CharSequence text)
Called when this loaderis an active loaderand we see a chunk of text.
|
expectText, fireAfterUnmarshal, fireBeforeUnmarshal, handleGenericError, handleGenericException, handleGenericException, handleParseConversionException, reportError, reportError, reportUnexpectedChildElementpublic StructureLoader(ClassBeanInfoImpl beanInfo)
public void init(JAXBContextImpl context, ClassBeanInfoImpl beanInfo, Accessor<?,Map<QName,String>> attWildcard)
To fix the cyclic reference issue, the main part of the initialization needs to be done
after a StructureLoader is set to ClassBeanInfoImpl.loader.
public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException
Loader
The callee may change state.loader to designate another Loader
for the processing. It's the responsibility of the callee to forward the startElement
event in such a case.
startElement in class Loaderea - info about the start tag. never null.SAXExceptionpublic void childElement(UnmarshallingContext.State state, TagName arg) throws SAXException
Loader
The callee is expected to designate another loaderas a loaderthat processes
this element, then it should also register a Receiver.
The designated loaderwill become an active loader.
The default implementation reports an error saying an element is unexpected.
childElement in class LoaderSAXExceptionpublic Collection<QName> getExpectedChildElements()
LoadergetExpectedChildElements in class Loaderpublic Collection<QName> getExpectedAttributes()
LoadergetExpectedAttributes in class Loaderpublic void text(UnmarshallingContext.State state, CharSequence text) throws SAXException
Loadertext in class LoaderSAXExceptionpublic void leaveElement(UnmarshallingContext.State state, TagName ea) throws SAXException
LoaderleaveElement in class LoaderSAXExceptionpublic JaxBeanInfo getBeanInfo()
Copyright © 2018 JBoss by Red Hat. All rights reserved.