com.phoenixst.plexus.util
public class FilteredTraverser extends Object implements Traverser
Traverser. Because this class must
advance the underlying Traverser to function
properly, FilteredTraverser and FilteredTraverser may delegate to
Graph.removeNode( node ) and Graph.removeEdge( edge ) in some situations.
Since: 1.0
Version: $Revision: 1.19 $
| Constructor Summary | |
|---|---|
| FilteredTraverser(Traverser delegate, Predicate traverserPredicate)
Creates a new FilteredTraverser which will throw
an IllegalStateException if remove()
or removeEdge() is called after
hasNext() without an intervening call to
next(). | |
| FilteredTraverser(Graph graph, Traverser delegate, Predicate traverserPredicate)
Creates a new FilteredTraverser which will have
remove and removeEdge delegate to Graph.removeNode( node ) and Graph.removeEdge( edge ) if necessary.
| |
| Method Summary | |
|---|---|
| Graph.Edge | getEdge() |
| boolean | hasNext() |
| Object | next() |
| void | remove() |
| void | removeEdge() |
FilteredTraverser which will throw
an IllegalStateException if remove()
or removeEdge() is called after
hasNext() without an intervening call to
next().FilteredTraverser which will have
remove and removeEdge delegate to Graph.removeNode( node ) and Graph.removeEdge( edge ) if necessary.
Depending upon the Graph implementation, this may
invalidate this Traverser.