public interface EscalatorUpdater
The updater is responsible for internally handling all remote communication, should the displayed data need to be fetched remotely.
This has a similar function to Grid's
Renderers , although they
operate on different abstraction levels.
RowContainer.setEscalatorUpdater(EscalatorUpdater),
Escalator.getHeader(),
Escalator.getBody(),
Escalator.getFooter(),
Renderer| Modifier and Type | Field and Description |
|---|---|
static EscalatorUpdater |
NULL
An
EscalatorUpdater that doesn't render anything. |
| Modifier and Type | Method and Description |
|---|---|
void |
postAttach(Row row,
Iterable<FlyweightCell> attachedCells)
Called after attaching new cells to the escalator.
|
void |
postDetach(Row row,
Iterable<FlyweightCell> detachedCells)
Called after detaching cells from the escalator.
|
void |
preAttach(Row row,
Iterable<FlyweightCell> cellsToAttach)
Called before attaching new cells to the escalator.
|
void |
preDetach(Row row,
Iterable<FlyweightCell> cellsToDetach)
Called before detaching cells from the escalator.
|
void |
update(Row row,
Iterable<FlyweightCell> cellsToUpdate)
Renders a row contained in a row container.
|
static final EscalatorUpdater NULL
EscalatorUpdater that doesn't render anything.void update(Row row, Iterable<FlyweightCell> cellsToUpdate)
Note: If rendering of cells is deferred (e.g. because asynchronous data retrieval), this method is responsible for explicitly displaying some placeholder data (empty content is valid). Because the cells (and rows) in an escalator are recycled, failing to reset a cell's presentation will lead to wrong data being displayed in the escalator.
For performance reasons, the escalator will never autonomously clear any data in a cell.
row - Information about the row that is being updated.
Note: You should not store nor reuse this reference.cellsToUpdate - A collection of cells that need to be updated. Note:
You should neither store nor reuse the reference to the
iterable, nor to the individual cells.void preAttach(Row row, Iterable<FlyweightCell> cellsToAttach)
row - Information about the row to which the cells will be added.
Note: You should not store nor reuse this reference.cellsToAttach - A collection of cells that are about to be attached.
Note: You should neither store nor reuse the
reference to the iterable, nor to the individual cells.void postAttach(Row row, Iterable<FlyweightCell> attachedCells)
row - Information about the row to which the cells were added.
Note: You should not store nor reuse this reference.attachedCells - A collection of cells that were attached. Note: You
should neither store nor reuse the reference to the iterable,
nor to the individual cells.void preDetach(Row row, Iterable<FlyweightCell> cellsToDetach)
row - Information about the row from which the cells will be
removed. Note: You should not store nor reuse this
reference.cellsToDetach - A collection of cells that are about to be detached.
Note: You should neither store nor reuse the
reference to the iterable, nor to the individual cells.void postDetach(Row row, Iterable<FlyweightCell> detachedCells)
row - Information about the row from which the cells were removed.
Note: You should not store nor reuse this reference.detachedCells - A collection of cells that were detached. Note: You
should neither store nor reuse the reference to the iterable,
nor to the individual cells.Copyright © 2018 Vaadin Ltd. All rights reserved.