javax.xml.stream.util

## Class EventReaderDelegate

- java.lang.Object
- - javax.xml.stream.util.EventReaderDelegate

All Implemented Interfaces:
  Iterator, XMLEventReader

    public class EventReaderDelegate
    extends Object
    implements XMLEventReader

This is the base class for deriving an XMLEventReader filter. This class is designed to sit between an XMLEventReader and an application's XMLEventReader. By default each method does nothing but call the corresponding method on the parent interface.

Since:
  1.6
See Also:
  `XMLEventReader`, `StreamReaderDelegate`

### Constructor Summary

Constructors
Constructor and Description
`EventReaderDelegate()` Construct an empty filter with no parent.
`EventReaderDelegate(XMLEventReader reader)` Construct an filter with the specified parent.

### Method Summary

Methods
`void` `close()` Frees any resources associated with this Reader.
`String` `getElementText()` Reads the content of a text-only element.
`XMLEventReader` `getParent()` Get the parent of this instance.
`Object` `getProperty(String name)` Get the value of a feature/property from the underlying implementation
`boolean` `hasNext()` Check if there are more events.
`Object` `next()` Returns the next element in the iteration.
`XMLEvent` `nextEvent()` Get the next XMLEvent
`XMLEvent` `nextTag()` Skips any insignificant space events until a START_ELEMENT or END_ELEMENT is reached.
`XMLEvent` `peek()` Check the next XMLEvent without reading it from the stream.
`void` `remove()` Removes from the underlying collection the last element returned by this iterator (optional operation).
`void` `setParent(XMLEventReader reader)` Set the parent of this instance.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### EventReaderDelegate

    public EventReaderDelegate()

Construct an empty filter with no parent.

#### EventReaderDelegate

    public EventReaderDelegate(XMLEventReader reader)

Construct an filter with the specified parent.

Parameters:
  `reader` - the parent

### Method Detail

#### setParent

    public void setParent(XMLEventReader reader)

Set the parent of this instance.

Parameters:
  `reader` - the new parent

#### getParent

    public XMLEventReader getParent()

Get the parent of this instance.

Returns:
  the parent or null if none is set

#### nextEvent

    public XMLEvent nextEvent()
                       throws XMLStreamException

Description copied from interface: `XMLEventReader`
Get the next XMLEvent

Specified by:
  `nextEvent` in interface `XMLEventReader`
Throws:
  `XMLStreamException` - if there is an error with the underlying XML.
See Also:
  `XMLEvent`

#### next

    public Object next()

Description copied from interface: `Iterator`
Returns the next element in the iteration.

Specified by:
  `next` in interface `Iterator`
Returns:
  the next element in the iteration

#### hasNext

    public boolean hasNext()

Description copied from interface: `XMLEventReader`
Check if there are more events. Returns true if there are more events and false otherwise.

Specified by:
  `hasNext` in interface `Iterator`
Specified by:
  `hasNext` in interface `XMLEventReader`
Returns:
  true if the event reader has more events, false otherwise

#### peek

    public XMLEvent peek()
                  throws XMLStreamException

Description copied from interface: `XMLEventReader`
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().

Specified by:
  `peek` in interface `XMLEventReader`
Throws:
  `XMLStreamException`
See Also:
  `XMLEvent`

#### close

    public void close()
               throws XMLStreamException

Description copied from interface: `XMLEventReader`
Frees any resources associated with this Reader. This method does not close the underlying input source.

Specified by:
  `close` in interface `XMLEventReader`
Throws:
  `XMLStreamException` - if there are errors freeing associated resources

#### getElementText

    public String getElementText()
                          throws XMLStreamException

Description copied from interface: `XMLEventReader`
Reads the content of a text-only element. Precondition: the current event is START_ELEMENT. Postcondition: The current event is the corresponding END_ELEMENT.

Specified by:
  `getElementText` in interface `XMLEventReader`
Throws:
  `XMLStreamException` - if the current event is not a START_ELEMENT or if a non text element is encountered

#### nextTag

    public XMLEvent nextTag()
                     throws XMLStreamException

Description copied from interface: `XMLEventReader`
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.

Specified by:
  `nextTag` in interface `XMLEventReader`
Throws:
  `XMLStreamException` - if anything other than space characters are encountered

#### getProperty

    public Object getProperty(String name)
                       throws IllegalArgumentException

Description copied from interface: `XMLEventReader`
Get the value of a feature/property from the underlying implementation

Specified by:
  `getProperty` in interface `XMLEventReader`
Parameters:
  `name` - The name of the property
Returns:
  The value of the property
Throws:
  `IllegalArgumentException` - if the property is not supported

#### remove

    public void remove()

Description copied from interface: `Iterator`
Removes from the underlying collection the last element returned by this iterator (optional operation). This method can be called only once per call to `Iterator.next()`. The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method.

Specified by:
  `remove` in interface `Iterator`

Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.