public interface NodeFilter
NodeTraversor
to iterate through nodes.
This interface provides two methods, head
and tail
. The head method is called when the node is first
seen, and the tail method when all of the node's children have been visited. As an example, head can be used to
create a start tag for a node, and tail to create the end tag.
For every node, the filter has to decide whether to
NodeFilter.FilterResult.CONTINUE
),NodeFilter.FilterResult.SKIP_CHILDREN
),NodeFilter.FilterResult.SKIP_ENTIRELY
),NodeFilter.FilterResult.REMOVE
),NodeFilter.FilterResult.STOP
).NodeFilter.FilterResult.SKIP_CHILDREN
and NodeFilter.FilterResult.SKIP_ENTIRELY
is that the first
will invoke tail(org.jsoup.nodes.Node, int)
on the node, while the latter will not.
Within tail(org.jsoup.nodes.Node, int)
, both are equivalent to NodeFilter.FilterResult.CONTINUE
.
Modifier and Type | Interface and Description |
---|---|
static class |
NodeFilter.FilterResult
Filter decision.
|
Modifier and Type | Method and Description |
---|---|
NodeFilter.FilterResult |
head(Node node,
int depth)
Callback for when a node is first visited.
|
NodeFilter.FilterResult |
tail(Node node,
int depth)
Callback for when a node is last visited, after all of its descendants have been visited.
|
NodeFilter.FilterResult head(Node node, int depth)
node
- the node being visited.depth
- the depth of the node, relative to the root node. E.g., the root node has depth 0, and a child node of that will have depth 1.NodeFilter.FilterResult tail(Node node, int depth)
node
- the node being visited.depth
- the depth of the node, relative to the root node. E.g., the root node has depth 0, and a child node of that will have depth 1.