Interface RowAdapter.RowBuilder<RowT> (2.33.0)

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.

Type Parameter

NameDescription
RowT

Methods

cellValue(ByteString value)

public abstract void cellValue(ByteString value)

Called multiple times per cell to concatenate the cell value.

Parameter
NameDescription
valueByteString

createScanMarkerRow(ByteString key)

public abstract RowT createScanMarkerRow(ByteString key)

Creates a special row to mark server progress before any data is received

Parameter
NameDescription
keyByteString
Returns
TypeDescription
RowT

finishCell()

public abstract void finishCell()

Called once per cell to signal the end of the value (unless reset).

finishRow()

public abstract RowT finishRow()

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

Returns
TypeDescription
RowT

reset()

public abstract void reset()

Called when the current in progress row should be dropped

startCell(String family, ByteString qualifier, long timestamp, List<String> labels, long size)

public abstract void startCell(String family, ByteString qualifier, long timestamp, List<String> labels, long size)

Called to start a new cell in a row.

Parameters
NameDescription
familyString
qualifierByteString
timestamplong
labelsList<String>
sizelong

startRow(ByteString key)

public abstract void startRow(ByteString key)

Called to start a new row. This will be called once per row.

Parameter
NameDescription
keyByteString