Class AbstractStAXStreamReader

  • All Implemented Interfaces:
    javax.xml.stream.XMLStreamConstants, javax.xml.stream.XMLStreamReader

    public abstract class AbstractStAXStreamReader
    extends AbstractOutputProcessor
    implements javax.xml.stream.XMLStreamReader
    An XMLStreamReader implementation that reads the XML document out of a JDOM Document. This class is marked as abstract even though it is a full implementation of the XMLReader. This class can be overridden if needed. If you extend this class, you will need to also extend AbstractStAXStreamReaderProcessor and supply an instance of that customised class to the StAXStreamReader class.

    The reader reads XML Events by walking the JDOM tree, reporting all XML stream events as it encounters them in the JDOM.

    This class is the inverse of the class StAXStreamOutputter in the sense that this class is read from (it's an XMLStreamReader implementation) by interpreting a JDOM Document whereas the StAXStreamOutputter interprets a JDOM Document and writes to a user-supplied XMLStreamWriter. It is the difference between a 'pull' concept and a 'push' concept.

    Since:
    JDOM 2.1
    Author:
    gordon burgett https://github.com/gburgett, Rolf Lear
    • Constructor Detail

      • AbstractStAXStreamReader

        public AbstractStAXStreamReader​(Document document,
                                        Format format)
        Create a new AbstractStAXStreamReader that outputs a JDOM Document as an XMLStream.
        Parameters:
        document - the document to output.
        format - The output format to use.
      • AbstractStAXStreamReader

        public AbstractStAXStreamReader​(Document document)
        Create a new AbstractStAXStreamReader that outputs a JDOM Document as an XMLStream using the Format.getRawFormat() format.
        Parameters:
        document - the document to output.
    • Method Detail

      • hasNext

        public boolean hasNext()
                        throws javax.xml.stream.XMLStreamException
        Specified by:
        hasNext in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • next

        public int next()
                 throws javax.xml.stream.XMLStreamException
        Specified by:
        next in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • getEventType

        public int getEventType()
        Specified by:
        getEventType in interface javax.xml.stream.XMLStreamReader
      • isStartElement

        public boolean isStartElement()
        Specified by:
        isStartElement in interface javax.xml.stream.XMLStreamReader
      • isEndElement

        public boolean isEndElement()
        Specified by:
        isEndElement in interface javax.xml.stream.XMLStreamReader
      • isCharacters

        public boolean isCharacters()
        Specified by:
        isCharacters in interface javax.xml.stream.XMLStreamReader
      • isWhiteSpace

        public boolean isWhiteSpace()
        Specified by:
        isWhiteSpace in interface javax.xml.stream.XMLStreamReader
      • require

        public void require​(int type,
                            java.lang.String namespaceURI,
                            java.lang.String localName)
                     throws javax.xml.stream.XMLStreamException
        Specified by:
        require in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • getName

        public javax.xml.namespace.QName getName()
        Specified by:
        getName in interface javax.xml.stream.XMLStreamReader
      • getLocalName

        public java.lang.String getLocalName()
        Specified by:
        getLocalName in interface javax.xml.stream.XMLStreamReader
      • hasName

        public boolean hasName()
        Specified by:
        hasName in interface javax.xml.stream.XMLStreamReader
      • getNamespaceURI

        public java.lang.String getNamespaceURI()
        Specified by:
        getNamespaceURI in interface javax.xml.stream.XMLStreamReader
      • getPrefix

        public java.lang.String getPrefix()
        Specified by:
        getPrefix in interface javax.xml.stream.XMLStreamReader
      • getPITarget

        public java.lang.String getPITarget()
        Specified by:
        getPITarget in interface javax.xml.stream.XMLStreamReader
      • getPIData

        public java.lang.String getPIData()
        Specified by:
        getPIData in interface javax.xml.stream.XMLStreamReader
      • getElementText

        public java.lang.String getElementText()
                                        throws javax.xml.stream.XMLStreamException
        Specified by:
        getElementText in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • nextTag

        public int nextTag()
                    throws javax.xml.stream.XMLStreamException
        Specified by:
        nextTag in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • close

        public void close()
                   throws javax.xml.stream.XMLStreamException
        Specified by:
        close in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • getNamespaceURI

        public java.lang.String getNamespaceURI​(java.lang.String prefix)
        Specified by:
        getNamespaceURI in interface javax.xml.stream.XMLStreamReader
      • getAttributeValue

        public java.lang.String getAttributeValue​(java.lang.String namespaceURI,
                                                  java.lang.String localName)
        Specified by:
        getAttributeValue in interface javax.xml.stream.XMLStreamReader
      • getAttributeCount

        public int getAttributeCount()
        Specified by:
        getAttributeCount in interface javax.xml.stream.XMLStreamReader
      • getAttributeName

        public javax.xml.namespace.QName getAttributeName​(int index)
        Specified by:
        getAttributeName in interface javax.xml.stream.XMLStreamReader
      • getAttributeNamespace

        public java.lang.String getAttributeNamespace​(int index)
        Specified by:
        getAttributeNamespace in interface javax.xml.stream.XMLStreamReader
      • getAttributeLocalName

        public java.lang.String getAttributeLocalName​(int index)
        Specified by:
        getAttributeLocalName in interface javax.xml.stream.XMLStreamReader
      • getAttributePrefix

        public java.lang.String getAttributePrefix​(int index)
        Specified by:
        getAttributePrefix in interface javax.xml.stream.XMLStreamReader
      • getAttributeType

        public java.lang.String getAttributeType​(int index)
        Specified by:
        getAttributeType in interface javax.xml.stream.XMLStreamReader
      • getAttributeValue

        public java.lang.String getAttributeValue​(int index)
        Specified by:
        getAttributeValue in interface javax.xml.stream.XMLStreamReader
      • isAttributeSpecified

        public boolean isAttributeSpecified​(int index)
        Specified by:
        isAttributeSpecified in interface javax.xml.stream.XMLStreamReader
      • getNamespaceCount

        public int getNamespaceCount()
        Specified by:
        getNamespaceCount in interface javax.xml.stream.XMLStreamReader
      • getNamespacePrefix

        public java.lang.String getNamespacePrefix​(int index)
        Specified by:
        getNamespacePrefix in interface javax.xml.stream.XMLStreamReader
      • getNamespaceURI

        public java.lang.String getNamespaceURI​(int index)
        Specified by:
        getNamespaceURI in interface javax.xml.stream.XMLStreamReader
      • getNamespaceContext

        public javax.xml.namespace.NamespaceContext getNamespaceContext()
        Specified by:
        getNamespaceContext in interface javax.xml.stream.XMLStreamReader
      • hasText

        public boolean hasText()
        Specified by:
        hasText in interface javax.xml.stream.XMLStreamReader
      • getText

        public java.lang.String getText()
        Specified by:
        getText in interface javax.xml.stream.XMLStreamReader
      • getTextCharacters

        public char[] getTextCharacters()
        Specified by:
        getTextCharacters in interface javax.xml.stream.XMLStreamReader
      • getTextCharacters

        public int getTextCharacters​(int sourceStart,
                                     char[] target,
                                     int targetStart,
                                     int length)
                              throws javax.xml.stream.XMLStreamException
        Specified by:
        getTextCharacters in interface javax.xml.stream.XMLStreamReader
        Throws:
        javax.xml.stream.XMLStreamException
      • getTextStart

        public int getTextStart()
        Specified by:
        getTextStart in interface javax.xml.stream.XMLStreamReader
      • getTextLength

        public int getTextLength()
        Specified by:
        getTextLength in interface javax.xml.stream.XMLStreamReader
      • getEncoding

        public java.lang.String getEncoding()
        Specified by:
        getEncoding in interface javax.xml.stream.XMLStreamReader
      • getLocation

        public javax.xml.stream.Location getLocation()
        Specified by:
        getLocation in interface javax.xml.stream.XMLStreamReader
      • getVersion

        public java.lang.String getVersion()
        Specified by:
        getVersion in interface javax.xml.stream.XMLStreamReader
      • isStandalone

        public boolean isStandalone()
        Specified by:
        isStandalone in interface javax.xml.stream.XMLStreamReader
      • standaloneSet

        public boolean standaloneSet()
        Specified by:
        standaloneSet in interface javax.xml.stream.XMLStreamReader
      • getCharacterEncodingScheme

        public java.lang.String getCharacterEncodingScheme()
        Specified by:
        getCharacterEncodingScheme in interface javax.xml.stream.XMLStreamReader
      • getProperty

        public java.lang.Object getProperty​(java.lang.String name)
                                     throws java.lang.IllegalArgumentException
        Specified by:
        getProperty in interface javax.xml.stream.XMLStreamReader
        Throws:
        java.lang.IllegalArgumentException