summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jacky Wang <jiannan@google.com> 2024-11-17 14:20:44 +0800
committer Jacky Wang <jiannan@google.com> 2024-11-17 14:20:44 +0800
commitc6bc983c3f78e0d59885d716f7c981fff85431ab (patch)
tree4d4b845f150326b392af58ce5fe5d0e30c61da7d
parent5e0ea6fde4713b37802aa77b6ec78d3aaf95c88b (diff)
[Catalyst] Clean up SharedPreferencesObservable
Bug: 378795106 Flag: EXEMPT clean up Test: N/A Change-Id: Iaac9f819da5e2286b170920b664157c13124d6a3
-rw-r--r--packages/SettingsLib/DataStore/src/com/android/settingslib/datastore/SharedPreferencesObservable.kt45
1 files changed, 0 insertions, 45 deletions
diff --git a/packages/SettingsLib/DataStore/src/com/android/settingslib/datastore/SharedPreferencesObservable.kt b/packages/SettingsLib/DataStore/src/com/android/settingslib/datastore/SharedPreferencesObservable.kt
deleted file mode 100644
index e70ec5b2e38e..000000000000
--- a/packages/SettingsLib/DataStore/src/com/android/settingslib/datastore/SharedPreferencesObservable.kt
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2024 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.settingslib.datastore
-
-import android.content.SharedPreferences
-
-/** [SharedPreferences] based [KeyedDataObservable]. */
-class SharedPreferencesObservable(private val sharedPreferences: SharedPreferences) :
- KeyedDataObservable<String>(), AutoCloseable {
-
- private val listener = createSharedPreferenceListener()
-
- init {
- sharedPreferences.registerOnSharedPreferenceChangeListener(listener)
- }
-
- override fun close() {
- sharedPreferences.unregisterOnSharedPreferenceChangeListener(listener)
- }
-}
-
-/** Creates [SharedPreferences.OnSharedPreferenceChangeListener] for [KeyedObservable]. */
-internal fun KeyedObservable<String>.createSharedPreferenceListener() =
- SharedPreferences.OnSharedPreferenceChangeListener { _, key ->
- if (key != null) {
- notifyChange(key, DataChangeReason.UPDATE)
- } else {
- // On Android >= R, SharedPreferences.Editor.clear() will trigger this case
- notifyChange(DataChangeReason.DELETE)
- }
- }