org.richfaces.component

## Class AbstractCollapsibleSubTable

- java.lang.Object
- - javax.faces.component.UIComponent
  - - javax.faces.component.UIComponentBase
    - - org.richfaces.component.UIDataAdaptor
      - - org.richfaces.component.UISequence
        - - org.richfaces.component.UIDataTableBase
          - - org.richfaces.component.AbstractCollapsibleSubTable

- All Implemented Interfaces:
    EventListener, javax.faces.component.NamingContainer, javax.faces.component.PartialStateHolder, javax.faces.component.StateHolder, javax.faces.component.TransientStateHolder, javax.faces.component.UniqueIdVendor, javax.faces.event.ComponentSystemEventListener, javax.faces.event.FacesListener, javax.faces.event.SystemEventListener, javax.faces.event.SystemEventListenerHolder, IterationStateHolder, ColumnProps, EventsRowProps, IterationProps, RowsProps, SequenceProps, StyleProps, TableStyleProps, Column, Expandable, MetaComponentEncoder, MetaComponentResolver, Row
  Direct Known Subclasses:
    UICollapsibleSubTable

      public abstract class AbstractCollapsibleSubTable
      extends UIDataTableBase
      implements Column, Expandable, EventsRowProps, RowsProps, StyleProps, SequenceProps, IterationProps, TableStyleProps

  The <rich:collapsibleSubTable> component acts as a child element to a <rich:dataTable> component. The <rich:collapsibleSubTable> component iterates through the child collections in the currently iterated object to create master-detail tables.

  Author:
    Anton Belevich

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.richfaces.component.UIDataAdaptor

      `UIDataAdaptor.ComponentVisitor`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `COLLAPSED_STATE`
    `static String` | `COMPONENT_FAMILY`
    `static String` | `COMPONENT_TYPE`
    `static int` | `EXPANDED_STATE`
    `static String` | `MODE_AJAX`
    `static String` | `MODE_CLIENT`
    `static String` | `MODE_SERVER`

    - ### Fields inherited from class org.richfaces.component.UIDataTableBase

      `BODY, FOOTER, FOOTER_FACET_NAME, HEADER, HEADER_FACET_NAME, NODATA_FACET_NAME`

    - ### Fields inherited from class org.richfaces.component.UIDataAdaptor

      `decodeVisitor, updateVisitor, validateVisitor`

    - ### 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 org.richfaces.component.MetaComponentResolver

      `META_COMPONENT_SEPARATOR_CHAR`

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

      `SEPARATOR_CHAR`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractCollapsibleSubTable()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addCollapsibleSubTableToggleListener(CollapsibleSubTableToggleListener listener)`
    `void` | `broadcast(javax.faces.event.FacesEvent event)`
    `CollapsibleSubTableToggleListener[]` | `getCollapsibleSubTableToggleListener()`
    `abstract String` | `getExpandMode()` Specifies what mode will be used to expand the sub table: client (default), ajax, server, none (can't be expanded)
    `Object` | `getIterationState()` Get component state for a current iteration.
    `String` | `getSortExpression()`
    `String` | `getSortingAndFilteringRenderTargetId(javax.faces.context.FacesContext facesContext)`
    `boolean` | `isBreakBefore()`
    `boolean` | `isExpanded()` Determines the state of sub table: true (expanded), false (collapsed)
    `void` | `removeCollapsibleSubTableToggleListener(CollapsibleSubTableToggleListener listener)`
    `void` | `setBreakBefore(boolean newBreakBefore)`
    `void` | `setExpanded(boolean expanded)`
    `void` | `setIterationState(Object stateObject)` Set component state for the next iteration.
    `void` | `setSortExpression(String sortExpression)`

    - ### Methods inherited from class org.richfaces.component.UIDataTableBase

      `addFilteringListener, addSortingListener, columns, createExtendedDataModel, dataChildren, encodeMetaComponent, fixedChildren, getColumnClasses, getFilteringListeners, getFilterVar, getFooter, getHeader, getNoData, getNoDataLabel, getRendersChildren, getRowClass, getRowClasses, getSortingListeners, getSortMode, getSortPriority, getSupportedMetaComponents, hasRowChildren, isColumnFacetPresent, queueEvent, removeFilteringListener, removeSortingListener, resolveClientId, restoreChildState, substituteUnresolvedClientId, visitDataChildren, visitFixedChildren, walk`

    - ### Methods inherited from class org.richfaces.component.UISequence

      `captureOrigValue, createComponentState, createFacesModel, getActualFirst, getActualRows, getFirst, getIterationStatusVar, getRelativeClientId, getRelativeRowIndex, getRowIndex, getRowKeyConverter, getRows, getValue, preEncodeBegin, restoreOrigValue, setFirst, setIterationStatusVar, setRows, setupVariable, setValue, setValueBinding, setValueExpression, updateState, updateState`

    - ### Methods inherited from class org.richfaces.component.UIDataAdaptor

      `allFixedChildren, clearExtendedDataModel, clearInitialState, createUniqueId, doUpdate, extractKeySegment, getComponentState, getContainerClientId, getContainerClientId, getExtendedDataModel, getFamily, getLocalComponentState, getRowCount, getRowData, getRowKey, getRowKeyVar, getStateVar, getVar, getVariablesMap, invokeOnComponent, invokeOnRow, isKeepSaved, isListenerForSource, isRowAvailable, iterate, keepSaved, markInitialState, preDecode, preUpdate, preValidate, processDecodes, processDecodesChildren, processEvent, processEvent, processUpdates, processUpdatesChildren, processValidatesChildren, processValidators, resetChildState, resetDataModel, restoreChildState, restoreState, saveChildState, saveChildState, saveState, setExtendedDataModel, setId, setKeepSaved, setRowKey, setRowKey, setRowKeyConverter, setRowKeyVar, setStateVar, setVar, visitDataChildrenMetaComponents, visitTree, walk, wrapEvent`

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

      `addClientBehavior, addFacesListener, decode, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getListenersForEventClass, getParent, getPassThroughAttributes, getRenderer, getRendererType, getValueBinding, isRendered, isTransient, processRestoreState, processSaveState, removeFacesListener, restoreAttachedState, saveAttachedState, setParent, setRendered, setRendererType, setTransient, subscribeToEvent, unsubscribeFromEvent`

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

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

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

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

    - ### Methods inherited from interface org.richfaces.component.attribute.EventsRowProps

      `getOnrowclick, getOnrowdblclick, getOnrowkeydown, getOnrowkeypress, getOnrowkeyup, getOnrowmousedown, getOnrowmousemove, getOnrowmouseout, getOnrowmouseover, getOnrowmouseup`

    - ### Methods inherited from interface org.richfaces.component.attribute.RowsProps

      `getRows`

    - ### Methods inherited from interface org.richfaces.component.attribute.StyleProps

      `getStyle`

    - ### Methods inherited from interface org.richfaces.component.attribute.SequenceProps

      `getRowKeyConverter`

    - ### Methods inherited from interface org.richfaces.component.attribute.IterationProps

      `getFirst, getIterationStatusVar, getRowKeyVar, getStateVar, getValue, getVar, isKeepSaved`

    - ### Methods inherited from interface org.richfaces.component.attribute.TableStyleProps

      `getCellClass, getColumnFooterCellClass, getColumnFooterClass, getColumnHeaderCellClass, getColumnHeaderClass, getColumnHeaderFirstClass, getFirstColumnFooterClass, getFirstRowClass, getFooterCellClass, getFooterFirstClass, getHeaderCellClass, getHeaderFirstClass`

    - ### Methods inherited from interface org.richfaces.component.Row

      `setRowKey, walk`

    - ### Methods inherited from interface org.richfaces.component.attribute.ColumnProps

      `getFooterClass, getHeaderClass`

- - ### Field Detail

    - #### COMPONENT_TYPE

          public static final String COMPONENT_TYPE

      See Also:
        Constant Field Values

    - #### COMPONENT_FAMILY

          public static final String COMPONENT_FAMILY

      See Also:
        Constant Field Values

    - #### MODE_AJAX

          public static final String MODE_AJAX

      See Also:
        Constant Field Values

    - #### MODE_SERVER

          public static final String MODE_SERVER

      See Also:
        Constant Field Values

    - #### MODE_CLIENT

          public static final String MODE_CLIENT

      See Also:
        Constant Field Values

    - #### EXPANDED_STATE

          public static final int EXPANDED_STATE

      See Also:
        Constant Field Values

    - #### COLLAPSED_STATE

          public static final int COLLAPSED_STATE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AbstractCollapsibleSubTable

          public AbstractCollapsibleSubTable()

  - ### Method Detail

    - #### isExpanded

          public boolean isExpanded()

      Determines the state of sub table: true (expanded), false (collapsed)
      Specified by:
        `isExpanded` in interface `Expandable`

    - #### setExpanded

          public void setExpanded(boolean expanded)

      Specified by:
        `setExpanded` in interface `Expandable`

    - #### getExpandMode

          public abstract String getExpandMode()

      Specifies what mode will be used to expand the sub table: client (default), ajax, server, none (can't be expanded)

    - #### broadcast

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

      Overrides:
        `broadcast` in class `UIDataAdaptor`
      Throws:
        `javax.faces.event.AbortProcessingException`

    - #### isBreakBefore

          public boolean isBreakBefore()

    - #### setBreakBefore

          public void setBreakBefore(boolean newBreakBefore)

    - #### getSortExpression

          public String getSortExpression()

    - #### setSortExpression

          public void setSortExpression(String sortExpression)

    - #### addCollapsibleSubTableToggleListener

          public void addCollapsibleSubTableToggleListener(CollapsibleSubTableToggleListener listener)

      Specified by:
        `addCollapsibleSubTableToggleListener` in interface `Expandable`

    - #### removeCollapsibleSubTableToggleListener

          public void removeCollapsibleSubTableToggleListener(CollapsibleSubTableToggleListener listener)

      Specified by:
        `removeCollapsibleSubTableToggleListener` in interface `Expandable`

    - #### getCollapsibleSubTableToggleListener

          public CollapsibleSubTableToggleListener[] getCollapsibleSubTableToggleListener()

      Specified by:
        `getCollapsibleSubTableToggleListener` in interface `Expandable`

    - #### setIterationState

          public void setIterationState(Object stateObject)

      Description copied from interface: `IterationStateHolder`
      Set component state for the next iteration. State can be either previously saved iteration state or `null` value. In the second case component should reset its state to the initial.
      Specified by:
        `setIterationState` in interface `IterationStateHolder`
      Overrides:
        `setIterationState` in class `UIDataAdaptor`
      Parameters:
        `stateObject` - request-scope component state or `null`. Details are subject for a component implementation

    - #### getIterationState

          public Object getIterationState()

      Description copied from interface: `IterationStateHolder`
      Get component state for a current iteration.
      Specified by:
        `getIterationState` in interface `IterationStateHolder`
      Overrides:
        `getIterationState` in class `UIDataAdaptor`
      Returns:
        request-scope component state. Details are subject for a component implementation

    - #### getSortingAndFilteringRenderTargetId

          public String getSortingAndFilteringRenderTargetId(javax.faces.context.FacesContext facesContext)

      Overrides:
        `getSortingAndFilteringRenderTargetId` in class `UIDataTableBase`

Copyright © 2014 JBoss by Red Hat. All Rights Reserved.