@Override protected XMLEvent internalNextEvent() throws XMLStreamException { // If there is an iterator to read from reset was called, use the iterator // until it runs out of events. if (this.bufferReader != null) { final XMLEvent event = this.bufferReader.next(); // If nothing left in the iterator, remove the reference and fall through to direct // reading if (!this.bufferReader.hasNext()) { this.bufferReader = null; } return event; } // Get the next event from the underlying reader final XMLEvent event = this.getParent().nextEvent(); // if buffering add the event if (this.eventLimit != 0) { this.eventBuffer.offer(event); // If limited buffer size and buffer is too big trim the buffer. if (this.eventLimit > 0 && this.eventBuffer.size() > this.eventLimit) { this.eventBuffer.poll(); } } return event; }
@Override protected XMLEvent internalNextEvent() throws XMLStreamException { // If there is an iterator to read from reset was called, use the iterator // until it runs out of events. if (this.bufferReader != null) { final XMLEvent event = this.bufferReader.next(); // If nothing left in the iterator, remove the reference and fall through to direct // reading if (!this.bufferReader.hasNext()) { this.bufferReader = null; } return event; } // Get the next event from the underlying reader final XMLEvent event = this.getParent().nextEvent(); // if buffering add the event if (this.eventLimit != 0) { this.eventBuffer.offer(event); // If limited buffer size and buffer is too big trim the buffer. if (this.eventLimit > 0 && this.eventBuffer.size() > this.eventLimit) { this.eventBuffer.poll(); } } return event; }