Class RowGroupBuilder

java.lang.Object
org.apache.fop.fo.flow.table.RowGroupBuilder
Direct Known Subclasses:
FixedColRowGroupBuilder, VariableColRowGroupBuilder

abstract class RowGroupBuilder extends Object
A class that creates groups of rows belonging to a same set of spans. The first row of such a group has only cells which don't span over several rows, or whose spanning starts on this row. Similarly, the last row has only non-row spanning cells or spans which end on this row.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected Table
     
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Creates and initialises a new builder for the given table.
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) abstract void
    Adds a table-cell to the current row-group, creating GridUnits accordingly.
    (package private) abstract void
    Receives notification of the end of the current row, when the source contains no fo:table-row element.
    (package private) abstract void
    Receives notification of the end of the table.
    (package private) abstract void
    Receives notification of the end of a table-header/footer/body.
    (package private) abstract void
    Receives notification of the end of the current row.
    (package private) abstract void
    Receives notification of the start of a table-header/footer/body.
    (package private) abstract void
    Receives notification of the start of an fo:table-row element.

    Methods inherited from class java.lang.Object

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

    • table

      protected Table table
  • Constructor Details

    • RowGroupBuilder

      protected RowGroupBuilder(Table t)
      Creates and initialises a new builder for the given table.
      Parameters:
      t - a table
  • Method Details

    • addTableCell

      abstract void addTableCell(TableCell cell)
      Adds a table-cell to the current row-group, creating GridUnits accordingly.
      Parameters:
      cell - the cell to add
    • startTableRow

      abstract void startTableRow(TableRow tableRow)
      Receives notification of the start of an fo:table-row element.
      Parameters:
      tableRow - the row being started
    • endTableRow

      abstract void endTableRow()
      Receives notification of the end of the current row. If the current row finishes the row group, the TablePart.addRowGroup(List) method of the parent table part will be called.
    • endRow

      abstract void endRow(TablePart part)
      Receives notification of the end of the current row, when the source contains no fo:table-row element. If the current row finishes the row group, the TablePart.addRowGroup(List) method of the given table part will be called.

      If the source does contain explicit fo:table-row elements, then the endTableRow() method will be called instead.

      Parameters:
      part - the part containing the current row
    • startTablePart

      abstract void startTablePart(TablePart part)
      Receives notification of the start of a table-header/footer/body.
      Parameters:
      part - the part being started
    • endTablePart

      abstract void endTablePart() throws ValidationException
      Receives notification of the end of a table-header/footer/body. The current row-group is checked for emptiness. This row group builder is reset for handling further possible table parts.
      Throws:
      ValidationException - if a row-spanning cell overflows the given table part
    • endTable

      abstract void endTable() throws ValidationException
      Receives notification of the end of the table.
      Throws:
      ValidationException - if a row-spanning cell overflows one of the table's parts