Make paging arch dependencies explicit, on stable versions
Suppress restricted api warnings on ArchTaskExecutor, ComputableLiveData
Test: builds, tests in runtime, common, ktx
Test: ./gradlew lintDebug
Change-Id: Ibb8493953ef234ea1f38593a3dcf349ef2852767
diff --git a/paging/runtime/build.gradle b/paging/runtime/build.gradle
index cf59850..1d5d447 100644
--- a/paging/runtime/build.gradle
+++ b/paging/runtime/build.gradle
@@ -31,10 +31,11 @@
}
dependencies {
- api(project(":arch:core-runtime"))
api(project(":paging:paging-common"))
- api(project(":lifecycle:lifecycle-runtime"))
- api(project(":lifecycle:lifecycle-livedata"))
+
+ api("androidx.arch.core:core-runtime:2.0.0")
+ api("androidx.lifecycle:lifecycle-runtime:2.0.0")
+ api("androidx.lifecycle:lifecycle-livedata:2.0.0")
api(SUPPORT_RECYCLERVIEW, libs.support_exclude_config)
diff --git a/paging/runtime/ktx/build.gradle b/paging/runtime/ktx/build.gradle
index 8a74a7b..dda368d5 100644
--- a/paging/runtime/ktx/build.gradle
+++ b/paging/runtime/ktx/build.gradle
@@ -39,7 +39,7 @@
androidTestImplementation(TEST_RUNNER)
androidTestImplementation(ESPRESSO_CORE)
- androidTestImplementation project(":arch:core-testing")
+ androidTestImplementation("androidx.arch.core:core-testing:2.0.0")
}
supportLibrary {
diff --git a/paging/runtime/ktx/src/main/java/androidx/paging/LivePagedList.kt b/paging/runtime/ktx/src/main/java/androidx/paging/LivePagedList.kt
index 07e0bac..a08415d 100644
--- a/paging/runtime/ktx/src/main/java/androidx/paging/LivePagedList.kt
+++ b/paging/runtime/ktx/src/main/java/androidx/paging/LivePagedList.kt
@@ -16,6 +16,7 @@
package androidx.paging
+import android.annotation.SuppressLint
import androidx.arch.core.executor.ArchTaskExecutor
import androidx.lifecycle.LiveData
import java.util.concurrent.Executor
@@ -34,6 +35,7 @@
*
* @see LivePagedListBuilder
*/
+@SuppressLint("RestrictedApi")
fun <Key, Value> DataSource.Factory<Key, Value>.toLiveData(
config: PagedList.Config,
initialLoadKey: Key? = null,
@@ -61,6 +63,7 @@
*
* @see LivePagedListBuilder
*/
+@SuppressLint("RestrictedApi")
fun <Key, Value> DataSource.Factory<Key, Value>.toLiveData(
pageSize: Int,
initialLoadKey: Key? = null,
diff --git a/paging/runtime/src/main/java/androidx/paging/LivePagedListBuilder.java b/paging/runtime/src/main/java/androidx/paging/LivePagedListBuilder.java
index 3511fcd..481619d 100644
--- a/paging/runtime/src/main/java/androidx/paging/LivePagedListBuilder.java
+++ b/paging/runtime/src/main/java/androidx/paging/LivePagedListBuilder.java
@@ -16,6 +16,8 @@
package androidx.paging;
+import android.annotation.SuppressLint;
+
import androidx.annotation.AnyThread;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -41,6 +43,7 @@
private PagedList.Config mConfig;
private DataSource.Factory<Key, Value> mDataSourceFactory;
private PagedList.BoundaryCallback mBoundaryCallback;
+ @SuppressLint("RestrictedApi")
private Executor mFetchExecutor = ArchTaskExecutor.getIOThreadExecutor();
/**
@@ -149,6 +152,7 @@
* @return The LiveData of PagedLists
*/
@NonNull
+ @SuppressLint("RestrictedApi")
public LiveData<PagedList<Value>> build() {
return create(mInitialLoadKey, mConfig, mBoundaryCallback, mDataSourceFactory,
ArchTaskExecutor.getMainThreadExecutor(), mFetchExecutor);
@@ -156,6 +160,7 @@
@AnyThread
@NonNull
+ @SuppressLint("RestrictedApi")
private static <Key, Value> LiveData<PagedList<Value>> create(
@Nullable final Key initialLoadKey,
@NonNull final PagedList.Config config,
diff --git a/paging/rxjava2/src/main/java/androidx/paging/RxPagedListBuilder.java b/paging/rxjava2/src/main/java/androidx/paging/RxPagedListBuilder.java
index 7d9b580..b364dc8 100644
--- a/paging/rxjava2/src/main/java/androidx/paging/RxPagedListBuilder.java
+++ b/paging/rxjava2/src/main/java/androidx/paging/RxPagedListBuilder.java
@@ -16,6 +16,8 @@
package androidx.paging;
+import android.annotation.SuppressLint;
+
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.arch.core.executor.ArchTaskExecutor;
@@ -207,6 +209,7 @@
* @return The Observable of PagedLists
*/
@NonNull
+ @SuppressLint("RestrictedApi")
public Observable<PagedList<Value>> buildObservable() {
if (mNotifyExecutor == null) {
mNotifyExecutor = ArchTaskExecutor.getMainThreadExecutor();