Merge SafetyCenterStatusHolder into SafetyCenterManagerWrapper
Test: SettingsUnitTests
Bug: 220384387
Change-Id: I3886d3cf4717b5c7efd99ebd8ffb6a039e3565a4
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index e276484..57d7d10 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -33,7 +33,7 @@
import com.android.settings.network.SubscriptionUtil;
import com.android.settings.network.telephony.MobileNetworkUtils;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.safetycenter.SafetyCenterStatusHolder;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
import com.android.settings.security.SecuritySettingsFeatureProvider;
import com.google.android.setupdesign.util.ThemeHelper;
@@ -152,7 +152,7 @@
/** Redirects to SafetyCenter if enabled. */
@VisibleForTesting
public void handleSafetyCenterRedirection() {
- if (SafetyCenterStatusHolder.get().isEnabled(this)) {
+ if (SafetyCenterManagerWrapper.get().isEnabled(this)) {
try {
startActivity(new Intent(Intent.ACTION_SAFETY_CENTER));
finish();
@@ -213,7 +213,7 @@
/** Redirects to SafetyCenter if enabled. */
@VisibleForTesting
public void handleSafetyCenterRedirection() {
- if (SafetyCenterStatusHolder.get().isEnabled(this)) {
+ if (SafetyCenterManagerWrapper.get().isEnabled(this)) {
try {
startActivity(new Intent(Intent.ACTION_SAFETY_CENTER));
finish();
diff --git a/src/com/android/settings/privacy/PrivacyDashboardFragment.java b/src/com/android/settings/privacy/PrivacyDashboardFragment.java
index 0638c60..df59bd5 100644
--- a/src/com/android/settings/privacy/PrivacyDashboardFragment.java
+++ b/src/com/android/settings/privacy/PrivacyDashboardFragment.java
@@ -29,7 +29,7 @@
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.notification.LockScreenNotificationPreferenceController;
-import com.android.settings.safetycenter.SafetyCenterStatusHolder;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -118,7 +118,7 @@
@Override
protected boolean isPageSearchEnabled(Context context) {
- return !SafetyCenterStatusHolder.get().isEnabled(context);
+ return !SafetyCenterManagerWrapper.get().isEnabled(context);
}
};
}
diff --git a/src/com/android/settings/privacy/TopLevelPrivacyEntryPreferenceController.java b/src/com/android/settings/privacy/TopLevelPrivacyEntryPreferenceController.java
index 87daf7f..b553239 100644
--- a/src/com/android/settings/privacy/TopLevelPrivacyEntryPreferenceController.java
+++ b/src/com/android/settings/privacy/TopLevelPrivacyEntryPreferenceController.java
@@ -20,7 +20,7 @@
import android.content.Context;
import com.android.settings.core.BasePreferenceController;
-import com.android.settings.safetycenter.SafetyCenterStatusHolder;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
/** The preference controller for the top level privacy tile. */
public class TopLevelPrivacyEntryPreferenceController extends BasePreferenceController {
@@ -31,7 +31,7 @@
@Override
public int getAvailabilityStatus() {
- if (!SafetyCenterStatusHolder.get().isEnabled(mContext)) {
+ if (!SafetyCenterManagerWrapper.get().isEnabled(mContext)) {
return AVAILABLE;
}
return CONDITIONALLY_UNAVAILABLE;
diff --git a/src/com/android/settings/safetycenter/BiometricsSafetySource.java b/src/com/android/settings/safetycenter/BiometricsSafetySource.java
index f37ea03..296ca73 100644
--- a/src/com/android/settings/safetycenter/BiometricsSafetySource.java
+++ b/src/com/android/settings/safetycenter/BiometricsSafetySource.java
@@ -27,7 +27,7 @@
/** Sends biometric safety data to Safety Center. */
public static void sendSafetyData(Context context) {
- if (!SafetyCenterStatusHolder.get().isEnabled(context)) {
+ if (!SafetyCenterManagerWrapper.get().isEnabled(context)) {
return;
}
diff --git a/src/com/android/settings/safetycenter/LockScreenSafetySource.java b/src/com/android/settings/safetycenter/LockScreenSafetySource.java
index c9c1cd4..5ebe12a 100644
--- a/src/com/android/settings/safetycenter/LockScreenSafetySource.java
+++ b/src/com/android/settings/safetycenter/LockScreenSafetySource.java
@@ -40,7 +40,7 @@
/** Sends lock screen safety data to Safety Center. */
public static void sendSafetyData(Context context,
ScreenLockPreferenceDetailsUtils screenLockPreferenceDetailsUtils) {
- if (!SafetyCenterStatusHolder.get().isEnabled(context)) {
+ if (!SafetyCenterManagerWrapper.get().isEnabled(context)) {
return;
}
diff --git a/src/com/android/settings/safetycenter/SafetyCenterManagerWrapper.java b/src/com/android/settings/safetycenter/SafetyCenterManagerWrapper.java
index 7e47f23..e4a1d67 100644
--- a/src/com/android/settings/safetycenter/SafetyCenterManagerWrapper.java
+++ b/src/com/android/settings/safetycenter/SafetyCenterManagerWrapper.java
@@ -58,4 +58,24 @@
return;
}
}
+
+ /** Returns true is SafetyCenter page is enabled, false otherwise. */
+ public boolean isEnabled(Context context) {
+ if (context == null) {
+ Log.e(TAG, "Context is null at SafetyCenterManagerWrapper#isEnabled");
+ return false;
+ }
+ SafetyCenterManager safetyCenterManager =
+ context.getSystemService(SafetyCenterManager.class);
+ if (safetyCenterManager == null) {
+ Log.w(TAG, "System service SAFETY_CENTER_SERVICE (SafetyCenterManager) is null");
+ return false;
+ }
+ try {
+ return safetyCenterManager.isSafetyCenterEnabled();
+ } catch (RuntimeException e) {
+ Log.e(TAG, "Calling isSafetyCenterEnabled failed.", e);
+ return false;
+ }
+ }
}
diff --git a/src/com/android/settings/safetycenter/SafetyCenterStatusHolder.java b/src/com/android/settings/safetycenter/SafetyCenterStatusHolder.java
deleted file mode 100644
index 014c600..0000000
--- a/src/com/android/settings/safetycenter/SafetyCenterStatusHolder.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2022 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.safetycenter;
-
-import android.content.Context;
-import android.safetycenter.SafetyCenterManager;
-import android.util.Log;
-
-import com.android.internal.annotations.VisibleForTesting;
-
-/** Knows whether safety center is enabled or disabled. */
-public class SafetyCenterStatusHolder {
-
- private static final String TAG = "SafetyCenterStatusHolder";
-
- @VisibleForTesting
- public static SafetyCenterStatusHolder sInstance;
-
- private SafetyCenterStatusHolder() {}
-
- /** Returns an instance of {@link SafetyCenterStatusHolder}. */
- public static SafetyCenterStatusHolder get() {
- if (sInstance == null) {
- sInstance = new SafetyCenterStatusHolder();
- }
- return sInstance;
- }
-
- /** Returns true is SafetyCenter page is enabled, false otherwise. */
- public boolean isEnabled(Context context) {
- if (context == null) {
- Log.e(TAG, "Context is null at SafetyCenterStatusHolder#isEnabled");
- return false;
- }
- SafetyCenterManager safetyCenterManager =
- context.getSystemService(SafetyCenterManager.class);
- if (safetyCenterManager == null) {
- Log.w(TAG, "System service SAFETY_CENTER_SERVICE (SafetyCenterManager) is null");
- return false;
- }
- try {
- return safetyCenterManager.isSafetyCenterEnabled();
- } catch (RuntimeException e) {
- Log.e(TAG, "Calling isSafetyCenterEnabled failed.", e);
- return false;
- }
- }
-}
diff --git a/src/com/android/settings/safetycenter/SafetySourceBroadcastReceiver.java b/src/com/android/settings/safetycenter/SafetySourceBroadcastReceiver.java
index 558a8b9..a0d18c7 100644
--- a/src/com/android/settings/safetycenter/SafetySourceBroadcastReceiver.java
+++ b/src/com/android/settings/safetycenter/SafetySourceBroadcastReceiver.java
@@ -36,7 +36,7 @@
@Override
public void onReceive(Context context, Intent intent) {
- if (!SafetyCenterStatusHolder.get().isEnabled(context)) {
+ if (!SafetyCenterManagerWrapper.get().isEnabled(context)) {
return;
}
diff --git a/src/com/android/settings/safetycenter/TopLevelSafetyCenterEntryPreferenceController.java b/src/com/android/settings/safetycenter/TopLevelSafetyCenterEntryPreferenceController.java
index b00c084..af9509b 100644
--- a/src/com/android/settings/safetycenter/TopLevelSafetyCenterEntryPreferenceController.java
+++ b/src/com/android/settings/safetycenter/TopLevelSafetyCenterEntryPreferenceController.java
@@ -37,7 +37,7 @@
@Override
public int getAvailabilityStatus() {
- if (SafetyCenterStatusHolder.get().isEnabled(mContext)) {
+ if (SafetyCenterManagerWrapper.get().isEnabled(mContext)) {
return AVAILABLE;
}
return CONDITIONALLY_UNAVAILABLE;
diff --git a/src/com/android/settings/security/SecurityAdvancedSettings.java b/src/com/android/settings/security/SecurityAdvancedSettings.java
index e5f4945..f716064 100644
--- a/src/com/android/settings/security/SecurityAdvancedSettings.java
+++ b/src/com/android/settings/security/SecurityAdvancedSettings.java
@@ -34,7 +34,7 @@
import com.android.settings.biometrics.fingerprint.FingerprintProfileStatusPreferenceController;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.safetycenter.SafetyCenterStatusHolder;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.security.trustagent.TrustAgentListPreferenceController;
import com.android.settings.widget.PreferenceCategoryController;
@@ -92,7 +92,7 @@
final Context context = getContext();
if (context == null) {
return CATEGORY_SECURITY_LEGACY_ADVANCED_SETTINGS;
- } else if (SafetyCenterStatusHolder.get().isEnabled(context)) {
+ } else if (SafetyCenterManagerWrapper.get().isEnabled(context)) {
return CategoryKey.CATEGORY_SECURITY_ADVANCED_SETTINGS;
} else {
final SecuritySettingsFeatureProvider securitySettingsFeatureProvider =
diff --git a/src/com/android/settings/security/SecuritySettings.java b/src/com/android/settings/security/SecuritySettings.java
index 6bfbf6c..6aadee6 100644
--- a/src/com/android/settings/security/SecuritySettings.java
+++ b/src/com/android/settings/security/SecuritySettings.java
@@ -25,7 +25,7 @@
import com.android.settings.biometrics.fingerprint.FingerprintStatusPreferenceController;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.safetycenter.SafetyCenterStatusHolder;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.security.trustagent.TrustAgentListPreferenceController;
import com.android.settings.widget.PreferenceCategoryController;
@@ -129,7 +129,7 @@
protected boolean isPageSearchEnabled(Context context) {
return !FeatureFactory.getFactory(context).getSecuritySettingsFeatureProvider()
.hasAlternativeSecuritySettingsFragment()
- && !SafetyCenterStatusHolder.get().isEnabled(context);
+ && !SafetyCenterManagerWrapper.get().isEnabled(context);
}
};
}
diff --git a/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java b/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java
index 11d1dc3..3cf40a0 100644
--- a/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java
+++ b/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java
@@ -24,7 +24,7 @@
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.safetycenter.SafetyCenterStatusHolder;
+import com.android.settings.safetycenter.SafetyCenterManagerWrapper;
public class TopLevelSecurityEntryPreferenceController extends BasePreferenceController {
@@ -38,7 +38,7 @@
@Override
public int getAvailabilityStatus() {
- if (!SafetyCenterStatusHolder.get().isEnabled(mContext)) {
+ if (!SafetyCenterManagerWrapper.get().isEnabled(mContext)) {
return AVAILABLE;
}
return CONDITIONALLY_UNAVAILABLE;