Class VariableColRowGroupBuilder


  • class VariableColRowGroupBuilder
    extends RowGroupBuilder
    A row group builder accommodating a variable number of columns. More flexible, but less efficient.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private static interface  VariableColRowGroupBuilder.Event
      Each event is recorded and will be played once the table is finished, and the final number of columns known.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.List events
      The queue of events sent to this builder.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) void addTableCell​(TableCell cell)
      Adds a table-cell to the current row-group, creating GridUnits accordingly.
      (package private) void endRow​(TablePart part)
      Receives notification of the end of the current row, when the source contains no fo:table-row element.
      (package private) void endTable()
      Receives notification of the end of the table.
      (package private) void endTablePart()
      Receives notification of the end of a table-header/footer/body.
      (package private) void endTableRow()
      Receives notification of the end of the current row.
      (package private) void startTablePart​(TablePart part)
      Receives notification of the start of a table-header/footer/body.
      (package private) void startTableRow​(TableRow tableRow)
      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 Detail

      • events

        private java.util.List events
        The queue of events sent to this builder.
    • Constructor Detail

      • VariableColRowGroupBuilder

        VariableColRowGroupBuilder​(Table t)
    • Method Detail

      • startTableRow

        void startTableRow​(TableRow tableRow)
        Receives notification of the start of an fo:table-row element.
        Specified by:
        startTableRow in class RowGroupBuilder
        Parameters:
        tableRow - the row being started
      • endRow

        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 RowGroupBuilder.endTableRow() method will be called instead.

        Specified by:
        endRow in class RowGroupBuilder
        Parameters:
        part - the part containing the current row
      • startTablePart

        void startTablePart​(TablePart part)
        Receives notification of the start of a table-header/footer/body.
        Specified by:
        startTablePart in class RowGroupBuilder
        Parameters:
        part - the part being started
      • endTablePart

        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.
        Specified by:
        endTablePart in class RowGroupBuilder
        Throws:
        ValidationException - if a row-spanning cell overflows the given table part