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
.