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

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void cellValue​(com.google.protobuf.ByteString value)
      Called multiple times per cell to concatenate the cell value.
      RowT createScanMarkerRow​(com.google.protobuf.ByteString key)
      Creates a special row to mark server progress before any data is received
      void finishCell()
      Called once per cell to signal the end of the value (unless reset).
      RowT finishRow()
      Called once per row to signal that all cells have been processed (unless reset).
      void reset()
      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 Detail

      • 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