com.raritantechnologies.utils.tree.taglibrary
Class TreeSearchElementRenderer

java.lang.Object
  extended bycom.raritantechnologies.utils.tree.taglibrary.TreeSearchElementRenderer
All Implemented Interfaces:
IConfigurable, ISearchElementRenderer

public class TreeSearchElementRenderer
extends java.lang.Object
implements ISearchElementRenderer

Renders a broweable tree that executes search actions via node hyperlinks. Contains an ITreeBuilder to create the Tree object and an ITreeRenderer to create a UI for the tree. An ITreeNodeHyperlinkRenderer may also be included for specialized URL generation.

XML Configuration Template:
   <SearchElementRenderer class="com.raritantechnologies.utils.tree.taglibrary.TreeSearchElementRenderer" 
                             cacheOnRequestParams="[yes|no|true|false|1|0]"
                             cacheName="[ name to cache parameters]"
                             cacheOnNullValue="[true(default)|false - reset if cache parameter is null or empty]"
                             cacheParams="[ list of parameters that will be monitored for a refresh event ]"
                             cacheTreeName="[ (optional) name of cached tree ]"
                             actionURL="[base URL for tree hyperlinks]"
                             treeTitle="[ (optional) title to be rendered above Tree ]"
                             nodeHyperlinkRenderer="[ class of ITreeNodeHyperlinkRenderer ]"
                             treeBuilderName="[ name of TreeBuilder system object ]"
                             initialTreeState="open|closed(default)"
                             activeNodeHiddenField="[ optional name of search form field with active node path ]"
                             renderEmptyTree="[ true|false(default) - if true will render root folder even if tree is empty ]"
                             noTreeDisplay="[ (optional) string to display if tree is empty ]"
                             checkForUpdateNeeded="[ true|false(default) ]" >

     <!-- The TreeBuilder that will create the renderable TreeRoot object -->
     <TreeBuilder class="[ class of com.raritantechnologies.utils.tree.ITreeBuilder ]" >
        <!-- configuration parameters of TreeBuilder -->
     </TreeBuilder>

     <!-- Optional TreeFilter that can modify the TreeRoot object -->
     <TreeFilter class="[ class of com.raritantechnologies.utils.tree.ITreeFilter ]" >

     </TreeFilter>

     <TreeRenderer class="[ class of com.raritantechnologies.utils.tree.renderer.ITreeRenderer ]" >

     </TreeRenderer>

     <!-- One or more (Optional) request parameters that should be include in tree node hyperlinks -->
     <RequestParam name="[ name of http parameter ]" />

     <!-- One or more (Optional) fixed parameters that should be include in tree node hyperlinks -->
     <FixedParam name="[ name of http parameter ]" value="[ value of parameter ]" />

     <!-- Configurable ITreeNodeHyperlinkRenderer -->
     <LinkRenderer class="[ class of com.raritantechnologies.utils.tree.ITreeNodeHyperlinkRenderer ]" >

     </LinkRenderer>

     <SubmitHandler name="[ name of submitHandler ]" >

     </SubmitHandler>

   </SearchElementRenderer>
 

Developed by Raritan Technologies Inc..

Author:
Ted Sullivan

Constructor Summary
TreeSearchElementRenderer()
           
 
Method Summary
 java.lang.String getBody(ISearchFormRenderer parent, RaritanPageContext pageContext)
          Returns the element html fragment.
 ISearchElementRenderer getRenderer(java.lang.String name)
          Returns ISearchElementRenderer of this render or a nested renderer matching the name given or null if no match is found.
 void initialize(org.w3c.dom.Element elem)
          Initialize renderer-specific parameters from the configuration XML tag.
 boolean isHidden(ISearchFormRenderer parent, RaritanPageContext pageContext)
           
 void setEnable(boolean enabled)
          Enable/Disable the renderer.
 void setTreeBuilder(ITreeBuilder treeBuilder)
           
 void setTreeRenderer(ITreeRenderer treeRenderer)
           
 void updateQueryMap(RaritanPageContext pageContext, OrderedMap queryMap)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TreeSearchElementRenderer

public TreeSearchElementRenderer()
Method Detail

getBody

public java.lang.String getBody(ISearchFormRenderer parent,
                                RaritanPageContext pageContext)
Description copied from interface: ISearchElementRenderer
Returns the element html fragment.

Specified by:
getBody in interface ISearchElementRenderer

setEnable

public void setEnable(boolean enabled)
Enable/Disable the renderer. Disabled renderers are not included in the html output of an ISearchFormRenderer.

Specified by:
setEnable in interface ISearchElementRenderer

getRenderer

public ISearchElementRenderer getRenderer(java.lang.String name)
Returns ISearchElementRenderer of this render or a nested renderer matching the name given or null if no match is found.

Specified by:
getRenderer in interface ISearchElementRenderer

isHidden

public boolean isHidden(ISearchFormRenderer parent,
                        RaritanPageContext pageContext)
Specified by:
isHidden in interface ISearchElementRenderer

initialize

public void initialize(org.w3c.dom.Element elem)
Description copied from interface: ISearchElementRenderer
Initialize renderer-specific parameters from the configuration XML tag.

Specified by:
initialize in interface ISearchElementRenderer

updateQueryMap

public void updateQueryMap(RaritanPageContext pageContext,
                           OrderedMap queryMap)

setTreeBuilder

public void setTreeBuilder(ITreeBuilder treeBuilder)

setTreeRenderer

public void setTreeRenderer(ITreeRenderer treeRenderer)