summaryrefslogtreecommitdiffstats
path: root/updater_sample/src/com/example
diff options
context:
space:
mode:
authorZhomart Mukhamejanov <zhomart@google.com>2018-06-01 01:21:11 +0200
committerandroid-build-merger <android-build-merger@google.com>2018-06-01 01:21:11 +0200
commita37a085a1177e4b49e6042b2d15ef8f1765a17d7 (patch)
tree9c07e4b962f81e7a0f44edbfe812343397ffd3c9 /updater_sample/src/com/example
parentMerge "updater_sample: Improve update completion handling" (diff)
parentMerge "updater_sample: Add @GuardedBy" (diff)
downloadandroid_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.tar
android_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.tar.gz
android_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.tar.bz2
android_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.tar.lz
android_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.tar.xz
android_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.tar.zst
android_bootable_recovery-a37a085a1177e4b49e6042b2d15ef8f1765a17d7.zip
Diffstat (limited to 'updater_sample/src/com/example')
-rw-r--r--updater_sample/src/com/example/android/systemupdatersample/UpdateManager.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/updater_sample/src/com/example/android/systemupdatersample/UpdateManager.java b/updater_sample/src/com/example/android/systemupdatersample/UpdateManager.java
index f5c2ea5ab..145cc83b1 100644
--- a/updater_sample/src/com/example/android/systemupdatersample/UpdateManager.java
+++ b/updater_sample/src/com/example/android/systemupdatersample/UpdateManager.java
@@ -39,6 +39,8 @@ import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.DoubleConsumer;
import java.util.function.IntConsumer;
+import javax.annotation.concurrent.GuardedBy;
+
/**
* Manages the update flow. It has its own state (in memory), separate from
* {@link UpdateEngine}'s state. Asynchronously interacts with the {@link UpdateEngine}.
@@ -62,11 +64,16 @@ public class UpdateManager {
private AtomicBoolean mManualSwitchSlotRequired = new AtomicBoolean(true);
+ @GuardedBy("mLock")
private UpdateData mLastUpdateData = null;
+ @GuardedBy("mLock")
private IntConsumer mOnStateChangeCallback = null;
+ @GuardedBy("mLock")
private IntConsumer mOnEngineStatusUpdateCallback = null;
+ @GuardedBy("mLock")
private DoubleConsumer mOnProgressUpdateCallback = null;
+ @GuardedBy("mLock")
private IntConsumer mOnEngineCompleteCallback = null;
private final Object mLock = new Object();