diff options
| author | 2024-06-21 05:43:11 +0000 | |
|---|---|---|
| committer | 2024-06-21 05:43:11 +0000 | |
| commit | 1b5417069c4a6586cee9577f55de3752136d49b2 (patch) | |
| tree | 50d0162f7c1290b70fdc288faf63e468adfc5439 | |
| parent | ba401926f2a3594237dac42f9d2550da2edae74f (diff) | |
| parent | cb2ae6301dc171cd766d8baf80a097643884b401 (diff) | |
Merge "Use thread-safe collection for storing listeners" into main
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/classifier/HistoryTracker.java | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/classifier/HistoryTracker.java b/packages/SystemUI/src/com/android/systemui/classifier/HistoryTracker.java index 09bf04cb6d59..9cb26f35fa66 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/HistoryTracker.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/HistoryTracker.java @@ -20,9 +20,10 @@ import com.android.systemui.dagger.SysUISingleton; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.util.time.SystemClock; -import java.util.ArrayList; +import com.google.common.collect.Sets; + import java.util.Collection; -import java.util.List; +import java.util.Set; import java.util.concurrent.DelayQueue; import java.util.concurrent.Delayed; import java.util.concurrent.TimeUnit; @@ -52,7 +53,7 @@ public class HistoryTracker { private final SystemClock mSystemClock; DelayQueue<CombinedResult> mResults = new DelayQueue<>(); - private final List<BeliefListener> mBeliefListeners = new ArrayList<>(); + private final Set<BeliefListener> mBeliefListeners = Sets.newConcurrentHashSet(); @Inject HistoryTracker(SystemClock systemClock) { @@ -161,11 +162,15 @@ public class HistoryTracker { } void addBeliefListener(BeliefListener listener) { - mBeliefListeners.add(listener); + if (listener != null) { + mBeliefListeners.add(listener); + } } void removeBeliefListener(BeliefListener listener) { - mBeliefListeners.remove(listener); + if (listener != null) { + mBeliefListeners.remove(listener); + } } /** * Represents a falsing score combing all the classifiers together. |