Class HelpTreeAdaptor

  • All Implemented Interfaces:
    com.sun.jsftemplating.component.factory.tree.TreeAdaptor

    public class HelpTreeAdaptor
    extends com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase

    The HelpTreeAdaptor implementation must have a public static HelpTreeAdaptor getInstance(FacesContext, LayoutComponent, UIComponent) method in order to get access to an instance of the HelpTreeAdaptor instance.

    This class is used by DynamicTreeNodeFactory.

    Author:
    Ken Paulsen ([email protected])
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected HelpTreeAdaptor​(com.sun.jsftemplating.layout.descriptors.LayoutComponent desc, jakarta.faces.component.UIComponent parent)
      This constructor saves the LayoutComponent descriptor and the UIComponent associated with this TreeAdaptor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      List getChildTreeNodeObjects​(Object nodeObject)
      Returns child TOCItems for the given TOCItem or TOC model Object.
      Map<String,​jakarta.faces.component.UIComponent> getFacets​(jakarta.faces.component.UIComponent comp, Object nodeObject)
      This method returns any facets that should be applied to the TreeNode (comp).
      String getFactoryClass​(Object nodeObject)
      This method returns the UIComponent factory class implementation that should be used to create a TreeNode for the given tree node model object.
      Map<String,​Object> getFactoryOptions​(Object nodeObject)
      This method returns the "options" that should be supplied to the factory that creates the TreeNode for the given tree node model object.
      Map getHandlersByType​(jakarta.faces.component.UIComponent comp, Object nodeObject)
      Advanced framework feature which provides better handling for things such as expanding TreeNodes, beforeEncode, and other events.
      String getId​(Object nodeObject)
      This method returns the id for the given tree node model object.
      static com.sun.jsftemplating.component.factory.tree.TreeAdaptor getInstance​(jakarta.faces.context.FacesContext ctx, com.sun.jsftemplating.layout.descriptors.LayoutComponent desc, jakarta.faces.component.UIComponent parent)
      This method provides access to an HelpTreeAdaptor instance.
      void init()
      This method is called shortly after getInstance(FacesContext, LayoutComponent, UIComponent).
      • Methods inherited from class com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase

        getFacets, getLayoutComponent, getParentUIComponent, getTreeNodeObject, setLayoutComponent, setParentUIComponent, setTreeNodeObject
    • Constructor Detail

      • HelpTreeAdaptor

        protected HelpTreeAdaptor​(com.sun.jsftemplating.layout.descriptors.LayoutComponent desc,
                                  jakarta.faces.component.UIComponent parent)

        This constructor saves the LayoutComponent descriptor and the UIComponent associated with this TreeAdaptor. This constructor is used by the getInstance() method.

    • Method Detail

      • getInstance

        public static com.sun.jsftemplating.component.factory.tree.TreeAdaptor getInstance​(jakarta.faces.context.FacesContext ctx,
                                                                                           com.sun.jsftemplating.layout.descriptors.LayoutComponent desc,
                                                                                           jakarta.faces.component.UIComponent parent)

        This method provides access to an HelpTreeAdaptor instance. Each time it is invoked, it returns a new instance.

      • init

        public void init()

        This method is called shortly after getInstance(FacesContext, LayoutComponent, UIComponent). It provides a place for post-creation initialization to take occur.

        Specified by:
        init in interface com.sun.jsftemplating.component.factory.tree.TreeAdaptor
        Overrides:
        init in class com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase
      • getChildTreeNodeObjects

        public List getChildTreeNodeObjects​(Object nodeObject)

        Returns child TOCItems for the given TOCItem or TOC model Object. If null is supplied, null is returned any other Object type will result in an IllegalArgumentException.

      • getFactoryOptions

        public Map<String,​Object> getFactoryOptions​(Object nodeObject)

        This method returns the "options" that should be supplied to the factory that creates the TreeNode for the given tree node model object.

        Some useful options for the standard TreeNode component include:

        • text
        • url
        • imageURL
        • target
        • action
        • actionListener
        • expanded

        See Tree / TreeNode component documentation for more details.

      • getId

        public String getId​(Object nodeObject)

        This method returns the id for the given tree node model object.

      • getFacets

        public Map<String,​jakarta.faces.component.UIComponent> getFacets​(jakarta.faces.component.UIComponent comp,
                                                                               Object nodeObject)

        This method returns any facets that should be applied to the TreeNode (comp). Useful facets for the sun TreeNode component are: "content" and "image".

        Facets that already exist on comp, or facets that are directly added to comp do not need to be returned from this method.

        This implementation directly adds a "content" and "image" facet and returns null from this method.

        Parameters:
        comp - The tree node UIComponent.
        nodeObject - The (model) object representing the tree node.
      • getHandlersByType

        public Map getHandlersByType​(jakarta.faces.component.UIComponent comp,
                                     Object nodeObject)

        Advanced framework feature which provides better handling for things such as expanding TreeNodes, beforeEncode, and other events.

        This method should return a Map of List of Handler objects. Each List in the Map should be registered under a key that cooresponds to to the "event" in which the Handlers should be invoked.

        Specified by:
        getHandlersByType in interface com.sun.jsftemplating.component.factory.tree.TreeAdaptor
        Overrides:
        getHandlersByType in class com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase
      • getFactoryClass

        public String getFactoryClass​(Object nodeObject)

        This method returns the UIComponent factory class implementation that should be used to create a TreeNode for the given tree node model object.

        This implementation returns the default return value, unless the nodeObject represents the root node. In that case it will return a the TreeFactory factory class:

        com.sun.jsftemplating.component.factory.sun.TreeFactory

        Specified by:
        getFactoryClass in interface com.sun.jsftemplating.component.factory.tree.TreeAdaptor
        Overrides:
        getFactoryClass in class com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase