Class BufferedXMLEventReader
java.lang.Object
javax.xml.stream.util.EventReaderDelegate
org.hibernate.boot.jaxb.internal.stax.BaseXMLEventReader
org.hibernate.boot.jaxb.internal.stax.BufferedXMLEventReader
- All Implemented Interfaces:
Iterator<Object>,XMLEventReader
Buffers XML events for later re-reading
Note, copied from the uPortal project by permission of author. See
https://github.com/Jasig/uPortal/blob/master/uportal-war/src/main/java/org/jasig/portal/xml/stream/BufferedXMLEventReader.java
-
Constructor Summary
ConstructorsConstructorDescriptionBufferedXMLEventReader(XMLEventReader reader) Create new buffering reader, no buffering is done untilmark(int)is called.BufferedXMLEventReader(XMLEventReader reader, int eventLimit) Create new buffering reader. -
Method Summary
Modifier and TypeMethodDescriptionintvoidclose()booleanhasNext()protected XMLEventSubclass's version ofBaseXMLEventReader.nextEvent(), called byBaseXMLEventReader.next()voidmark()Same as callingmark(int)with -1.voidmark(int eventLimit) Start buffering eventspeek()voidremove()If reading from the buffer after areset()call anIllegalStateExceptionwill be thrown.voidreset()Reset the reader to these start of the buffered events.Methods inherited from class org.hibernate.boot.jaxb.internal.stax.BaseXMLEventReader
getElementText, getPreviousEvent, next, nextEvent, nextTagMethods inherited from class javax.xml.stream.util.EventReaderDelegate
getParent, getProperty, setParentMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Iterator
forEachRemaining
-
Constructor Details
-
Method Details
-
getBuffer
- Returns:
- A copy of the current buffer
-
internalNextEvent
Description copied from class:BaseXMLEventReaderSubclass's version ofBaseXMLEventReader.nextEvent(), called byBaseXMLEventReader.next()- Specified by:
internalNextEventin classBaseXMLEventReader- Throws:
XMLStreamException
-
hasNext
public boolean hasNext()- Specified by:
hasNextin interfaceIterator<Object>- Specified by:
hasNextin interfaceXMLEventReader- Overrides:
hasNextin classEventReaderDelegate
-
peek
- Specified by:
peekin interfaceXMLEventReader- Overrides:
peekin classEventReaderDelegate- Throws:
XMLStreamException
-
mark
public void mark()Same as callingmark(int)with -1. -
mark
public void mark(int eventLimit) Start buffering events- Parameters:
eventLimit- the maximum number of events to buffer. -1 will buffer all events, 0 will buffer no events.
-
reset
public void reset()Reset the reader to these start of the buffered events. -
close
- Specified by:
closein interfaceXMLEventReader- Overrides:
closein classEventReaderDelegate- Throws:
XMLStreamException
-
bufferSize
public int bufferSize()- Returns:
- The number of events in the buffer.
-
remove
public void remove()If reading from the buffer after areset()call anIllegalStateExceptionwill be thrown.- Specified by:
removein interfaceIterator<Object>- Overrides:
removein classEventReaderDelegate
-