Class XmlTokenStream


  • public class XmlTokenStream
    extends Object
    Simple helper class used on top of STAX XMLStreamReader to further abstract out all irrelevant details, and to expose equivalent of flat token stream with no "fluff" tokens (comments, processing instructions, mixed content) all of which is just to simplify actual higher-level conversion to JSON tokens
    • Field Detail

      • _xmlReader

        protected final org.codehaus.stax2.XMLStreamReader2 _xmlReader
      • _sourceReference

        protected final Object _sourceReference
      • _formatFeatures

        protected int _formatFeatures
        Bit flag composed of bits that indicate which FromXmlParser.Features are enabled.
      • _currentState

        protected int _currentState
      • _attributeCount

        protected int _attributeCount
      • _mixedText

        protected boolean _mixedText
        If true we have a START_ELEMENT with mixed text
        Since:
        2.8
      • _nextAttributeIndex

        protected int _nextAttributeIndex
        Index of the next attribute of the current START_ELEMENT to return (as field name and value pair), if any; -1 when no attributes to return
      • _localName

        protected String _localName
      • _namespaceURI

        protected String _namespaceURI
      • _textValue

        protected String _textValue
      • _repeatElement

        protected int _repeatElement
        Flag used to indicate that given element should be "replayed".
      • _currentWrapper

        protected com.fasterxml.jackson.dataformat.xml.deser.ElementWrapper _currentWrapper
        Wrapping state, if any active (null if none)
      • _nextLocalName

        protected String _nextLocalName
        In cases where we need to 'inject' a virtual END_ELEMENT, we may also need to restore START_ELEMENT afterwards; if so, this is where names are held.
      • _nextNamespaceURI

        protected String _nextNamespaceURI
    • Constructor Detail

      • XmlTokenStream

        public XmlTokenStream​(XMLStreamReader xmlReader,
                              Object sourceRef,
                              int formatFeatures)
    • Method Detail

      • getXmlReader

        public org.codehaus.stax2.XMLStreamReader2 getXmlReader()
      • setFormatFeatures

        protected void setFormatFeatures​(int f)
        Since:
        2.9
      • getCurrentToken

        public int getCurrentToken()
      • getText

        public String getText()
      • getLocalName

        public String getLocalName()
      • getNamespaceURI

        public String getNamespaceURI()
      • hasAttributes

        public boolean hasAttributes()
      • getCurrentLocation

        public com.fasterxml.jackson.core.JsonLocation getCurrentLocation()
      • getTokenLocation

        public com.fasterxml.jackson.core.JsonLocation getTokenLocation()
      • repeatStartElement

        protected void repeatStartElement()
        Method used to add virtual wrapping, which just duplicates START_ELEMENT stream points to, and its matching closing element.
        Since:
        2.1
      • skipAttributes

        protected void skipAttributes()
        Method called to skip any attributes current START_ELEMENT may have, so that they are not returned as token.
        Since:
        2.1
      • _handleRepeatElement

        protected int _handleRepeatElement()
                                    throws XMLStreamException
        Method called to handle details of repeating "virtual" start/end elements, needed for handling 'unwrapped' lists.
        Throws:
        XMLStreamException
      • _allWs

        protected boolean _allWs​(String str)