ItemKeyedDataSource.LoadCallback

public abstract class ItemKeyedDataSource.LoadCallback<Value extends Object>

Known direct subclasses
ItemKeyedDataSource.LoadInitialCallback

Callback for loadInitial to return data and, optionally, position/count information.


Callback for ItemKeyedDataSource loadBefore and loadAfter to return data.

A callback can be called only once, and will throw if called again.

It is always valid for a DataSource loading method that takes a callback to stash the callback and call it later. This enables DataSources to be fully asynchronous, and to handle temporary, recoverable error states (such as a network error that can be retried).

Parameters
<Value extends Object>

Type of items being loaded.

Summary

Public constructors

<Value extends Object> LoadCallback()

Public methods

abstract void
onResult(@NonNull List<@NonNull Value> data)

Called to pass loaded data from a DataSource.

Public constructors

LoadCallback

public final <Value extends Object> LoadCallback()
Parameters
<Value extends Object>

Type of items being loaded.

Public methods

onResult

@NonNull
public abstract void onResult(@NonNull List<@NonNull Value> data)

Called to pass loaded data from a DataSource.

Call this method from your ItemKeyedDataSource's loadBefore and loadAfter methods to return data.

Call this from loadInitial to initialize without counting available data, or supporting placeholders.

It is always valid to pass a different amount of data than what is requested. Pass an empty list if there is no more data to load.

Parameters
@NonNull List<@NonNull Value> data

List of items loaded from the ItemKeyedDataSource.