diff options
author | 2022-10-11 10:15:49 +0000 | |
---|---|---|
committer | 2022-10-11 10:15:49 +0000 | |
commit | 63222de57db72c05e303cc58a4ca626ae054c19f (patch) | |
tree | 71f70d2d29562634ce17b5dd4940aeddf5db76e5 | |
parent | d4e9f330e96f2688436b4ac69229c228f5e09dc0 (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
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(); |