Interface XMLEventReader

All Superinterfaces:
Iterator<Object>
All Known Implementing Classes:
EventReaderDelegate

public interface XMLEventReader extends Iterator<Object>
This is the top level interface for parsing XML Events. It provides the ability to peek at the next event and returns configuration information through the property interface.
Since:
1.6
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Frees any resources associated with this Reader.
    Reads the content of a text-only element.
    Get the value of a feature/property from the underlying implementation
    boolean
    Check if there are more events.
    Gets the next XMLEvent.
    Skips any insignificant space events until a START_ELEMENT or END_ELEMENT is reached.
    Check the next XMLEvent without reading it from the stream.

    Methods declared in interface Iterator

    forEachRemaining, next, remove
    Modifier and Type
    Method
    Description
    default void
    forEachRemaining(Consumer<? super Object> action)
    Performs the given action for each remaining element until all elements have been processed or the action throws an exception.
    Returns the next element in the iteration.
    default void
    Removes from the underlying collection the last element returned by this iterator (optional operation).
  • Method Details

    • nextEvent

      XMLEvent nextEvent() throws XMLStreamException
      Gets the next XMLEvent. The initial event is StartDocument.
      Returns:
      the next XMLEvent
      Throws:
      XMLStreamException - if there is an error with the underlying XML.
      NoSuchElementException - iteration has no more elements.
      See Also:
    • hasNext

      boolean hasNext()
      Check if there are more events. Returns true if there are more events and false otherwise.
      Specified by:
      hasNext in interface Iterator<Object>
      Returns:
      true if the event reader has more events, false otherwise
    • peek

      Check the next XMLEvent without reading it from the stream. Returns null if the stream is at EOF or has no more XMLEvents. A call to peek() will be equal to the next return of next().
      Returns:
      the next XMLEvent
      Throws:
      XMLStreamException - if an error occurs
      See Also:
    • getElementText

      String getElementText() throws XMLStreamException
      Reads the content of a text-only element. Precondition: the current event is START_ELEMENT. Postcondition: The current event is the corresponding END_ELEMENT.
      Returns:
      the text of the element
      Throws:
      XMLStreamException - if the current event is not a START_ELEMENT or if a non text element is encountered
    • nextTag

      XMLEvent nextTag() throws XMLStreamException
      Skips any insignificant space events until a START_ELEMENT or END_ELEMENT is reached. If anything other than space characters are encountered, an exception is thrown. This method should be used when processing element-only content because the parser is not able to recognize ignorable whitespace if the DTD is missing or not interpreted.
      Returns:
      a START_ELEMENT or END_ELEMENT
      Throws:
      XMLStreamException - if anything other than space characters are encountered
    • getProperty

      Object getProperty(String name) throws IllegalArgumentException
      Get the value of a feature/property from the underlying implementation
      Parameters:
      name - The name of the property
      Returns:
      The value of the property
      Throws:
      IllegalArgumentException - if the property is not supported
    • close

      void close() throws XMLStreamException
      Frees any resources associated with this Reader. This method does not close the underlying input source.
      Throws:
      XMLStreamException - if there are errors freeing associated resources