summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Elliot Sisteron <elliotsisteron@google.com> 2022-10-11 10:15:49 +0000
committer Elliot Sisteron <elliotsisteron@google.com> 2022-10-11 10:15:49 +0000
commit63222de57db72c05e303cc58a4ca626ae054c19f (patch)
tree71f70d2d29562634ce17b5dd4940aeddf5db76e5
parentd4e9f330e96f2688436b4ac69229c228f5e09dc0 (diff)
Move ownership of SafetyCenterIssueCache to SafetyCenterService.
It's created by SafetyCenterService so it makes more sense for it to handle its lifecycle. Bug: 203098016 Test: atest CtsSafetyCenterTestCases Change-Id: I0d079a411cf69b29a817a0efbe1cfbbefb0fc6b6
-rw-r--r--service/java/com/android/safetycenter/DevicePolicyResources.java2
-rw-r--r--service/java/com/android/safetycenter/SafetyCenterPullAtomCallback.java2
-rw-r--r--service/java/com/android/safetycenter/SafetyCenterRepository.java3
-rw-r--r--service/java/com/android/safetycenter/SafetyCenterService.java2
4 files changed, 4 insertions, 5 deletions
diff --git a/service/java/com/android/safetycenter/DevicePolicyResources.java b/service/java/com/android/safetycenter/DevicePolicyResources.java
index 8f3f6e431..0898136f0 100644
--- a/service/java/com/android/safetycenter/DevicePolicyResources.java
+++ b/service/java/com/android/safetycenter/DevicePolicyResources.java
@@ -40,6 +40,8 @@ final class DevicePolicyResources {
private static final String SAFETY_CENTER_PREFIX = "SafetyCenter.";
private static final String WORK_PROFILE_PAUSED_TITLE = "WORK_PROFILE_PAUSED";
+ private DevicePolicyResources() {}
+
/**
* Returns the updated string for the given {@code safetySourceId} by calling {@link
* DevicePolicyResourcesManager#getString}.
diff --git a/service/java/com/android/safetycenter/SafetyCenterPullAtomCallback.java b/service/java/com/android/safetycenter/SafetyCenterPullAtomCallback.java
index 02ba90015..f1d66d967 100644
--- a/service/java/com/android/safetycenter/SafetyCenterPullAtomCallback.java
+++ b/service/java/com/android/safetycenter/SafetyCenterPullAtomCallback.java
@@ -131,8 +131,6 @@ final class SafetyCenterPullAtomCallback implements StatsPullAtomCallback {
@NonNull
private StatsEvent createOverallSafetyStateAtomLocked(
@NonNull UserProfileGroup userProfileGroup) {
- // TODO: We could make SafetyCenterPullAtomCallback a SafetyCenterListener and hold a
- // reference to the last SafetyCenterData so we don't need to recalculate that here.
SafetyCenterData safetyCenterData =
mSafetyCenterDataTracker.getSafetyCenterData("android", userProfileGroup);
long openIssuesCount = safetyCenterData.getIssues().size();
diff --git a/service/java/com/android/safetycenter/SafetyCenterRepository.java b/service/java/com/android/safetycenter/SafetyCenterRepository.java
index cb9ee977d..c42d849ad 100644
--- a/service/java/com/android/safetycenter/SafetyCenterRepository.java
+++ b/service/java/com/android/safetycenter/SafetyCenterRepository.java
@@ -357,7 +357,6 @@ final class SafetyCenterRepository {
void clear() {
mSafetySourceDataForKey.clear();
mSafetySourceErrors.clear();
- mSafetyCenterIssueCache.clear();
mSafetyCenterIssueActionsInFlight.clear();
}
@@ -380,8 +379,6 @@ final class SafetyCenterRepository {
mSafetySourceErrors.removeAt(i);
}
}
- // Issue cache implements this itself.
- mSafetyCenterIssueCache.clearForUser(userId);
// Loop in reverse index order to be able to remove entries while iterating.
for (int i = mSafetyCenterIssueActionsInFlight.size() - 1; i >= 0; i--) {
SafetyCenterIssueActionId issueActionId = mSafetyCenterIssueActionsInFlight.keyAt(i);
diff --git a/service/java/com/android/safetycenter/SafetyCenterService.java b/service/java/com/android/safetycenter/SafetyCenterService.java
index 3cca78270..687c87f51 100644
--- a/service/java/com/android/safetycenter/SafetyCenterService.java
+++ b/service/java/com/android/safetycenter/SafetyCenterService.java
@@ -988,6 +988,7 @@ public final class SafetyCenterService extends SystemService {
synchronized (mApiLock) {
if (clearDataPermanently) {
mSafetyCenterRepository.clearForUser(userId);
+ mSafetyCenterIssueCache.clearForUser(userId);
}
mSafetyCenterListeners.clearForUser(userId);
mSafetyCenterRefreshTracker.clearRefreshForUser(userId);
@@ -1074,6 +1075,7 @@ public final class SafetyCenterService extends SystemService {
@GuardedBy("mApiLock")
private void clearDataLocked() {
mSafetyCenterRepository.clear();
+ mSafetyCenterIssueCache.clear();
mSafetyCenterTimeouts.clear();
mSafetyCenterRefreshTracker.clearRefresh();
scheduleWriteSafetyCenterIssueCacheFileIfNeededLocked();