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).

Public methods

Called to pass initial load state from a DataSource without total count,
when placeholders aren't requested.

Inherited methods

From class
java.lang.Object

Object

clone()

boolean

equals(Object arg0)

void

finalize()

final
Class<?>

getClass()

int

hashCode()

final
void

notify()

final
void

notifyAll()

String

toString()

final
void

wait(long arg0, int arg1)

final
void

wait(long arg0)

final
void

wait()

Public constructors

PositionalDataSource.LoadInitialCallback

PositionalDataSource.LoadInitialCallback ()

Public methods

onResult

void onResult (List<T> data,
int position,
int totalCount)

Called to pass initial load state from a DataSource.

Call this method from your DataSource's loadInitial function to return data,
and inform how many placeholders should be shown before and after. If counting is cheap
to compute (for example, if a network load returns the information regardless), it's
recommended to pass the total size to the totalCount parameter. If placeholders are not
requested (when placeholdersEnabled is false), you can instead
call onResult(List, int).

Parameters

data

List: List of items loaded from the DataSource. If this is empty, the DataSource
is treated as empty, and no further loads will occur.

position

int: Position of the item at the front of the list. If there are N
items before the items in data that can be loaded from this DataSource,
pass N.

totalCount

int: Total number of items that may be returned from this DataSource.
Includes the number in the initial data parameter
as well as any items that can be loaded in front or behind of
data.

onResult

void onResult (List<T> data,
int position)

Called to pass initial load state from a DataSource without total count,
when placeholders aren't requested.

Note: This method can only be called when placeholders
are disabled (placeholdersEnabled is false).

Call this method from your DataSource's loadInitial function to return data,
if position is known but total size is not. If placeholders are requested, call the three
parameter variant: onResult(List, int, int).

Parameters

data

List: List of items loaded from the DataSource. If this is empty, the DataSource
is treated as empty, and no further loads will occur.

position

int: Position of the item at the front of the list. If there are N
items before the items in data that can be provided by this DataSource,
pass N.