|
Plexus v0.13.1 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.phoenixst.plexus.util.FilteredTraverser
public class FilteredTraverser
A simple filtered Traverser. Because this class must
advance the underlying Traverser to function
properly, remove() and removeEdge() may delegate to
Graph.removeNode( node ) and Graph.removeEdge( edge ) in some situations.
| Constructor Summary | |
|---|---|
FilteredTraverser(Graph graph,
Traverser delegate,
org.apache.commons.collections.Predicate traverserPredicate)
Creates a new FilteredTraverser which will have
remove() and removeEdge() delegate to Graph.removeNode( node ) and Graph.removeEdge( edge ) if necessary. |
|
FilteredTraverser(Traverser delegate,
org.apache.commons.collections.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(). |
|
| Method Summary | |
|---|---|
Graph.Edge |
getEdge()
Returns the Edge which was traversed to get to
the last node returned by next(), or
null if no Edge was traversed. |
boolean |
hasNext()
|
Object |
next()
|
void |
remove()
|
void |
removeEdge()
Removes from the underlying Graph the
Edge that would be returned by getEdge() (optional operation). |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public FilteredTraverser(Traverser delegate,
org.apache.commons.collections.Predicate traverserPredicate)
FilteredTraverser which will throw
an IllegalStateException if remove()
or removeEdge() is called after
hasNext() without an intervening call to
next().
public FilteredTraverser(Graph graph,
Traverser delegate,
org.apache.commons.collections.Predicate traverserPredicate)
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.
| Method Detail |
|---|
public boolean hasNext()
hasNext in interface Iteratorpublic Object next()
next in interface Iteratorpublic void remove()
remove in interface Iteratorpublic Graph.Edge getEdge()
TraverserEdge which was traversed to get to
the last node returned by next(), or
null if no Edge was traversed. This
call can be made only if remove() or removeEdge() has not been called after the last
call to next().
getEdge in interface TraverserEdge which was traversed to get to
the last node returned by next(), or
null if no Edge was traversed.public void removeEdge()
TraverserGraph the
Edge that would be returned by getEdge() (optional operation). If no Edge was
traversed (as in the root of a breadth-first search), this
method throws a IllegalStateException. This
method can be called only once per call to next(). The behavior of a traverser is unspecified if the
underlying graph structure is modified while the traversal is
in progress in any way other than by calling this method or
remove().
removeEdge in interface Traverser
|
Plexus v0.13.1 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||