private static final class Processor.InputSlicingHandler
extends org.xml.sax.helpers.DefaultHandler
ContentHandler
that splits XML documents into smaller chunks. Each chunk is processed
by the nested ContentHandler
. This is useful for running XSLT engine against large XML
document that will hardly fit into the memory all together.
TODO use complete path for subdocumentRoot
Modifier and Type | Field and Description |
---|---|
private org.xml.sax.ContentHandler |
rootHandler |
private boolean |
subdocument |
private org.xml.sax.ContentHandler |
subdocumentHandler |
private Processor.ContentHandlerFactory |
subdocumentHandlerFactory |
private java.lang.String |
subdocumentRoot |
Constructor and Description |
---|
InputSlicingHandler(java.lang.String subdocumentRoot,
org.xml.sax.ContentHandler rootHandler,
Processor.ContentHandlerFactory subdocumentHandlerFactory)
Constructs a new
Processor.InputSlicingHandler object. |
Modifier and Type | Method and Description |
---|---|
void |
characters(char[] buff,
int offset,
int size) |
void |
endDocument() |
void |
endElement(java.lang.String namespaceURI,
java.lang.String localName,
java.lang.String qName) |
void |
startDocument() |
void |
startElement(java.lang.String namespaceURI,
java.lang.String localName,
java.lang.String qName,
org.xml.sax.Attributes list) |
private java.lang.String subdocumentRoot
private final org.xml.sax.ContentHandler rootHandler
private Processor.ContentHandlerFactory subdocumentHandlerFactory
private boolean subdocument
private org.xml.sax.ContentHandler subdocumentHandler
InputSlicingHandler(java.lang.String subdocumentRoot, org.xml.sax.ContentHandler rootHandler, Processor.ContentHandlerFactory subdocumentHandlerFactory)
Processor.InputSlicingHandler
object.subdocumentRoot
- name/path to the root element of the subdocumentrootHandler
- content handler for the entire document (subdocument envelope).subdocumentHandlerFactory
- a Processor.ContentHandlerFactory
used to create ContentHandler
instances for subdocuments.public final void startElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes list) throws org.xml.sax.SAXException
startElement
in interface org.xml.sax.ContentHandler
startElement
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public final void endElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXException
endElement
in interface org.xml.sax.ContentHandler
endElement
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public final void startDocument() throws org.xml.sax.SAXException
startDocument
in interface org.xml.sax.ContentHandler
startDocument
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public final void endDocument() throws org.xml.sax.SAXException
endDocument
in interface org.xml.sax.ContentHandler
endDocument
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public final void characters(char[] buff, int offset, int size) throws org.xml.sax.SAXException
characters
in interface org.xml.sax.ContentHandler
characters
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException