Class ListTreeAdaptor

java.lang.Object
com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase
org.glassfish.admingui.common.tree.ListTreeAdaptor
All Implemented Interfaces:
com.sun.jsftemplating.component.factory.tree.TreeAdaptor

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

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

This class is used by DynamicTreeNodeFactory.

Valid options for this implementation:

  • children (required) -- The children to display.
  • text -- The root TreeNode text.
  • url -- The root TreeNode URL.
  • imageURL -- The root TreeNode Image URL.
  • target -- The target of the link for the root TreeNode.
  • action -- The JSF EL expression to an action associated with the root TreeNode.
  • actionListener -- The turner JSF actionListener for the root TreeNode.
  • expanded -- Whether the root TreeNode should be expanded by default (true/false)
  • rendered -- The JSF rendered flag for the root TreeNode.
  • childNameKey -- When the child is represented by a Map, the "key" used to extract the name of the TreeNode from the Map.
  • childURL -- The child TreeNode URL.
  • childImageURL -- The child TreeNode Image URL.
  • childCommand -- The child TreeNode JSFTemplating command.
  • childTarget -- The child TreeNode link target.
  • childAction --The child TreeNode JSF action.
  • targetConfigName -- The child TreeNode target config name.
  • childActionListener -- The JSF ActionListener for the child TreeNode hyperlink.
  • childExpanded -- Boolean flag indicating whether to render the child TreeNodes expanded.
Author:
Ken Paulsen (ken.paulsen@oracle.com)
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    ListTreeAdaptor(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

    Modifier and Type
    Method
    Description
    Returns child TreeNodes for the given TreeNode 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).
    This method returns the "options" that should be supplied to the factory that creates the TreeNode for the given tree node model object.
    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.
    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 ListTreeAdaptor instance.
    void
    This method is called shortly after getInstance(FacesContext, LayoutComponent, UIComponent).

    Methods inherited from class com.sun.jsftemplating.component.factory.tree.TreeAdaptorBase

    getFacets, getFactoryClass, getLayoutComponent, getParentUIComponent, getTreeNodeObject, setLayoutComponent, setParentUIComponent, setTreeNodeObject

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ListTreeAdaptor

      protected ListTreeAdaptor(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 Details

    • 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 ListTreeAdaptor 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 TreeNodes for the given TreeNode model Object.

    • 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