| java.lang.Object org.apache.jorphan.collections.SearchByClass
SearchByClass | public class SearchByClass implements HashTreeTraverser(Code) | | Useful for finding all nodes in the tree that represent objects of a
particular type. For instance, if your tree contains all strings, and a few
StringBuffer objects, you can use the SearchByClass traverser to find all the
StringBuffer objects in your tree.
Usage is simple. Given a
HashTree object "tree", and a SearchByClass
object:
HashTree tree = new HashTree();
// ... tree gets filled with objects
SearchByClass searcher = new SearchByClass(StringBuffer.class);
tree.traverse(searcher);
Iterator iter = searcher.getSearchResults().iterator();
while (iter.hasNext()) {
StringBuffer foundNode = (StringBuffer) iter.next();
HashTree subTreeOfFoundNode = searcher.getSubTree(foundNode);
// .... do something with node and subTree...
}
See Also: HashTree See Also: HashTreeTraverser author: Michael Stover (mstover1 at apache.org) version: $Revision: 493784 $ |
Constructor Summary | |
public | SearchByClass() Creates an instance of SearchByClass. | public | SearchByClass(Class searchClass) Creates an instance of SearchByClass, and sets the Class to be searched
for. |
SearchByClass | public SearchByClass()(Code) | | Creates an instance of SearchByClass. However, without setting the Class
to search for, it will be a useless object.
|
SearchByClass | public SearchByClass(Class searchClass)(Code) | | Creates an instance of SearchByClass, and sets the Class to be searched
for.
Parameters: searchClass - |
getSearchResults | public Collection getSearchResults()(Code) | | After traversing the HashTree, call this method to get a collection of
the nodes that were found.
Collection All found nodes of the requested type |
getSubTree | public HashTree getSubTree(Object root)(Code) | | Given a specific found node, this method will return the sub tree of that
node.
Parameters: root - the node for which the sub tree is requested HashTree |
processPath | public void processPath()(Code) | | |
subtractNode | public void subtractNode()(Code) | | |
|
|