org.apache.myfaces.trinidad.component

## Class UIXTree

- java.lang.Object
- - javax.faces.component.UIComponent
  - - org.apache.myfaces.trinidad.component.UIXComponent
    - - org.apache.myfaces.trinidad.component.UIXComponentBase
      - - org.apache.myfaces.trinidad.component.UIXCollection
        - - org.apache.myfaces.trinidad.component.UIXHierarchy
          - - org.apache.myfaces.trinidad.component.UIXTree

- All Implemented Interfaces:
    EventListener, javax.faces.component.NamingContainer, javax.faces.component.PartialStateHolder, javax.faces.component.StateHolder, javax.faces.component.TransientStateHolder, javax.faces.event.ComponentSystemEventListener, javax.faces.event.FacesListener, javax.faces.event.SystemEventListenerHolder, CollectionComponent, LocalRowKeyIndex, RowKeyIndex, TreeLocalRowKeyIndex
  Direct Known Subclasses:
    CoreTree, UIXTreeTable

      public class UIXTree
      extends UIXHierarchy
      implements javax.faces.component.NamingContainer

  Apache Trinidad tree components are used to display hierarchical data. For example, if we have a personnel organization chart depicting all the direct reports under each employee, we could use a tree component to display this chart. While each element (employee) in the hierarchy may have any number of child elements, each element can only have one parent element.
  The Apache Trinidad tree components use a model to access the data in the underlying hierarchy. The specific model class is org.apache.myfaces.trinidad.model.TreeModel. You may find the org.apache.myfaces.trinidad.model.ChildPropertyTreeModel class useful when constructing a TreeModel.
  The tree components use a stamping strategy similar to the Trinidad Table component. Child components are used to display the data for each element in the tree. Each child component is not recreated per element; instead, each child is repeatedly rendered (stamped) once per element. Because of this stamping behavior, only certain types of components are supported as children. Supported components include all components with no behavior and most components that implement the EditableValueHolder or ActionSource interfaces. Each time a child component is stamped, the data for the current element is copied into an EL reachable property. The name of this property is defined by the var property on the tree component. Once the tree has completed rendering, this property is removed (or reverted back to its previous value).
  When the user expands or collapses a subtree the tree generates a DisclosureEvent. This event has an isExpanded method that returns whether the user wants to expand or collapse the subtree of a particular element. That particular element is made current on the Tree before the event is delivered.
  The Trinidad tree components use an instance of the org.apache.myfaces.trinidad.model.RowKeySet class to keep track of which elements are expanded. This instance is stored as the "expandedRowKeys" attribute on the component. You may use this instance to programmatically control the expand/collapse state of an element in the hierarchy.

  #### Events:

  Type | Phases | Description
  --- | --- | ---
  `org.apache.myfaces.trinidad.event.RowDisclosureEvent` | Apply Request Values Invoke Application | The expansion event is generated for a table when the detail facet of a row is expanded or collapsed. For tree or a treeTable, the expansion event is generated when tree nodes are expanded or collapsed.
  `org.apache.myfaces.trinidad.event.SelectionEvent` | Apply Request Values Invoke Application | The selection event is delivered when the table selection changes.
  `org.apache.myfaces.trinidad.event.FocusEvent` | Apply Request Values Invoke Application | Event delivered when user clicks to focus on (or zoom into) a particular element's subtree of children. The TreeTable responds to this event by modifying the "focusPath" property appropriately. Subsequently, any registered FocusListener instances are called.
  `org.apache.myfaces.trinidad.event.AttributeChangeEvent` | Invoke Application Apply Request Values | Event delivered to describe an attribute change. Attribute change events are not delivered for any programmatic change to a property. They are only delivered when a renderer changes a property without the application's specific request. An example of an attribute change event might include the width of a column that supported client-side resizing.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.myfaces.trinidad.component.UIXCollection

      `UIXCollection.NoColumnFacetsVisitContext`

    - ### Nested classes/interfaces inherited from class org.apache.myfaces.trinidad.component.UIXComponentBase

      `UIXComponentBase.ComponentSystemEventListenerWrapper`

    - ### Nested classes/interfaces inherited from interface org.apache.myfaces.trinidad.model.LocalRowKeyIndex

      `LocalRowKeyIndex.Confidence, LocalRowKeyIndex.LocalCachingStrategy`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `COMPONENT_FAMILY`
    `static String` | `COMPONENT_TYPE`
    `static PropertyKey` | `DISCLOSED_ROW_KEYS_KEY`
    `static PropertyKey` | `FOCUS_LISTENER_KEY`
    `static PropertyKey` | `FOCUS_ROW_KEY_KEY`
    `static PropertyKey` | `IMMEDIATE_KEY`
    `static PropertyKey` | `INITIALLY_EXPANDED_KEY`
    `static String` | `NODE_STAMP_FACET`
    `static PropertyKey` | `ROW_DISCLOSURE_LISTENER_KEY`
    `static PropertyKey` | `SELECTED_ROW_KEYS_KEY`
    `static PropertyKey` | `SELECTION_LISTENER_KEY`
    `static FacesBean.Type` | `TYPE`
    `static PropertyKey` | `VALUE_KEY`
    `static PropertyKey` | `VAR_STATUS_KEY`

    - ### Fields inherited from class org.apache.myfaces.trinidad.component.UIXCollection

      `VAR_KEY`

    - ### Fields inherited from class org.apache.myfaces.trinidad.component.UIXComponentBase

      `BINDING_KEY, ID_KEY, RENDERED_KEY, RENDERER_TYPE_KEY, TRANSIENT_KEY`

    - ### Fields inherited from class javax.faces.component.UIComponent

      `ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY`

    - ### Fields inherited from interface javax.faces.component.NamingContainer

      `SEPARATOR_CHAR`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `UIXTree()` Construct an instance of the UIXTree.
    `protected` | `UIXTree(String rendererType)` Construct an instance of the UIXTree.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `__encodeBegin(javax.faces.context.FacesContext context)`
    `void` | `addFocusListener(FocusListener listener)` Adds a focus listener.
    `void` | `addRowDisclosureListener(RowDisclosureListener listener)` Adds a rowDisclosure listener.
    `void` | `addSelectionListener(SelectionListener listener)` Adds a selection listener.
    `void` | `broadcast(javax.faces.event.FacesEvent event)` Delivers an event.
    `CollectionModel` | `createCollectionModel(CollectionModel current, Object value)` Creates the CollectionModel to use with this component.
    `protected FacesBean` | `createFacesBean(String rendererType)`
    `protected FacesBean.Type` | `getBeanType()`
    `RowKeySet` | `getDisclosedRowKeys()` Gets the set of disclosed rows for this component.
    `String` | `getFamily()`
    `javax.el.MethodExpression` | `getFocusListener()` Gets a method reference to a focus listener
    `FocusListener[]` | `getFocusListeners()` Returns an array of attached focus listeners.
    `Object` | `getFocusRowKey()` Gets the rowKey of the currently focused row.
    `javax.faces.component.UIComponent` | `getNodeStamp()` the component to use to stamp each element in the tree.
    `javax.el.MethodExpression` | `getRowDisclosureListener()` Gets a method reference to an ExpansionListener
    `RowDisclosureListener[]` | `getRowDisclosureListeners()` Returns an array of attached rowDisclosure listeners.
    `RowKeySet` | `getSelectedRowKeys()` Gets the selection state for this component.
    `javax.el.MethodExpression` | `getSelectionListener()` Gets a method reference to a selection listener
    `SelectionListener[]` | `getSelectionListeners()` Returns an array of attached selection listeners.
    `Object` | `getValue()` Gets the hierarchy of tree data - must be of type org.apache.myfaces.trinidad.model.TreeModel
    `String` | `getVarStatus()` Gets Name of the EL variable used to reference the varStatus information.
    `boolean` | `isImmediate()` Gets whether or not data validation - client-side or server-side - should take place when events are generated by this component.
    `boolean` | `isInitiallyExpanded()` Gets If upon initial rendering, the current subtree under the focused row path should be expanded.
    `protected void` | `postCreateCollectionModel(CollectionModel model)` Hook called with the result of `createCollectionModel`.
    `protected void` | `processFacetsAndChildren(javax.faces.context.FacesContext context, javax.faces.event.PhaseId phaseId)` Process this component's facets and children.
    `void` | `queueEvent(javax.faces.event.FacesEvent event)` Sets the phaseID of UI events depending on the "immediate" property.
    `void` | `removeFocusListener(FocusListener listener)` Removes a focus listener.
    `void` | `removeRowDisclosureListener(RowDisclosureListener listener)` Removes a rowDisclosure listener.
    `void` | `removeSelectionListener(SelectionListener listener)` Removes a selection listener.
    `void` | `setDisclosedRowKeys(RowKeySet disclosedRowKeys)` Sets the set of disclosed rows for this component.
    `void` | `setFocusListener(javax.el.MethodExpression focusListener)` Sets a method reference to a focus listener
    `void` | `setFocusRowKey(Object focusRowKey)` Sets the rowKey of the currently focused row.
    `void` | `setImmediate(boolean immediate)` Sets whether or not data validation - client-side or server-side - should take place when events are generated by this component.
    `void` | `setInitiallyExpanded(boolean initiallyExpanded)` Sets If upon initial rendering, the current subtree under the focused row path should be expanded.
    `void` | `setNodeStamp(javax.faces.component.UIComponent nodeStampFacet)` the component to use to stamp each element in the tree.
    `void` | `setRowDisclosureListener(javax.faces.el.MethodBinding binding)` Deprecated.
    `void` | `setRowDisclosureListener(javax.el.MethodExpression rowDisclosureListener)` Sets a method reference to an ExpansionListener
    `void` | `setSelectedRowKeys(RowKeySet selectedRowKeys)` Sets the selection state for this component.
    `void` | `setSelectionListener(javax.faces.el.MethodBinding binding)` Deprecated.
    `void` | `setSelectionListener(javax.el.MethodExpression selectionListener)` Sets a method reference to a selection listener
    `void` | `setValue(Object value)` Sets the hierarchy of tree data - must be of type org.apache.myfaces.trinidad.model.TreeModel
    `void` | `setVarStatus(String varStatus)` Sets Name of the EL variable used to reference the varStatus information.
    `protected boolean` | `visitChildren(javax.faces.component.visit.VisitContext visitContext, javax.faces.component.visit.VisitCallback callback)` Override default children visiting code to visit the facets and facets of the columns before delegating to the `visitData` to visit the individual rows of data.
    `protected boolean` | `visitData(javax.faces.component.visit.VisitContext visitContext, javax.faces.component.visit.VisitCallback callback)` Visit the rows and children of the columns of the collection per row-index.

    - ### Methods inherited from class org.apache.myfaces.trinidad.component.UIXHierarchy

      `areRowsLocallyAvailable, areRowsLocallyAvailable, areRowsLocallyAvailable, createVarStatusMap, enterContainer, exitContainer, getAllAncestorContainerRowKeys, getContainerRowKey, getContainerRowKey, getDepth, getDepth, getFirst, getRows, getStamps, getTreeModel, isChildCollectionLocallyAvailable, isChildCollectionLocallyAvailable, isChildCollectionLocallyAvailable, isContainer, isContainerEmpty, visitHierarchy, visitLevel`

    - ### Methods inherited from class org.apache.myfaces.trinidad.component.UIXCollection

      `areRowsAvailable, areRowsAvailable, areRowsAvailable, areRowsLocallyAvailable, areRowsLocallyAvailable, areRowsLocallyAvailable, clearCachedRow, clearCachedRow, clearCachedRows, clearCachedRows, clearCurrencyStringCache, clearLocalCache, decodeChildrenImpl, defaultVisitChildren, encodeBegin, encodeEnd, ensureRowsAvailable, getCachingStrategy, getClientRowKey, getClientRowKeyManager, getCollectionModel, getCollectionModel, getContainerClientId, getCurrencyString, getEstimatedRowCount, getEstimatedRowCountConfidence, getRowCount, getRowData, getRowData, getRowData, getRowIndex, getRowKey, getSortCriteria, getVar, invokeOnComponent, isRowAvailable, isRowAvailable, isRowAvailable, isRowLocallyAvailable, isRowLocallyAvailable, isSortable, postRowDataChange, preRowDataChange, processComponent, processDecodes, processEvent, processFlattenedChildrenBegin, processRestoreState, processSaveState, processUpdates, processValidators, resetStampState, restoreStampState, restoreState, saveStampState, saveState, setClientRowKey, setCurrencyString, setRowIndex, setRowKey, setSortCriteria, setupELVariable, setupVisitingContext, setVar, tearDownVisitingContext, updateChildrenImpl, validateChildrenImpl, visitChildrenWithoutIterating, visitUnstampedFacets`

    - ### Methods inherited from class org.apache.myfaces.trinidad.component.UIXComponentBase

      `adaptMethodBinding, addAttributeChange, addAttributeChangeListener, addClientBehavior, addComponentChange, addComponentChange, addComponentChangeFilter, addFacesListener, broadcastToMethodBinding, broadcastToMethodExpression, clearCachedClientIds, clearInitialState, decode, decodeChildren, encodeChildren, findComponent, getAttributeChangeListener, getAttributeChangeListeners, getAttributes, getBooleanProperty, getChildCount, getChildren, getClientBehaviors, getClientId, getComponentChangeFilters, getContainerClientId, getDefaultEventName, getFacesBean, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacetNames, getFacets, getFacetsAndChildren, getId, getIntProperty, getLifecycleRenderer, getListenersForEventClass, getParent, getPassThroughAttributes, getProperty, getPropertyKey, getRenderedFacetsAndChildren, getRenderer, getRendererType, getRendersChildren, getValueBinding, getValueExpression, initialStateMarked, invokeOnChildrenComponents, invokeOnNamingContainerComponent, isRendered, isTransient, markInitialState, removeAttributeChangeListener, removeComponentChangeFilter, removeFacesListener, satisfiesPartialTrigger, setAttributeChangeListener, setAttributeChangeListener, setBooleanProperty, setId, setIntProperty, setParent, setProperty, setRendered, setRendererType, setTransient, setupFlattenedChildrenContext, setupFlattenedContext, setValueBinding, setValueExpression, subscribeToEvent, tearDownFlattenedChildrenContext, tearDownFlattenedContext, toString, unsubscribeFromEvent, updateChildren, validateChildren`

    - ### Methods inherited from class org.apache.myfaces.trinidad.component.UIXComponent

      `addPartialTarget, broadcastInContext, clearCachedClientIds, defaultGetRenderedFacetsAndChildren, encodeFlattenedChild, encodeFlattenedChildren, getLogicalParent, getLogicalParent, getStateHelper, getStateHelper, isVisitable, partialEncodeVisit, processFlattenedChildren, processFlattenedChildren, processFlattenedChildren, processFlattenedChildren, setPartialTarget, setupChildrenEncodingContext, setupChildrenVisitingContext, setupEncodingContext, setUpEncodingContext, tearDownChildrenEncodingContext, tearDownChildrenVisitingContext, tearDownEncodingContext, visitAllChildren, visitChildren, visitTree, visitTree`

    - ### Methods inherited from class javax.faces.component.UIComponent

      `encodeAll, getClientId, getCompositeComponentParent, getCurrentComponent, getCurrentCompositeComponent, getNamingContainer, getPassThroughAttributes, getResourceBundleMap, getTransientStateHelper, getTransientStateHelper, isCompositeComponent, isInView, popComponentFromEL, pushComponentToEL, restoreTransientState, saveTransientState, setInView`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.apache.myfaces.trinidad.component.CollectionComponent

      `getVar`

    - ### Methods inherited from interface org.apache.myfaces.trinidad.model.RowKeyIndex

      `areRowsAvailable, areRowsAvailable, areRowsAvailable, getRowCount, getRowData, getRowData, getRowData, getRowIndex, getRowKey, isRowAvailable, isRowAvailable, isRowAvailable, setRowIndex, setRowKey`

    - ### Methods inherited from interface org.apache.myfaces.trinidad.model.LocalRowKeyIndex

      `areRowsLocallyAvailable, areRowsLocallyAvailable, areRowsLocallyAvailable, clearCachedRow, clearCachedRow, clearCachedRows, clearCachedRows, clearLocalCache, getCachingStrategy, getEstimatedRowCount, getEstimatedRowCountConfidence, isRowLocallyAvailable, isRowLocallyAvailable`

