1// Signature format: 4.0 2package androidx.paging { 3 4 public abstract class DataSource<Key, Value> { 5 method @AnyThread public void addInvalidatedCallback(androidx.paging.DataSource.InvalidatedCallback); 6 method @AnyThread public void invalidate(); 7 method @WorkerThread public boolean isInvalid(); 8 method public abstract <ToValue> androidx.paging.DataSource<Key!,ToValue!> map(androidx.arch.core.util.Function<Value!,ToValue!>); 9 method public abstract <ToValue> androidx.paging.DataSource<Key!,ToValue!> mapByPage(androidx.arch.core.util.Function<java.util.List<Value!>!,java.util.List<ToValue!>!>); 10 method @AnyThread public void removeInvalidatedCallback(androidx.paging.DataSource.InvalidatedCallback); 11 } 12 13 public abstract static class DataSource.Factory<Key, Value> { 14 ctor public DataSource.Factory(); 15 method public abstract androidx.paging.DataSource<Key!,Value!>! create(); 16 method public <ToValue> androidx.paging.DataSource.Factory<Key!,ToValue!> map(androidx.arch.core.util.Function<Value!,ToValue!>); 17 method public <ToValue> androidx.paging.DataSource.Factory<Key!,ToValue!> mapByPage(androidx.arch.core.util.Function<java.util.List<Value!>!,java.util.List<ToValue!>!>); 18 } 19 20 public static interface DataSource.InvalidatedCallback { 21 method @AnyThread public void onInvalidated(); 22 } 23 24 public abstract class ItemKeyedDataSource<Key, Value> extends androidx.paging.DataSource<Key,Value> { 25 ctor public ItemKeyedDataSource(); 26 method public abstract Key getKey(Value); 27 method public abstract void loadAfter(androidx.paging.ItemKeyedDataSource.LoadParams<Key!>, androidx.paging.ItemKeyedDataSource.LoadCallback<Value!>); 28 method public abstract void loadBefore(androidx.paging.ItemKeyedDataSource.LoadParams<Key!>, androidx.paging.ItemKeyedDataSource.LoadCallback<Value!>); 29 method public abstract void loadInitial(androidx.paging.ItemKeyedDataSource.LoadInitialParams<Key!>, androidx.paging.ItemKeyedDataSource.LoadInitialCallback<Value!>); 30 method public final <ToValue> androidx.paging.ItemKeyedDataSource<Key!,ToValue!> map(androidx.arch.core.util.Function<Value!,ToValue!>); 31 method public final <ToValue> androidx.paging.ItemKeyedDataSource<Key!,ToValue!> mapByPage(androidx.arch.core.util.Function<java.util.List<Value!>!,java.util.List<ToValue!>!>); 32 } 33 34 public abstract static class ItemKeyedDataSource.LoadCallback<Value> { 35 ctor public ItemKeyedDataSource.LoadCallback(); 36 method public abstract void onResult(java.util.List<Value!>); 37 } 38 39 public abstract static class ItemKeyedDataSource.LoadInitialCallback<Value> extends androidx.paging.ItemKeyedDataSource.LoadCallback<Value> { 40 ctor public ItemKeyedDataSource.LoadInitialCallback(); 41 method public abstract void onResult(java.util.List<Value!>, int, int); 42 } 43 44 public static class ItemKeyedDataSource.LoadInitialParams<Key> { 45 ctor public ItemKeyedDataSource.LoadInitialParams(Key?, int, boolean); 46 field public final boolean placeholdersEnabled; 47 field public final Key? requestedInitialKey; 48 field public final int requestedLoadSize; 49 } 50 51 public static class ItemKeyedDataSource.LoadParams<Key> { 52 ctor public ItemKeyedDataSource.LoadParams(Key!, int); 53 field public final Key! key; 54 field public final int requestedLoadSize; 55 } 56 57 public abstract class PageKeyedDataSource<Key, Value> extends androidx.paging.DataSource<Key,Value> { 58 ctor public PageKeyedDataSource(); 59 method public abstract void loadAfter(androidx.paging.PageKeyedDataSource.LoadParams<Key!>, androidx.paging.PageKeyedDataSource.LoadCallback<Key!,Value!>); 60 method public abstract void loadBefore(androidx.paging.PageKeyedDataSource.LoadParams<Key!>, androidx.paging.PageKeyedDataSource.LoadCallback<Key!,Value!>); 61 method public abstract void loadInitial(androidx.paging.PageKeyedDataSource.LoadInitialParams<Key!>, androidx.paging.PageKeyedDataSource.LoadInitialCallback<Key!,Value!>); 62 method public final <ToValue> androidx.paging.PageKeyedDataSource<Key!,ToValue!> map(androidx.arch.core.util.Function<Value!,ToValue!>); 63 method public final <ToValue> androidx.paging.PageKeyedDataSource<Key!,ToValue!> mapByPage(androidx.arch.core.util.Function<java.util.List<Value!>!,java.util.List<ToValue!>!>); 64 } 65 66 public abstract static class PageKeyedDataSource.LoadCallback<Key, Value> { 67 ctor public PageKeyedDataSource.LoadCallback(); 68 method public abstract void onResult(java.util.List<Value!>, Key?); 69 } 70 71 public abstract static class PageKeyedDataSource.LoadInitialCallback<Key, Value> { 72 ctor public PageKeyedDataSource.LoadInitialCallback(); 73 method public abstract void onResult(java.util.List<Value!>, int, int, Key?, Key?); 74 method public abstract void onResult(java.util.List<Value!>, Key?, Key?); 75 } 76 77 public static class PageKeyedDataSource.LoadInitialParams<Key> { 78 ctor public PageKeyedDataSource.LoadInitialParams(int, boolean); 79 field public final boolean placeholdersEnabled; 80 field public final int requestedLoadSize; 81 } 82 83 public static class PageKeyedDataSource.LoadParams<Key> { 84 ctor public PageKeyedDataSource.LoadParams(Key!, int); 85 field public final Key! key; 86 field public final int requestedLoadSize; 87 } 88 89 public abstract class PagedList<T> extends java.util.AbstractList<T> { 90 method public void addWeakCallback(java.util.List<T!>?, androidx.paging.PagedList.Callback); 91 method public void detach(); 92 method public T? get(int); 93 method public androidx.paging.PagedList.Config getConfig(); 94 method public abstract androidx.paging.DataSource<?,T!> getDataSource(); 95 method public abstract Object? getLastKey(); 96 method public int getPositionOffset(); 97 method public boolean isDetached(); 98 method public boolean isImmutable(); 99 method public void loadAround(int); 100 method public void removeWeakCallback(androidx.paging.PagedList.Callback); 101 method public int size(); 102 method public java.util.List<T!> snapshot(); 103 } 104 105 @MainThread public abstract static class PagedList.BoundaryCallback<T> { 106 ctor public PagedList.BoundaryCallback(); 107 method public void onItemAtEndLoaded(T); 108 method public void onItemAtFrontLoaded(T); 109 method public void onZeroItemsLoaded(); 110 } 111 112 public static final class PagedList.Builder<Key, Value> { 113 ctor public PagedList.Builder(androidx.paging.DataSource<Key!,Value!>, androidx.paging.PagedList.Config); 114 ctor public PagedList.Builder(androidx.paging.DataSource<Key!,Value!>, int); 115 method @WorkerThread public androidx.paging.PagedList<Value!> build(); 116 method public androidx.paging.PagedList.Builder<Key!,Value!> setBoundaryCallback(androidx.paging.PagedList.BoundaryCallback?); 117 method public androidx.paging.PagedList.Builder<Key!,Value!> setFetchExecutor(java.util.concurrent.Executor); 118 method public androidx.paging.PagedList.Builder<Key!,Value!> setInitialKey(Key?); 119 method public androidx.paging.PagedList.Builder<Key!,Value!> setNotifyExecutor(java.util.concurrent.Executor); 120 } 121 122 public abstract static class PagedList.Callback { 123 ctor public PagedList.Callback(); 124 method public abstract void onChanged(int, int); 125 method public abstract void onInserted(int, int); 126 method public abstract void onRemoved(int, int); 127 } 128 129 public static class PagedList.Config { 130 field public final boolean enablePlaceholders; 131 field public final int initialLoadSizeHint; 132 field public final int pageSize; 133 field public final int prefetchDistance; 134 } 135 136 public static final class PagedList.Config.Builder { 137 ctor public PagedList.Config.Builder(); 138 method public androidx.paging.PagedList.Config! build(); 139 method public androidx.paging.PagedList.Config.Builder! setEnablePlaceholders(boolean); 140 method public androidx.paging.PagedList.Config.Builder! setInitialLoadSizeHint(int); 141 method public androidx.paging.PagedList.Config.Builder! setPageSize(int); 142 method public androidx.paging.PagedList.Config.Builder! setPrefetchDistance(int); 143 } 144 145 public abstract class PositionalDataSource<T> extends androidx.paging.DataSource<java.lang.Integer,T> { 146 ctor public PositionalDataSource(); 147 method public static int computeInitialLoadPosition(androidx.paging.PositionalDataSource.LoadInitialParams, int); 148 method public static int computeInitialLoadSize(androidx.paging.PositionalDataSource.LoadInitialParams, int, int); 149 method @WorkerThread public abstract void loadInitial(androidx.paging.PositionalDataSource.LoadInitialParams, androidx.paging.PositionalDataSource.LoadInitialCallback<T!>); 150 method @WorkerThread public abstract void loadRange(androidx.paging.PositionalDataSource.LoadRangeParams, androidx.paging.PositionalDataSource.LoadRangeCallback<T!>); 151 method public final <V> androidx.paging.PositionalDataSource<V!> map(androidx.arch.core.util.Function<T!,V!>); 152 method public final <V> androidx.paging.PositionalDataSource<V!> mapByPage(androidx.arch.core.util.Function<java.util.List<T!>!,java.util.List<V!>!>); 153 } 154 155 public abstract static class PositionalDataSource.LoadInitialCallback<T> { 156 ctor public PositionalDataSource.LoadInitialCallback(); 157 method public abstract void onResult(java.util.List<T!>, int); 158 method public abstract void onResult(java.util.List<T!>, int, int); 159 } 160 161 public static class PositionalDataSource.LoadInitialParams { 162 ctor public PositionalDataSource.LoadInitialParams(int, int, int, boolean); 163 field public final int pageSize; 164 field public final boolean placeholdersEnabled; 165 field public final int requestedLoadSize; 166 field public final int requestedStartPosition; 167 } 168 169 public abstract static class PositionalDataSource.LoadRangeCallback<T> { 170 ctor public PositionalDataSource.LoadRangeCallback(); 171 method public abstract void onResult(java.util.List<T!>); 172 } 173 174 public static class PositionalDataSource.LoadRangeParams { 175 ctor public PositionalDataSource.LoadRangeParams(int, int); 176 field public final int loadSize; 177 field public final int startPosition; 178 } 179 180} 181 182