Interface RowAdapter.RowBuilder<RowT>

All Known Implementing Classes:
DefaultRowAdapter.DefaultRowBuilder
Enclosing interface:
RowAdapter<RowT>

public static interface RowAdapter.RowBuilder<RowT>
A SAX style row factory. It is responsible for creating two types of rows: standard data rows and special marker rows. Marker rows are emitted when skipping lots of rows due to filters. The server notifies the client of the last row it skipped to help client resume in case of error.

State management is handled external to the implementation of this class and guarantees the following order:

  1. Exactly 1 startRow for each row.
  2. Exactly 1 startCell for each cell.
  3. At least 1 cellValue for each cell.
  4. Exactly 1 finishCell for each cell.
  5. Exactly 1 finishRow for each row.
createScanMarkerRow can be called one or more times between finishRow and startRow. reset can be called at any point and can be invoked multiple times in a row.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    cellValue(com.google.protobuf.ByteString value)
    Called multiple times per cell to concatenate the cell value.
    createScanMarkerRow(com.google.protobuf.ByteString key)
    Creates a special row to mark server progress before any data is received
    void
    Called once per cell to signal the end of the value (unless reset).
    Called once per row to signal that all cells have been processed (unless reset).
    void
    Called when the current in progress row should be dropped
    void
    startCell(String family, com.google.protobuf.ByteString qualifier, long timestamp, List<String> labels, long size)
    Called to start a new cell in a row.
    void
    startRow(com.google.protobuf.ByteString key)
    Called to start a new row.
  • Method Details

    • startRow

      void startRow(com.google.protobuf.ByteString key)
      Called to start a new row. This will be called once per row.
    • startCell

      void startCell(String family, com.google.protobuf.ByteString qualifier, long timestamp, List<String> labels, long size)
      Called to start a new cell in a row.
    • cellValue

      void cellValue(com.google.protobuf.ByteString value)
      Called multiple times per cell to concatenate the cell value.
    • finishCell

      void finishCell()
      Called once per cell to signal the end of the value (unless reset).
    • finishRow

      RowT finishRow()
      Called once per row to signal that all cells have been processed (unless reset).
    • reset

      void reset()
      Called when the current in progress row should be dropped
    • createScanMarkerRow

      RowT createScanMarkerRow(com.google.protobuf.ByteString key)
      Creates a special row to mark server progress before any data is received