com.raritantechnologies.utils.tree.filter
Class FilteredTreeBuilder

java.lang.Object
  extended bycom.raritantechnologies.utils.tree.filter.FilteredTreeBuilder
All Implemented Interfaces:
IConfigurable, ITreeBuilder

public class FilteredTreeBuilder
extends java.lang.Object
implements ITreeBuilder

Filters a tree TreeRoot using an ITreeFilter after initial build.

XML Configuration Template:
   <TreeBuilder class="com.raritantechnologies.utils.tree.filter.FilteredTreeBuilder" >

     <TreeBuilder class="[ class of com.raritantechnologies.utils.tree.ITreeBuilder ]" >

     </TreeBuilder>

     <!-- One or More TreeFilters that will be executed in order -->
     <TreeFilter class="[ class of com.raritantechnologies.utils.tree.ITreeFilter ]" >

     </TreeFilter>

  </TreeBuilder>
 

Developed by Raritan Technologies Inc..

Author:
Ted Sullivan

Field Summary
 
Fields inherited from interface com.raritantechnologies.utils.tree.ITreeBuilder
TEMPLATE
 
Constructor Summary
FilteredTreeBuilder()
           
 
Method Summary
 TreeRoot buildTree(RaritanPageContext rpc)
           
 void initialize(org.w3c.dom.Element elem)
          Initializes the object from an XML tag or element.
 TreeRoot refreshTree(TreeRoot tree, RaritanPageContext rpc)
          Method to enable dynamic or refreshable trees.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FilteredTreeBuilder

public FilteredTreeBuilder()
Method Detail

buildTree

public TreeRoot buildTree(RaritanPageContext rpc)
Specified by:
buildTree in interface ITreeBuilder

refreshTree

public TreeRoot refreshTree(TreeRoot tree,
                            RaritanPageContext rpc)
Description copied from interface: ITreeBuilder

Method to enable dynamic or refreshable trees. Static tree builders should implement this by returning the passed in tree object. Dynamic tree builders should implement this by returning the output of their buildTree( ) method or by pruning/growing the given tree as appropriate.

ITreeBuilders that support "lazy tree node evaluation" should use this method to determine which nodes in the tree need to be updated (TreeNode.needsUpdate( ) method returns true.

Specified by:
refreshTree in interface ITreeBuilder

initialize

public void initialize(org.w3c.dom.Element elem)
Description copied from interface: IConfigurable
Initializes the object from an XML tag or element. This method is called by the Framework as part of the application initializtion. see ConfigurationManager, XMLConfigurationManager, XMLSearchFieldMapFactory, XMLSearchSourceFactory. Configurable objects that are owned or contained by other configurable objects will be initialized in by the parent object.

Specified by:
initialize in interface IConfigurable