org.apache.myfaces.shared_tomahawk.renderkit.html
Class HtmlTableRendererBase

java.lang.Object
  extended by javax.faces.render.Renderer
      extended by org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlRenderer
          extended by org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlTableRendererBase
Direct Known Subclasses:
HtmlNewspaperTableRenderer, HtmlTableRenderer, HtmlTreeRenderer

public class HtmlTableRendererBase
extends HtmlRenderer

Common methods for renderers for components that subclass the standard JSF HtmlDataTable component.

Version:
$Revision: 986988 $ $Date: 2010-08-18 19:06:52 -0500 (Wed, 18 Aug 2010) $
Author:
Thomas Spiegl (latest modification by $Author: lu4242 $)

Nested Class Summary
protected static class HtmlTableRendererBase.Styles
          Class manages the styles from String lists.
 
Field Summary
protected static java.lang.String CAPTION_FACET_NAME
           
protected static java.lang.String FOOTER_FACET_NAME
          Footer facet name.
protected static java.lang.String HEADER_FACET_NAME
          Header facet name.
 
Constructor Summary
HtmlTableRendererBase()
           
 
Method Summary
protected  void afterBody(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary immediately after the TBODY end tag is output.
protected  void afterColumn(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData, int columnIndex)
          Perform any operations necessary immediately after each column child is rendered
protected  void afterColumnHeaderOrFooter(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData, boolean header, int columnIndex)
          Perform any operations necessary immediately after each column child's header of footer is rendered
protected  void afterRow(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary immediately after each TR end tag is output.
protected  void afterTable(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary immediately after the TABLE end tag is output.
protected  void beforeBody(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary after TABLE start tag is output but before the TBODY start tag.
protected  void beforeColumn(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData, int columnIndex)
          Perform any operations necessary immediately before each column child is rendered
protected  void beforeColumnHeaderOrFooter(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData, boolean header, int columnIndex)
          Perform any operations necessary immediately before each column child's header or footer is rendered
protected  void beforeRow(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary immediately before each TR start tag is output.
protected  void beforeTable(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary immediately before the TABLE start tag is output.
 void decode(javax.faces.context.FacesContext context, javax.faces.component.UIComponent component)
           
protected  int determineChildColSpan(javax.faces.component.UIComponent uiComponent)
          Calculate the number of columns the specified child component will span when rendered.
protected  java.lang.String determineHeaderCellTag(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent uiComponent)
           
protected  java.lang.String determineHeaderFooterTag(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent component, boolean header)
           
 void encodeBegin(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent uiComponent)
          Render the necessary bits that come before any actual rows in the table.
 void encodeChildren(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent component)
          Render the TBODY section of the html table.
protected  void encodeColumnChild(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIData uiData, javax.faces.component.UIComponent component, HtmlTableRendererBase.Styles styles, int columnStyleIndex)
           
 void encodeEnd(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent uiComponent)
           
 void encodeInnerHtml(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent component)
          Renders everything inside the TBODY tag by iterating over the row objects between offsets first and first+rows and applying the UIColumn components to those objects.
protected  void endTable(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent uiComponent)
          actually render the end of the table
protected static java.lang.String getFooterClass(javax.faces.component.UIComponent component)
          Gets the footerClass attribute of the given UIComponent.
protected static java.lang.String getHeaderClass(javax.faces.component.UIComponent component)
          Gets the headerClass attribute of the given UIComponent.
protected  int getNewspaperColumns(javax.faces.component.UIComponent component)
           
protected  javax.faces.component.UIComponent getNewspaperTableSpacer(javax.faces.component.UIComponent component)
           
 boolean getRendersChildren()
           
protected static HtmlTableRendererBase.Styles getStyles(javax.faces.component.UIData uiData)
          Gets styles for the specified component.
protected  boolean hasFacet(boolean header, javax.faces.component.UIComponent uiComponent)
           
protected  boolean hasNewspaperTableSpacer(javax.faces.component.UIComponent component)
           
protected  void inBodyStart(javax.faces.context.FacesContext facesContext, javax.faces.component.UIData uiData)
          Perform any operations necessary in the TBODY start tag.
protected  boolean isNewspaperHorizontalOrientation(javax.faces.component.UIComponent component)
           
protected  void renderCaptionFacet(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component)
          Renders the caption facet.
protected  void renderColgroupsFacet(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component)
          Renders the colgroups facet.
protected  void renderColumnBody(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIData uiData, javax.faces.component.UIComponent component, HtmlTableRendererBase.Styles styles, int columnStyleIndex)
          Renders the body of a given UIColumn (everything but the header and footer facets).
protected  void renderColumnChildHeaderOrFooterRow(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent uiComponent, java.lang.String styleClass, boolean isHeader)
           
protected  void renderColumnFooterCell(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIColumn uiColumn, java.lang.String footerStyleClass, int colspan)
          Renders the footer facet for the given UIColumn.
protected  void renderColumnFooterCell(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent uiComponent, javax.faces.component.UIComponent facet, java.lang.String footerStyleClass, int colspan)
          Renders the footer facet for the given UIColumn.
protected  void renderColumnFooterRow(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component, java.lang.String footerStyleClass)
          Renders the footer row for the columns, which is a separate row from the footer row for the UIData footer facet.
protected  void renderColumnHeaderCell(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIColumn uiColumn, java.lang.String headerStyleClass, int colspan)
          Renders the header facet for the given UIColumn.
protected  void renderColumnHeaderCell(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent uiComponent, javax.faces.component.UIComponent facet, java.lang.String headerStyleClass, int colspan)
          Renders a TH cell within a TR within a THEAD section.
protected  void renderColumnHeaderRow(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component, java.lang.String headerStyleClass)
          Renders the header row for the columns, which is a separate row from the header row for the UIData header facet.
protected  void renderFacet(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component, boolean header)
          Renders either the header or the footer facets for the UIData component and all the child UIColumn components, as a THEAD or TFOOT element containing TR (row) elements.
protected  void renderRowEnd(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIData uiData)
          Renders the end of a row of body content.
protected  void renderRowStart(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIData uiData, HtmlTableRendererBase.Styles styles, int rowStyleIndex)
          Renders the start of a new row of body content.
protected  void renderRowStyle(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIData uiData, HtmlTableRendererBase.Styles styles, int rowStyleIndex)
           
protected  void renderSpacerCell(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component)
          Renders a spacer between adjacent newspaper columns.
protected  void renderTableFooterRow(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component, javax.faces.component.UIComponent footerFacet, java.lang.String footerStyleClass, int colspan)
          Renders the footer row of the table being rendered.
protected  void renderTableHeaderOrFooterRow(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component, javax.faces.component.UIComponent facet, java.lang.String styleClass, java.lang.String colElementName, int colspan, boolean isHeader)
           
protected  void renderTableHeaderRow(javax.faces.context.FacesContext facesContext, javax.faces.context.ResponseWriter writer, javax.faces.component.UIComponent component, javax.faces.component.UIComponent headerFacet, java.lang.String headerStyleClass, int colspan)
          Renders the header row of the table being rendered.
protected  void startTable(javax.faces.context.FacesContext facesContext, javax.faces.component.UIComponent uiComponent)
          actually render the start of the table
 
Methods inherited from class org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlRenderer
getActionUrl, getChildCount, getChildren, getClientId, renderId, shouldRenderId, toUri
 
Methods inherited from class javax.faces.render.Renderer
convertClientId, getConvertedValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HEADER_FACET_NAME

protected static final java.lang.String HEADER_FACET_NAME
Header facet name.

See Also:
Constant Field Values

FOOTER_FACET_NAME

protected static final java.lang.String FOOTER_FACET_NAME
Footer facet name.

See Also:
Constant Field Values

CAPTION_FACET_NAME

protected static final java.lang.String CAPTION_FACET_NAME
See Also:
Constant Field Values
Constructor Detail

HtmlTableRendererBase

public HtmlTableRendererBase()
Method Detail

getNewspaperColumns

protected int getNewspaperColumns(javax.faces.component.UIComponent component)
Parameters:
component - dataTable
Returns:
number of layout columns

getNewspaperTableSpacer

protected javax.faces.component.UIComponent getNewspaperTableSpacer(javax.faces.component.UIComponent component)
Parameters:
component - dataTable
Returns:
component to display between layout columns

hasNewspaperTableSpacer

protected boolean hasNewspaperTableSpacer(javax.faces.component.UIComponent component)
Parameters:
component - dataTable
Returns:
whether dataTable has component to display between layout columns

isNewspaperHorizontalOrientation

protected boolean isNewspaperHorizontalOrientation(javax.faces.component.UIComponent component)
Parameters:
component - dataTable
Returns:
whether dataTable has newspaper columns layed out horizontally

getRendersChildren

public boolean getRendersChildren()
Overrides:
getRendersChildren in class javax.faces.render.Renderer
See Also:
Renderer.getRendersChildren()

encodeBegin

public void encodeBegin(javax.faces.context.FacesContext facesContext,
                        javax.faces.component.UIComponent uiComponent)
                 throws java.io.IOException
Render the necessary bits that come before any actual rows in the table.

Overrides:
encodeBegin in class javax.faces.render.Renderer
Throws:
java.io.IOException
See Also:
Renderer.encodeBegin(FacesContext, UIComponent)

startTable

protected void startTable(javax.faces.context.FacesContext facesContext,
                          javax.faces.component.UIComponent uiComponent)
                   throws java.io.IOException
actually render the start of the table

Throws:
java.io.IOException

encodeChildren

public void encodeChildren(javax.faces.context.FacesContext facesContext,
                           javax.faces.component.UIComponent component)
                    throws java.io.IOException
Render the TBODY section of the html table. See also method encodeInnerHtml.

Overrides:
encodeChildren in class javax.faces.render.Renderer
Throws:
java.io.IOException
See Also:
Renderer.encodeChildren(FacesContext, UIComponent)

renderCaptionFacet

protected void renderCaptionFacet(javax.faces.context.FacesContext facesContext,
                                  javax.faces.context.ResponseWriter writer,
                                  javax.faces.component.UIComponent component)
                           throws java.io.IOException
Renders the caption facet.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the parent UIComponent containing the facets.
Throws:
java.io.IOException - if an exception occurs.

renderColgroupsFacet

protected void renderColgroupsFacet(javax.faces.context.FacesContext facesContext,
                                    javax.faces.context.ResponseWriter writer,
                                    javax.faces.component.UIComponent component)
                             throws java.io.IOException
Renders the colgroups facet.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the parent UIComponent containing the facets.
Throws:
java.io.IOException - if an exception occurs.
Since:
2.0

getStyles

protected static HtmlTableRendererBase.Styles getStyles(javax.faces.component.UIData uiData)
Gets styles for the specified component.


encodeInnerHtml

public void encodeInnerHtml(javax.faces.context.FacesContext facesContext,
                            javax.faces.component.UIComponent component)
                     throws java.io.IOException
Renders everything inside the TBODY tag by iterating over the row objects between offsets first and first+rows and applying the UIColumn components to those objects.

This method is separated from the encodeChildren so that it can be overridden by subclasses. One class that uses this functionality is autoUpdateDataTable.

Throws:
java.io.IOException

encodeColumnChild

protected void encodeColumnChild(javax.faces.context.FacesContext facesContext,
                                 javax.faces.context.ResponseWriter writer,
                                 javax.faces.component.UIData uiData,
                                 javax.faces.component.UIComponent component,
                                 HtmlTableRendererBase.Styles styles,
                                 int columnStyleIndex)
                          throws java.io.IOException
Throws:
java.io.IOException

renderColumnBody

protected void renderColumnBody(javax.faces.context.FacesContext facesContext,
                                javax.faces.context.ResponseWriter writer,
                                javax.faces.component.UIData uiData,
                                javax.faces.component.UIComponent component,
                                HtmlTableRendererBase.Styles styles,
                                int columnStyleIndex)
                         throws java.io.IOException
Renders the body of a given UIColumn (everything but the header and footer facets). This emits a TD cell, whose contents are the result of calling encodeBegin, encodeChildren and encodeEnd methods on the component (or its associated renderer).

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiData - the UIData being rendered.
component - the UIComponent to render.
Throws:
java.io.IOException - if an exception occurs.

renderRowStart

protected void renderRowStart(javax.faces.context.FacesContext facesContext,
                              javax.faces.context.ResponseWriter writer,
                              javax.faces.component.UIData uiData,
                              HtmlTableRendererBase.Styles styles,
                              int rowStyleIndex)
                       throws java.io.IOException
Renders the start of a new row of body content.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiData - the UIData being rendered.
Throws:
java.io.IOException - if an exceptoin occurs.

renderRowStyle

protected void renderRowStyle(javax.faces.context.FacesContext facesContext,
                              javax.faces.context.ResponseWriter writer,
                              javax.faces.component.UIData uiData,
                              HtmlTableRendererBase.Styles styles,
                              int rowStyleIndex)
                       throws java.io.IOException
Throws:
java.io.IOException

renderRowEnd

protected void renderRowEnd(javax.faces.context.FacesContext facesContext,
                            javax.faces.context.ResponseWriter writer,
                            javax.faces.component.UIData uiData)
                     throws java.io.IOException
Renders the end of a row of body content.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiData - the UIData being rendered.
Throws:
java.io.IOException - if an exceptoin occurs.

beforeTable

protected void beforeTable(javax.faces.context.FacesContext facesContext,
                           javax.faces.component.UIData uiData)
                    throws java.io.IOException
Perform any operations necessary immediately before the TABLE start tag is output.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

beforeBody

protected void beforeBody(javax.faces.context.FacesContext facesContext,
                          javax.faces.component.UIData uiData)
                   throws java.io.IOException
Perform any operations necessary after TABLE start tag is output but before the TBODY start tag.

This method generates the THEAD/TFOOT sections of a table if there are any header or footer facets defined on the table or on any child UIColumn component.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

beforeRow

protected void beforeRow(javax.faces.context.FacesContext facesContext,
                         javax.faces.component.UIData uiData)
                  throws java.io.IOException
Perform any operations necessary immediately before each TR start tag is output.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

afterRow

protected void afterRow(javax.faces.context.FacesContext facesContext,
                        javax.faces.component.UIData uiData)
                 throws java.io.IOException
Perform any operations necessary immediately after each TR end tag is output.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

beforeColumn

protected void beforeColumn(javax.faces.context.FacesContext facesContext,
                            javax.faces.component.UIData uiData,
                            int columnIndex)
                     throws java.io.IOException
Perform any operations necessary immediately before each column child is rendered

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
columnIndex - the index of the currenly rendered column
Throws:
java.io.IOException

afterColumn

protected void afterColumn(javax.faces.context.FacesContext facesContext,
                           javax.faces.component.UIData uiData,
                           int columnIndex)
                    throws java.io.IOException
Perform any operations necessary immediately after each column child is rendered

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
columnIndex - the index of the currenly rendered column
Throws:
java.io.IOException

beforeColumnHeaderOrFooter

protected void beforeColumnHeaderOrFooter(javax.faces.context.FacesContext facesContext,
                                          javax.faces.component.UIData uiData,
                                          boolean header,
                                          int columnIndex)
                                   throws java.io.IOException
Perform any operations necessary immediately before each column child's header or footer is rendered

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
header - true if the header of the column child is rendered
columnIndex - the index of the currenly rendered column
Throws:
java.io.IOException

afterColumnHeaderOrFooter

protected void afterColumnHeaderOrFooter(javax.faces.context.FacesContext facesContext,
                                         javax.faces.component.UIData uiData,
                                         boolean header,
                                         int columnIndex)
                                  throws java.io.IOException
Perform any operations necessary immediately after each column child's header of footer is rendered

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
header - true if the header of the column child is rendered
columnIndex - the index of the currenly rendered column
Throws:
java.io.IOException

inBodyStart

protected void inBodyStart(javax.faces.context.FacesContext facesContext,
                           javax.faces.component.UIData uiData)
                    throws java.io.IOException
Perform any operations necessary in the TBODY start tag.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

afterBody

protected void afterBody(javax.faces.context.FacesContext facesContext,
                         javax.faces.component.UIData uiData)
                  throws java.io.IOException
Perform any operations necessary immediately after the TBODY end tag is output.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

afterTable

protected void afterTable(javax.faces.context.FacesContext facesContext,
                          javax.faces.component.UIData uiData)
                   throws java.io.IOException
Perform any operations necessary immediately after the TABLE end tag is output.

Parameters:
facesContext - the FacesContext.
uiData - the UIData being rendered.
Throws:
java.io.IOException

encodeEnd

public void encodeEnd(javax.faces.context.FacesContext facesContext,
                      javax.faces.component.UIComponent uiComponent)
               throws java.io.IOException
Overrides:
encodeEnd in class javax.faces.render.Renderer
Throws:
java.io.IOException
See Also:
Renderer.encodeEnd(FacesContext, UIComponent)

endTable

protected void endTable(javax.faces.context.FacesContext facesContext,
                        javax.faces.component.UIComponent uiComponent)
                 throws java.io.IOException
actually render the end of the table

Throws:
java.io.IOException

renderFacet

protected void renderFacet(javax.faces.context.FacesContext facesContext,
                           javax.faces.context.ResponseWriter writer,
                           javax.faces.component.UIComponent component,
                           boolean header)
                    throws java.io.IOException
Renders either the header or the footer facets for the UIData component and all the child UIColumn components, as a THEAD or TFOOT element containing TR (row) elements.

If there is a header or footer attached to the UIData then that is rendered as a TR element whose COLSPAN is the sum of all rendered columns in the table. This allows that header/footer to take up the entire width of the table.

If any child column has a header or footer then a TR is rendered with a TH cell for each column child.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the UIData component
header - whether this is the header facet (if not, then the footer facet).
Throws:
java.io.IOException - if an exception occurs.

determineHeaderFooterTag

protected java.lang.String determineHeaderFooterTag(javax.faces.context.FacesContext facesContext,
                                                    javax.faces.component.UIComponent component,
                                                    boolean header)

hasFacet

protected boolean hasFacet(boolean header,
                           javax.faces.component.UIComponent uiComponent)
Parameters:
header -
uiComponent -
Returns:
boolean

determineChildColSpan

protected int determineChildColSpan(javax.faces.component.UIComponent uiComponent)
Calculate the number of columns the specified child component will span when rendered.

Normally, this is a fairly simple calculation: a UIColumn component is rendered as one column, every other child type is not rendered (ie spans zero columns). However custom subclasses of this renderer may override this method to handle cases where a single component renders as multiple columns.


renderTableHeaderRow

protected void renderTableHeaderRow(javax.faces.context.FacesContext facesContext,
                                    javax.faces.context.ResponseWriter writer,
                                    javax.faces.component.UIComponent component,
                                    javax.faces.component.UIComponent headerFacet,
                                    java.lang.String headerStyleClass,
                                    int colspan)
                             throws java.io.IOException
Renders the header row of the table being rendered.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the UIComponent for whom a table is being rendered.
headerFacet - the facet for the header.
headerStyleClass - the styleClass of the header.
colspan - the number of columns the header should span. Typically, this is the number of columns in the table.
Throws:
java.io.IOException - if an exception occurs.

renderTableFooterRow

protected void renderTableFooterRow(javax.faces.context.FacesContext facesContext,
                                    javax.faces.context.ResponseWriter writer,
                                    javax.faces.component.UIComponent component,
                                    javax.faces.component.UIComponent footerFacet,
                                    java.lang.String footerStyleClass,
                                    int colspan)
                             throws java.io.IOException
Renders the footer row of the table being rendered.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the UIComponent for whom a table is being rendered.
footerFacet - the facet for the footer.
footerStyleClass - the styleClass of the footer.
colspan - the number of columns the header should span. Typically, this is the number of columns in the table.
Throws:
java.io.IOException - if an exception occurs.

renderColumnHeaderRow

protected void renderColumnHeaderRow(javax.faces.context.FacesContext facesContext,
                                     javax.faces.context.ResponseWriter writer,
                                     javax.faces.component.UIComponent component,
                                     java.lang.String headerStyleClass)
                              throws java.io.IOException
Renders the header row for the columns, which is a separate row from the header row for the UIData header facet.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the UIData component for whom a table is being rendered.
headerStyleClass - the styleClass of the header
Throws:
java.io.IOException - if an exception occurs.

renderColumnFooterRow

protected void renderColumnFooterRow(javax.faces.context.FacesContext facesContext,
                                     javax.faces.context.ResponseWriter writer,
                                     javax.faces.component.UIComponent component,
                                     java.lang.String footerStyleClass)
                              throws java.io.IOException
Renders the footer row for the columns, which is a separate row from the footer row for the UIData footer facet.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
component - the UIComponent for whom a table is being rendered.
footerStyleClass - the styleClass of the footerStyleClass
Throws:
java.io.IOException - if an exception occurs.

renderTableHeaderOrFooterRow

protected void renderTableHeaderOrFooterRow(javax.faces.context.FacesContext facesContext,
                                            javax.faces.context.ResponseWriter writer,
                                            javax.faces.component.UIComponent component,
                                            javax.faces.component.UIComponent facet,
                                            java.lang.String styleClass,
                                            java.lang.String colElementName,
                                            int colspan,
                                            boolean isHeader)
                                     throws java.io.IOException
Throws:
java.io.IOException

renderSpacerCell

protected void renderSpacerCell(javax.faces.context.FacesContext facesContext,
                                javax.faces.context.ResponseWriter writer,
                                javax.faces.component.UIComponent component)
                         throws java.io.IOException
Renders a spacer between adjacent newspaper columns.

Throws:
java.io.IOException

renderColumnChildHeaderOrFooterRow

protected void renderColumnChildHeaderOrFooterRow(javax.faces.context.FacesContext facesContext,
                                                  javax.faces.context.ResponseWriter writer,
                                                  javax.faces.component.UIComponent uiComponent,
                                                  java.lang.String styleClass,
                                                  boolean isHeader)
                                           throws java.io.IOException
Throws:
java.io.IOException

renderColumnHeaderCell

protected void renderColumnHeaderCell(javax.faces.context.FacesContext facesContext,
                                      javax.faces.context.ResponseWriter writer,
                                      javax.faces.component.UIColumn uiColumn,
                                      java.lang.String headerStyleClass,
                                      int colspan)
                               throws java.io.IOException
Renders the header facet for the given UIColumn.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiColumn - the UIColumn.
headerStyleClass - the styleClass of the header facet.
colspan - the colspan for the tableData element in which the header facet will be wrapped.
Throws:
java.io.IOException

renderColumnHeaderCell

protected void renderColumnHeaderCell(javax.faces.context.FacesContext facesContext,
                                      javax.faces.context.ResponseWriter writer,
                                      javax.faces.component.UIComponent uiComponent,
                                      javax.faces.component.UIComponent facet,
                                      java.lang.String headerStyleClass,
                                      int colspan)
                               throws java.io.IOException
Renders a TH cell within a TR within a THEAD section. If the specified UIColumn object does have a header facet, then that facet is rendered within the cell, otherwise the cell is left blank (though any specified style class is still applied to empty cells).

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiComponent - the UIComponent to render the facet for.
facet - the UIComponent to render as facet.
headerStyleClass - the styleClass of the header facet.
colspan - the colspan for the tableData element in which the header facet will be wrapped.
Throws:
java.io.IOException

determineHeaderCellTag

protected java.lang.String determineHeaderCellTag(javax.faces.context.FacesContext facesContext,
                                                  javax.faces.component.UIComponent uiComponent)

renderColumnFooterCell

protected void renderColumnFooterCell(javax.faces.context.FacesContext facesContext,
                                      javax.faces.context.ResponseWriter writer,
                                      javax.faces.component.UIColumn uiColumn,
                                      java.lang.String footerStyleClass,
                                      int colspan)
                               throws java.io.IOException
Renders the footer facet for the given UIColumn.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiColumn - the UIComponent.
footerStyleClass - the styleClass of the footer facet.
colspan - the colspan for the tableData element in which the footer facet will be wrapped.
Throws:
java.io.IOException

renderColumnFooterCell

protected void renderColumnFooterCell(javax.faces.context.FacesContext facesContext,
                                      javax.faces.context.ResponseWriter writer,
                                      javax.faces.component.UIComponent uiComponent,
                                      javax.faces.component.UIComponent facet,
                                      java.lang.String footerStyleClass,
                                      int colspan)
                               throws java.io.IOException
Renders the footer facet for the given UIColumn.

Parameters:
facesContext - the FacesContext.
writer - the ResponseWriter.
uiComponent - the UIComponent to render the facet for.
facet - the UIComponent to render as facet.
footerStyleClass - the styleClass of the footer facet.
colspan - the colspan for the tableData element in which the footer facet will be wrapped.
Throws:
java.io.IOException

getHeaderClass

protected static java.lang.String getHeaderClass(javax.faces.component.UIComponent component)
Gets the headerClass attribute of the given UIComponent.

Parameters:
component - the UIComponent.
Returns:
the headerClass attribute of the given UIComponent.

getFooterClass

protected static java.lang.String getFooterClass(javax.faces.component.UIComponent component)
Gets the footerClass attribute of the given UIComponent.

Parameters:
component - the UIComponent.
Returns:
the footerClass attribute of the given UIComponent.

decode

public void decode(javax.faces.context.FacesContext context,
                   javax.faces.component.UIComponent component)
Overrides:
decode in class javax.faces.render.Renderer


Copyright © 2011 The Apache Software Foundation. All Rights Reserved.