summaryrefslogtreecommitdiff
path: root/PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2020-08-27 04:12:26 +0000
committerColin Cross <ccross@android.com>2020-08-27 04:12:26 +0000
commite877ec75dcac8bc473fa531301aad1832d0143c6 (patch)
tree06d34a24ca0626730b799512b06ae4fe148fdd2c /PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt
parentd873d507e8bb810c44dc528ec04ffe8d956b2bf9 (diff)
downloadPermission-e877ec75dcac8bc473fa531301aad1832d0143c6.tar.gz
Revert "Snap for 6793014 from 1bc4a8915884f60dfdb8d8cd4cea9cca19..."
Revert "Snap for 6793014 from 11467102abddb6026aaa164c1361439c2d..." Revert "Snap for 6793014 from 265280bf5cb4bc14e132c3a35ae5f7ae65..." Revert "Snap for 6793014 from f2989f9c65556d5155dbd57f82f0c93a16..." Revert "Snap for 6793014 from 8b8bf0a07b0521bbe8483fbbab1222ffd6..." Revert "Snap for 6793014 from 3777d883a3857b1a1589181c436d9018d7..." Revert "Snap for 6793014 from 3157b4ee4325286f0c2ab0f26528460c8b..." Revert "Snap for 6793014 from a43295d1825da62af038d345a7a861ed7a..." Revert "Snap for 6793014 from 2076be4d27078d6ebc0a6b5e5ceb386109..." Revert "Snap for 6793014 from d0e31526c62b2aeb35c293ac96feb180fc..." Revert "Snap for 6793014 from 7a3a8c6351d5167a6ae0b33bc376efabd2..." Revert "Snap for 6793014 from 41471cb21bb16b5c3bcc92f84293b79684..." Revert "Snap for 6793014 from 42e5cca3cfb829690c9d8c6aca57a8e7d5..." Revert "Snap for 6793014 from 4f81304963d19f4511b1e8e7d0aad87a67..." Revert "Snap for 6793014 from 07602cdacf5bcc835db41f7eaa24af9964..." Revert "Snap for 6793014 from 14cb57e107a3abce8b14937b1f92c28d18..." Revert "Snap for 6793014 from ab1e4a81d09a540a5f927059e5bc03a606..." Revert "Snap for 6793014 from 8c65adad0bcdfb3acc561063b4048dca24..." Revert "Snap for 6793014 from b3061942700265e2bf04af9997775dcbbb..." Revert "Snap for 6793014 from 551c5953fc62e339e4ee884ec2cd0ac3be..." Revert "Snap for 6793014 from 4919273b2ac5c6347a18e17c5ec70d8da6..." Revert "Snap for 6793014 from 988d4244914e0c749655e8cb6db18ba44f..." Revert submission 12465146-release-request-6b259cbc-1f45-4b05-bc7e-c9b893b79d68-for-git_main-busytown-release-6793014 Reason for revert: b/166531456 Reverted Changes: I5ff7a6c0d:Snap for 6793014 from f2989f9c65556d5155dbd57f82f0... I77bdff943:Snap for 6793014 from a43295d1825da62af038d345a7a8... I2ac5c520a:Snap for 6793014 from c3f124cca05579acf0a6cb589ebd... I023b9702f:Snap for 6793014 from 98756d6d3e2bb0ba28eb125caa7a... Ibc7893d72:Snap for 6793014 from fd1ad6750ef332d3f50f218f4d5d... Ic27847bee:Snap for 6793014 from 8c65adad0bcdfb3acc561063b404... If20bc9352:Snap for 6793014 from 7a3a8c6351d5167a6ae0b33bc376... I6542d17e8:Snap for 6793014 from 3777d883a3857b1a1589181c436d... I66e6bb8a9:Snap for 6793014 from 8b8bf0a07b0521bbe8483fbbab12... I3cd190b6b:Snap for 6793014 from 424180bdc4aa18249e678daebfd0... If92db7402:Snap for 6793014 from ab1e4a81d09a540a5f927059e5bc... Iaced03c87:Snap for 6793014 from d0e31526c62b2aeb35c293ac96fe... I5d28c6b4b:Snap for 6793014 from 4f81304963d19f4511b1e8e7d0aa... I30d07bea3:Snap for 6793014 from 7594ec6384c4da320726def34f47... I473205f48:Snap for 6793014 from 551c5953fc62e339e4ee884ec2cd... I0656b41af:Snap for 6793014 from 44725f06b7f7d6407b5ee82d989b... I0f9796067:Snap for 6793014 from 4919273b2ac5c6347a18e17c5ec7... I9a38cda8f:Snap for 6793014 from 2076be4d27078d6ebc0a6b5e5ceb... I876a82f51:Snap for 6793014 from 11467102abddb6026aaa164c1361... I749d7d023:Snap for 6793014 from 41471cb21bb16b5c3bcc92f84293... I038daea41:Snap for 6793014 from 07602cdacf5bcc835db41f7eaa24... I47aa3131c:Snap for 6793014 from 14cb57e107a3abce8b14937b1f92... I32dba8a95:Snap for 6793014 from 3157b4ee4325286f0c2ab0f26528... I2ebc9f9db:Snap for 6793014 from 988d4244914e0c749655e8cb6db1... Iae7c3370f:Snap for 6793014 from 9ffb8852294e06e2d387dc1fb868... I6467a7f1b:Snap for 6793014 from 42e5cca3cfb829690c9d8c6aca57... I8c6375203:Snap for 6793014 from b3061942700265e2bf04af999777... I843b2e1f3:Snap for 6793014 from 265280bf5cb4bc14e132c3a35ae5... Ie254f7079:Snap for 6793014 from 1bc4a8915884f60dfdb8d8cd4cea... I01e0974ed:Snap for 6793014 from bbbccc3c2b7fc7c5780f6c415c42... Change-Id: I53995bac3398af7aa271e4312776d40dfb148c83
Diffstat (limited to 'PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt')
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt16
1 files changed, 15 insertions, 1 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt b/PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt
index 57a7a5c35..b7491a7a4 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt
+++ b/PermissionController/src/com/android/permissioncontroller/permission/data/SmartAsyncMediatorLiveData.kt
@@ -26,8 +26,14 @@ import kotlinx.coroutines.launch
/**
* A LiveData which loads its data in a background AsyncTask. It will cancel current tasks, if new
* requests come during execution
+ *
+ * @param isStaticVal Whether or not this LiveData value is expected to change
+ * @param alwaysUpdateOnActive Whether or not this LiveData should update upon going active
*/
-abstract class SmartAsyncMediatorLiveData<T> : SmartUpdateMediatorLiveData<T>() {
+abstract class SmartAsyncMediatorLiveData<T>(
+ isStaticVal: Boolean = false,
+ private val alwaysUpdateOnActive: Boolean = true
+) : SmartUpdateMediatorLiveData<T>(isStaticVal) {
private var currentJob: Job? = null
@Volatile
@@ -68,6 +74,14 @@ abstract class SmartAsyncMediatorLiveData<T> : SmartUpdateMediatorLiveData<T>()
}
}
+ override fun onActive() {
+ super.onActive()
+
+ if (alwaysUpdateOnActive) {
+ updateAsync()
+ }
+ }
+
override fun onInactive() {
cancelJobIfRunning()
jobQueued = false