Lines Matching refs:Key

41  * @param <Key> Type of data used to query Value types out of the DataSource.
44 public abstract class PageKeyedDataSource<Key, Value> extends ContiguousDataSource<Key, Value> {
49 private Key mNextKey = null;
53 private Key mPreviousKey = null;
55 private void initKeys(@Nullable Key previousKey, @Nullable Key nextKey) {
62 private void setPreviousKey(@Nullable Key previousKey) {
68 private void setNextKey(@Nullable Key nextKey) {
74 private @Nullable Key getPreviousKey() {
80 private @Nullable Key getNextKey() {
89 * @param <Key> Type of data used to query pages.
92 public static class LoadInitialParams<Key> {
102 * {@link LoadInitialCallback#onResult(List, int, int, Key, Key)} will be ignored.
117 * @param <Key> Type of data used to query pages.
120 public static class LoadParams<Key> {
126 public final Key key;
136 public LoadParams(Key key, int requestedLoadSize) {
159 * @param <Key> Type of data used to query pages.
162 public abstract static class LoadInitialCallback<Key, Value> {
185 @Nullable Key previousPageKey, @Nullable Key nextPageKey);
197 * @param previousPageKey Key for page before the initial load result, or {@code null} if no
199 * @param nextPageKey Key for page after the initial load result, or {@code null} if no
202 public abstract void onResult(@NonNull List<Value> data, @Nullable Key previousPageKey,
203 @Nullable Key nextPageKey);
216 * @param <Key> Type of data used to query pages.
219 public abstract static class LoadCallback<Key, Value> {
238 * @param adjacentPageKey Key for subsequent page load (previous page in {@link #loadBefore}
242 public abstract void onResult(@NonNull List<Value> data, @Nullable Key adjacentPageKey);
245 static class LoadInitialCallbackImpl<Key, Value> extends LoadInitialCallback<Key, Value> {
247 private final PageKeyedDataSource<Key, Value> mDataSource;
249 LoadInitialCallbackImpl(@NonNull PageKeyedDataSource<Key, Value> dataSource,
259 @Nullable Key previousPageKey, @Nullable Key nextPageKey) {
277 public void onResult(@NonNull List<Value> data, @Nullable Key previousPageKey,
278 @Nullable Key nextPageKey) {
286 static class LoadCallbackImpl<Key, Value> extends LoadCallback<Key, Value> {
288 private final PageKeyedDataSource<Key, Value> mDataSource;
289 LoadCallbackImpl(@NonNull PageKeyedDataSource<Key, Value> dataSource,
298 public void onResult(@NonNull List<Value> data, @Nullable Key adjacentPageKey) {
312 final Key getKey(int position, Value item) {
318 final void dispatchLoadInitial(@Nullable Key key, int initialLoadSize, int pageSize,
321 LoadInitialCallbackImpl<Key, Value> callback =
323 loadInitial(new LoadInitialParams<Key>(initialLoadSize, enablePlaceholders), callback);
336 @Nullable Key key = getNextKey();
347 @Nullable Key key = getPreviousKey();
369 public abstract void loadInitial(@NonNull LoadInitialParams<Key> params,
370 @NonNull LoadInitialCallback<Key, Value> callback);
389 public abstract void loadBefore(@NonNull LoadParams<Key> params,
390 @NonNull LoadCallback<Key, Value> callback);
409 public abstract void loadAfter(@NonNull LoadParams<Key> params,
410 @NonNull LoadCallback<Key, Value> callback);
414 public final <ToValue> PageKeyedDataSource<Key, ToValue> mapByPage(
421 public final <ToValue> PageKeyedDataSource<Key, ToValue> map(