public class JMUnmarshallerHandlerImpl extends java.lang.Object implements JMUnmarshallerHandler
Implementation of a JMUnmarshallerHandler; the
UnmarshallerHandler receives SAX events which he silently
discards, as long as the first startElement
event is seen. Depending on namespace URI and local name,
the Unmarshallerhandler creates a new instance of JMHandler
and from now on forwards all SAX events to the JMHandler.
| Constructor and Description |
|---|
JMUnmarshallerHandlerImpl(JMUnmarshaller pUnmarshaller)
Creates a new instance, controlled by the given
JMUnmarshaller. |
| Modifier and Type | Method and Description |
|---|---|
void |
addElementParser(JMSAXElementParser pParser)
Adds a parser for an nested element to the stack of parsers.
|
void |
addSimpleAtomicState()
Indicates, that the handler is parsing a simple, atomic element.
|
void |
characters(char[] pChars,
int pOffset,
int pLen) |
void |
endDocument() |
void |
endElement(java.lang.String pNamespaceURI,
java.lang.String pLocalName,
java.lang.String pQName) |
void |
endPrefixMapping(java.lang.String pPrefix) |
DatatypeConverterInterface |
getDatatypeConverter()
Returns an instance of
DatatypeConverterInterface. |
org.xml.sax.Locator |
getDocumentLocator()
Returns an instance of
Locator, if it has
been set, or null. |
JMUnmarshaller |
getJMUnmarshaller()
Returns the
JMUnmarshaller, which created this
handler. |
int |
getLevel()
Returns the current level of nested elements.
|
NamespaceSupport |
getNamespaceSupport()
Returns an instance of
NamespaceSupport. |
Observer |
getObserver()
Returns the observer, which will be notified, when the element has
been parsed.
|
java.lang.Object |
getResult()
Returns the unmarshalled object.
|
void |
ignorableWhitespace(char[] pChars,
int pStart,
int pLen) |
void |
parseConversionEvent(java.lang.String pMsg,
java.lang.Exception pException)
Posts a
ParseConversionEvent. |
void |
processingInstruction(java.lang.String pTarget,
java.lang.String pData) |
void |
setDocumentLocator(org.xml.sax.Locator pLocator) |
void |
setObserver(Observer pObserver)
Sets an observer, which will be notified, when the element has
been parsed.
|
void |
skippedEntity(java.lang.String pName) |
void |
startDocument() |
void |
startElement(java.lang.String pNamespaceURI,
java.lang.String pLocalName,
java.lang.String pQName,
org.xml.sax.Attributes pAttrs) |
void |
startPrefixMapping(java.lang.String pPrefix,
java.lang.String pURI) |
boolean |
testGroupParser(JMSAXGroupParser pParser,
java.lang.String pNamespaceURI,
java.lang.String pLocalName,
java.lang.String pQName,
org.xml.sax.Attributes pAttrs)
Tests, whether the group parser accepts the element.
|
void |
validationEvent(int pSeverity,
java.lang.String pMsg,
java.lang.String pErrorCode,
java.lang.Exception pException)
Posts a
ValidationEvent. |
public JMUnmarshallerHandlerImpl(JMUnmarshaller pUnmarshaller)
JMUnmarshaller.public int getLevel()
JMUnmarshallerHandlergetLevel in interface JMUnmarshallerHandlerpublic void setObserver(Observer pObserver)
setObserver in interface JMUnmarshallerHandlerpublic Observer getObserver()
getObserver in interface JMUnmarshallerHandlerpublic JMUnmarshaller getJMUnmarshaller()
JMUnmarshaller, which created this
handler.getJMUnmarshaller in interface JMUnmarshallerHandlerpublic void setDocumentLocator(org.xml.sax.Locator pLocator)
setDocumentLocator in interface org.xml.sax.ContentHandlerpublic void startDocument()
throws org.xml.sax.SAXException
startDocument in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void endDocument()
throws org.xml.sax.SAXException
endDocument in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void startPrefixMapping(java.lang.String pPrefix,
java.lang.String pURI)
throws org.xml.sax.SAXException
startPrefixMapping in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void endPrefixMapping(java.lang.String pPrefix)
throws org.xml.sax.SAXException
endPrefixMapping in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic boolean testGroupParser(JMSAXGroupParser pParser, java.lang.String pNamespaceURI, java.lang.String pLocalName, java.lang.String pQName, org.xml.sax.Attributes pAttrs) throws org.xml.sax.SAXException
org.xml.sax.SAXExceptionpublic void addElementParser(JMSAXElementParser pParser)
public void startElement(java.lang.String pNamespaceURI,
java.lang.String pLocalName,
java.lang.String pQName,
org.xml.sax.Attributes pAttrs)
throws org.xml.sax.SAXException
startElement in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void endElement(java.lang.String pNamespaceURI,
java.lang.String pLocalName,
java.lang.String pQName)
throws org.xml.sax.SAXException
endElement in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void characters(char[] pChars,
int pOffset,
int pLen)
throws org.xml.sax.SAXException
characters in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void ignorableWhitespace(char[] pChars,
int pStart,
int pLen)
throws org.xml.sax.SAXException
ignorableWhitespace in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void processingInstruction(java.lang.String pTarget,
java.lang.String pData)
throws org.xml.sax.SAXException
processingInstruction in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic void parseConversionEvent(java.lang.String pMsg,
java.lang.Exception pException)
throws org.xml.sax.SAXException
ParseConversionEvent.org.xml.sax.SAXExceptionpublic void validationEvent(int pSeverity,
java.lang.String pMsg,
java.lang.String pErrorCode,
java.lang.Exception pException)
throws org.xml.sax.SAXException
ValidationEvent.org.xml.sax.SAXExceptionpublic void skippedEntity(java.lang.String pName)
throws org.xml.sax.SAXException
skippedEntity in interface org.xml.sax.ContentHandlerorg.xml.sax.SAXExceptionpublic java.lang.Object getResult()
throws JAXBException,
java.lang.IllegalStateException
UnmarshallerHandlerReturns the unmarshalled object. This method may be invoked
after an endDocument() event only. An
IllegalStateException is thrown otherwise.
getResult in interface UnmarshallerHandlerIllegalStateException is thrown, if no data is
available.JAXBException - An error occurred. Note, that the
UnmarshallerHandler throws a
SAXException if an error occurs while
unmarshalling the object. In such cases the
JAXBException is typically nested within the
SAXException.java.lang.IllegalStateException - An endDocument()
event has not yet been seen and no data is available.public NamespaceSupport getNamespaceSupport()
JMUnmarshallerHandlerNamespaceSupport.getNamespaceSupport in interface JMUnmarshallerHandlerpublic org.xml.sax.Locator getDocumentLocator()
JMUnmarshallerHandlerLocator, if it has
been set, or null.getDocumentLocator in interface JMUnmarshallerHandlerContentHandler.setDocumentLocator(org.xml.sax.Locator)public DatatypeConverterInterface getDatatypeConverter()
JMUnmarshallerHandlerDatatypeConverterInterface.getDatatypeConverter in interface JMUnmarshallerHandlerpublic void addSimpleAtomicState()