/** * Handles a chunk start. */ private void handleChunkStart(final XMLChunk chunk) { List<QName> xpath = Collections.unmodifiableList(chunk.getXpath()); XMLChunkHandler handler = getHandler(chunk.getStartElement()); if (chunk.hasParent()) { XMLChunk parentChunk = chunk.getParent(); XMLChunkHandler parentHandler = getHandler(parentChunk.getStartElement()); parentHandler.handleChunkBeforChildHandler( xpath, parentChunk.getStartElement(), parentChunk.getChunk(), chunk.getStartElement(), handler); } handler.handleChunkStart(xpath, chunk.getStartElement()); }
/** * Handler function of the end chunk event. */ private void handleChunkEnd(final XMLChunk chunk) { List<QName> xpath = Collections.unmodifiableList(chunk.getXpath()); XMLChunkHandler handler = getHandler(chunk.getStartElement()); handler.handleChunkEnd(xpath, chunk.getStartElement(), chunk.getChunk()); if (chunk.hasParent()) { XMLChunk parentChunk = chunk.getParent(); XMLChunkHandler parentHandler = getHandler(parentChunk.getStartElement()); parentHandler.handleChunkAfterChildHandler( xpath, parentChunk.getStartElement(), parentChunk.getChunk(), chunk.getStartElement(), handler); } }