class PruningElementStack extends ElementStack
PruningElementStack
is a stack of Element
instances
which will prune the tree when a path expression is reached. This is useful
for parsing very large documents where children of the root element can be
processed individually rather than keeping them all in memory at the same
time.
Modifier and Type | Field and Description |
---|---|
private ElementHandler |
elementHandler
ElementHandler to call when pruning occurs
|
private int |
matchingElementIndex
The level at which a path match can occur.
|
private java.lang.String[] |
path
the element name path which denotes the node to remove from its parent
when it is complete (i.e.
|
lastElementIndex, stack
Constructor and Description |
---|
PruningElementStack(java.lang.String[] path,
ElementHandler elementHandler) |
PruningElementStack(java.lang.String[] path,
ElementHandler elementHandler,
int defaultCapacity) |
Modifier and Type | Method and Description |
---|---|
private void |
checkPath() |
protected void |
pathMatches(Element parent,
Element selectedNode) |
Element |
popElement()
Pops the element off the stack
|
protected boolean |
validElement(Element element,
int index) |
addHandler, clear, containsHandler, getCurrent, getDispatchHandler, getElement, getPath, peekElement, pushElement, reallocate, removeHandler, setDispatchHandler, size
private ElementHandler elementHandler
private java.lang.String[] path
private int matchingElementIndex
public PruningElementStack(java.lang.String[] path, ElementHandler elementHandler)
public PruningElementStack(java.lang.String[] path, ElementHandler elementHandler, int defaultCapacity)
public Element popElement()
ElementStack
popElement
in class ElementStack
protected boolean validElement(Element element, int index)
private void checkPath()