- - ### Field Detail

    - #### TYPE

          public static final FacesBean.Type TYPE

    - #### SELECTED_ROW_KEYS_KEY

          public static final PropertyKey SELECTED_ROW_KEYS_KEY

    - #### IMMEDIATE_KEY

          public static final PropertyKey IMMEDIATE_KEY

    - #### ROW_DISCLOSURE_LISTENER_KEY

          public static final PropertyKey ROW_DISCLOSURE_LISTENER_KEY

    - #### DISCLOSED_ROW_KEYS_KEY

          public static final PropertyKey DISCLOSED_ROW_KEYS_KEY

    - #### SELECTION_LISTENER_KEY

          public static final PropertyKey SELECTION_LISTENER_KEY

    - #### VAR_STATUS_KEY

          public static final PropertyKey VAR_STATUS_KEY

    - #### VALUE_KEY

          public static final PropertyKey VALUE_KEY

    - #### FOCUS_ROW_KEY_KEY

          public static final PropertyKey FOCUS_ROW_KEY_KEY

    - #### FOCUS_LISTENER_KEY

          public static final PropertyKey FOCUS_LISTENER_KEY

    - #### INITIALLY_EXPANDED_KEY

          public static final PropertyKey INITIALLY_EXPANDED_KEY

    - #### NODE_STAMP_FACET

          public static final String NODE_STAMP_FACET

      See Also:
        Constant Field Values

    - #### COMPONENT_FAMILY

          public static final String COMPONENT_FAMILY

      See Also:
        Constant Field Values

    - #### COMPONENT_TYPE

          public static final String COMPONENT_TYPE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### UIXTree

          public UIXTree()

      Construct an instance of the UIXTree.

    - #### UIXTree

          protected UIXTree(String rendererType)

      Construct an instance of the UIXTree.

  - ### Method Detail

    - #### setRowDisclosureListener

          @Deprecated
          public void setRowDisclosureListener(javax.faces.el.MethodBinding binding)

      Deprecated.

    - #### setSelectionListener

          @Deprecated
          public void setSelectionListener(javax.faces.el.MethodBinding binding)

      Deprecated.

    - #### queueEvent

          public void queueEvent(javax.faces.event.FacesEvent event)

      Sets the phaseID of UI events depending on the "immediate" property.
      Overrides:
        `queueEvent` in class `UIXCollection`
      Parameters:
        `event` - a FacesEvent

    - #### broadcast

          public void broadcast(javax.faces.event.FacesEvent event)
                         throws javax.faces.event.AbortProcessingException

      Delivers an event.
      Overrides:
        `broadcast` in class `UIXCollection`
      Parameters:
        `event` -
      Throws:
        `javax.faces.event.AbortProcessingException`

    - #### postCreateCollectionModel

          protected void postCreateCollectionModel(CollectionModel model)

      Description copied from class: `UIXCollection`
      Hook called with the result of `createCollectionModel`. Subclasses can use this method to perform initialization after the CollectionModel is fully initialized. Subclassers should call super before accessing any component state to ensure that superclass initialization has been performed.
      Overrides:
        `postCreateCollectionModel` in class `UIXCollection`
      Parameters:
        `model` - The model instance returned by``
      See Also:
        `UIXCollection.createCollectionModel(org.apache.myfaces.trinidad.model.CollectionModel, java.lang.Object)`

    - #### createCollectionModel

          public CollectionModel createCollectionModel(CollectionModel current,
                                              Object value)

      Description copied from class: `UIXCollection`
      Creates the CollectionModel to use with this component. The state of the UIComponent with the new model instance is not fully initialized until after this method returns. As a result, other component attributes that need a fully initialized model should not be initialized in this method. Instead, model-dependent initialization should be done in `postCreateCollectionModel`
      Overrides:
        `createCollectionModel` in class `UIXHierarchy`
      Parameters:
        `current` - the current CollectionModel, or null if there is none.
        `value` - this is the value returned from `UIXCollection.getValue()`
      See Also:
        `UIXCollection.postCreateCollectionModel(org.apache.myfaces.trinidad.model.CollectionModel)`

    - #### processFacetsAndChildren

          protected void processFacetsAndChildren(javax.faces.context.FacesContext context,
                                      javax.faces.event.PhaseId phaseId)

      Description copied from class: `UIXCollection`
      Process this component's facets and children. This method should call `UIXCollection.processComponent(javax.faces.context.FacesContext, javax.faces.component.UIComponent, javax.faces.event.PhaseId)` as many times as necessary for each facet and child. `UIXCollection.processComponent(javax.faces.context.FacesContext, javax.faces.component.UIComponent, javax.faces.event.PhaseId)` may be called repeatedly for the same child if that child is being stamped.
      Specified by:
        `processFacetsAndChildren` in class `UIXCollection`

    - #### visitChildren

          protected boolean visitChildren(javax.faces.component.visit.VisitContext visitContext,
                              javax.faces.component.visit.VisitCallback callback)

      Description copied from class: `UIXCollection`

      Override default children visiting code to visit the facets and facets of the columns before delegating to the `visitData` to visit the individual rows of data.

      Subclasses should override this method if they wish to change the way in which the non-stamped children are visited. If they wish to change the wash the the stamped children are visited, they should override `visitData` instead.

      Overrides:
        `visitChildren` in class `UIXCollection`
      Parameters:
        `visitContext` - the `VisitContext` for this visit
        `callback` - the `VisitCallback` instance
      Returns:
        `true` if all of the children to visit have been visited
      See Also:
        `UIXCollection.visitData(javax.faces.component.visit.VisitContext, javax.faces.component.visit.VisitCallback)`

    - #### visitData

          protected boolean visitData(javax.faces.component.visit.VisitContext visitContext,
                          javax.faces.component.visit.VisitCallback callback)

      Description copied from class: `UIXCollection`
      Visit the rows and children of the columns of the collection per row-index. This should not visit row index -1 (it will be perfomed in the visitTree method). The columns themselves should not be visited, only their children in this function.
      Specified by:
        `visitData` in class `UIXCollection`
      Parameters:
        `visitContext` - The visiting context
        `callback` - The visit callback
      Returns:
        true if the visiting should stop
      See Also:
        `UIXCollection.visitChildren(VisitContext, VisitCallback)`

    - #### createFacesBean

          protected FacesBean createFacesBean(String rendererType)

      Overrides:
        `createFacesBean` in class `UIXComponentBase`

    - #### __encodeBegin

          protected void __encodeBegin(javax.faces.context.FacesContext context)
                                throws IOException

      Throws:
        `IOException`
      See Also:
        `UIXCollection.__encodeBegin(javax.faces.context.FacesContext)`

    - #### getNodeStamp

          public final javax.faces.component.UIComponent getNodeStamp()

      the component to use to stamp each element in the tree. Only certain types of components are supported, including all components with no behavior and most components that implement the EditableValueHolder or ActionSource interfaces. In a treeTable, this must be a column.

    - #### setNodeStamp

          public final void setNodeStamp(javax.faces.component.UIComponent nodeStampFacet)

      the component to use to stamp each element in the tree. Only certain types of components are supported, including all components with no behavior and most components that implement the EditableValueHolder or ActionSource interfaces. In a treeTable, this must be a column.

    - #### getSelectedRowKeys

          public final RowKeySet getSelectedRowKeys()

      Gets the selection state for this component.
      Returns:
        the new selectedRowKeys value

    - #### setSelectedRowKeys

          public final void setSelectedRowKeys(RowKeySet selectedRowKeys)

      Sets the selection state for this component.
      Parameters:
        `selectedRowKeys` - the new selectedRowKeys value

    - #### isImmediate

          public final boolean isImmediate()

      Gets whether or not data validation - client-side or server-side - should take place when events are generated by this component. When immediate is true, the default ActionListener provided by the JavaServer Faces implementation should be executed during Apply Request Values phase of the request processing lifecycle, rather than waiting until the Invoke Application phase.
      Returns:
        the new immediate value

    - #### setImmediate

          public final void setImmediate(boolean immediate)

      Sets whether or not data validation - client-side or server-side - should take place when events are generated by this component. When immediate is true, the default ActionListener provided by the JavaServer Faces implementation should be executed during Apply Request Values phase of the request processing lifecycle, rather than waiting until the Invoke Application phase.
      Parameters:
        `immediate` - the new immediate value

    - #### getRowDisclosureListener

          public final javax.el.MethodExpression getRowDisclosureListener()

      Gets a method reference to an ExpansionListener
      Returns:
        the new rowDisclosureListener value

    - #### setRowDisclosureListener

          public final void setRowDisclosureListener(javax.el.MethodExpression rowDisclosureListener)

      Sets a method reference to an ExpansionListener
      Parameters:
        `rowDisclosureListener` - the new rowDisclosureListener value

    - #### getDisclosedRowKeys

          public final RowKeySet getDisclosedRowKeys()

      Gets the set of disclosed rows for this component. Each entry in the set is a rowKey.
      Returns:
        the new disclosedRowKeys value

    - #### setDisclosedRowKeys

          public final void setDisclosedRowKeys(RowKeySet disclosedRowKeys)

      Sets the set of disclosed rows for this component. Each entry in the set is a rowKey.
      Parameters:
        `disclosedRowKeys` - the new disclosedRowKeys value

    - #### getSelectionListener

          public final javax.el.MethodExpression getSelectionListener()

      Gets a method reference to a selection listener
      Returns:
        the new selectionListener value

    - #### setSelectionListener

          public final void setSelectionListener(javax.el.MethodExpression selectionListener)

      Sets a method reference to a selection listener
      Parameters:
        `selectionListener` - the new selectionListener value

    - #### getVarStatus

          public final String getVarStatus()

      Gets
      Name of the EL variable used to reference the varStatus information. Once this component has completed rendering, this variable is removed (or reverted back to its previous value). The VarStatus provides contextual information about the state of the component to EL expressions. For components that iterate, varStatus also provides loop counter information. Please see the this component's documentation for the specific properties on the varStatus. The common properties on varStatus include:
      - "model" - returns the CollectionModel for this component
      - "index" - returns the zero based row index
      - "hierarchicalIndex" - returns an array containing the row indices of heirarchy of the currrent row, for e.g. [0,1,2] Please use this attribute with caution since it requires moving currency to calculate the row index for each parent collection in the tree hierarchy.
      - "hierarchicalLabel" - returns a string label representing the hierarchy of that row, for e.g. 1.1, 1.1.1. It should be noted that the labels are 1 based vs 0 based for rowIndex. Please use this attribute with caution since it requires moving currency to calculate the row index for each parent collection in the tree hierarchy.
      Specified by:
        `getVarStatus` in class `UIXCollection`
      Returns:
        the new varStatus value
      See Also:
        `UIXCollection.createVarStatusMap()`

    - #### setVarStatus

          public final void setVarStatus(String varStatus)

      Sets
      Name of the EL variable used to reference the varStatus information. Once this component has completed rendering, this variable is removed (or reverted back to its previous value). The VarStatus provides contextual information about the state of the component to EL expressions. For components that iterate, varStatus also provides loop counter information. Please see the this component's documentation for the specific properties on the varStatus. The common properties on varStatus include:
      - "model" - returns the CollectionModel for this component
      - "index" - returns the zero based row index
      - "hierarchicalIndex" - returns an array containing the row indices of heirarchy of the currrent row, for e.g. [0,1,2] Please use this attribute with caution since it requires moving currency to calculate the row index for each parent collection in the tree hierarchy.
      - "hierarchicalLabel" - returns a string label representing the hierarchy of that row, for e.g. 1.1, 1.1.1. It should be noted that the labels are 1 based vs 0 based for rowIndex. Please use this attribute with caution since it requires moving currency to calculate the row index for each parent collection in the tree hierarchy.
      Parameters:
        `varStatus` - the new varStatus value

    - #### getValue

          public final Object getValue()

      Gets the hierarchy of tree data - must be of type org.apache.myfaces.trinidad.model.TreeModel
      Specified by:
        `getValue` in class `UIXCollection`
      Returns:
        the new value value

    - #### setValue

          public final void setValue(Object value)

      Sets the hierarchy of tree data - must be of type org.apache.myfaces.trinidad.model.TreeModel
      Parameters:
        `value` - the new value value

    - #### getFocusRowKey

          public final Object getFocusRowKey()

      Gets the rowKey of the currently focused row. The rowKeys of the ancestor rows of the focus row are added to the expandedRowKeys RowKeySet by default.
      Specified by:
        `getFocusRowKey` in class `UIXHierarchy`
      Returns:
        the new focusRowKey value

    - #### setFocusRowKey

          public final void setFocusRowKey(Object focusRowKey)

      Sets the rowKey of the currently focused row. The rowKeys of the ancestor rows of the focus row are added to the expandedRowKeys RowKeySet by default.
      Parameters:
        `focusRowKey` - the new focusRowKey value

    - #### getFocusListener

          public final javax.el.MethodExpression getFocusListener()

      Gets a method reference to a focus listener
      Returns:
        the new focusListener value

    - #### setFocusListener

          public final void setFocusListener(javax.el.MethodExpression focusListener)

      Sets a method reference to a focus listener
      Parameters:
        `focusListener` - the new focusListener value

    - #### isInitiallyExpanded

          public final boolean isInitiallyExpanded()

      Gets If upon initial rendering, the current subtree under the focused row path should be expanded. A RowDisclosureEvent is broadcast from the encode begin of the component so that listeners are properly notified of the disclosure.
      Returns:
        the new initiallyExpanded value

    - #### setInitiallyExpanded

          public final void setInitiallyExpanded(boolean initiallyExpanded)

      Sets If upon initial rendering, the current subtree under the focused row path should be expanded. A RowDisclosureEvent is broadcast from the encode begin of the component so that listeners are properly notified of the disclosure.
      Parameters:
        `initiallyExpanded` - the new initiallyExpanded value

    - #### addRowDisclosureListener

          public final void addRowDisclosureListener(RowDisclosureListener listener)

      Adds a rowDisclosure listener.
      Parameters:
        `listener` - the rowDisclosure listener to add

    - #### removeRowDisclosureListener

          public final void removeRowDisclosureListener(RowDisclosureListener listener)

      Removes a rowDisclosure listener.
      Parameters:
        `listener` - the rowDisclosure listener to remove

    - #### getRowDisclosureListeners

          public final RowDisclosureListener[] getRowDisclosureListeners()

      Returns an array of attached rowDisclosure listeners.
      Returns:
        an array of attached rowDisclosure listeners.

    - #### addSelectionListener

          public final void addSelectionListener(SelectionListener listener)

      Adds a selection listener.
      Parameters:
        `listener` - the selection listener to add

    - #### removeSelectionListener

          public final void removeSelectionListener(SelectionListener listener)

      Removes a selection listener.
      Parameters:
        `listener` - the selection listener to remove

    - #### getSelectionListeners

          public final SelectionListener[] getSelectionListeners()

      Returns an array of attached selection listeners.
      Returns:
        an array of attached selection listeners.

    - #### addFocusListener

          public final void addFocusListener(FocusListener listener)

      Adds a focus listener.
      Parameters:
        `listener` - the focus listener to add

    - #### removeFocusListener

          public final void removeFocusListener(FocusListener listener)

      Removes a focus listener.
      Parameters:
        `listener` - the focus listener to remove

    - #### getFocusListeners

          public final FocusListener[] getFocusListeners()

      Returns an array of attached focus listeners.
      Returns:
        an array of attached focus listeners.

    - #### getFamily

          public String getFamily()

      Specified by:
        `getFamily` in class `UIXComponentBase`

    - #### getBeanType

          protected FacesBean.Type getBeanType()

      Overrides:
        `getBeanType` in class `UIXComponentBase`

Copyright © 2001-2017 The Apache Software Foundation. All Rights Reserved.