Simplifying settings string generation. am: 82b0e1ccdb

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16980814

Change-Id: Ic1b46b0e0cc05f6cfbed6e2d672ea4daafa89ad8
This commit is contained in:
Kweku Adams
2022-02-22 21:14:27 +00:00
committed by Automerger Merge Worker

View File

@@ -565,7 +565,6 @@ public class TareFactorController {
} }
} }
/** /**
* Iterates through the factor policy map for keys and current values to * Iterates through the factor policy map for keys and current values to
* rebuild a current string that is then assigned to be the new global settings string. * rebuild a current string that is then assigned to be the new global settings string.
@@ -573,50 +572,18 @@ public class TareFactorController {
* @param factorPolicy policy being updated * @param factorPolicy policy being updated
*/ */
private void rebuildPolicyConstants(int factorPolicy) { private void rebuildPolicyConstants(int factorPolicy) {
StringBuilder newConstantsStringBuilder = new StringBuilder();
switch (factorPolicy) { switch (factorPolicy) {
case POLICY_ALARM_MANAGER: case POLICY_ALARM_MANAGER:
int sizeAM = mAlarmManagerMap.size(); writeConstantsToSettings(mAlarmManagerMap,
Settings.Global.TARE_ALARM_MANAGER_CONSTANTS);
for (int i = 0; i < sizeAM; i++) {
if (i > 0) {
newConstantsStringBuilder.append(",");
}
String key = mAlarmManagerMap.keyAt(i);
newConstantsStringBuilder.append(key + "=" + mAlarmManagerMap.get(key)
.currentValue);
}
String newAMConstantsString = newConstantsStringBuilder.toString();
Settings.Global.putString(mContentResolver, Settings.Global
.TARE_ALARM_MANAGER_CONSTANTS,
newAMConstantsString);
mAlarmManagerConstants = Settings.Global mAlarmManagerConstants = Settings.Global
.getString(mContentResolver, Settings.Global .getString(mContentResolver, Settings.Global
.TARE_ALARM_MANAGER_CONSTANTS); .TARE_ALARM_MANAGER_CONSTANTS);
break; break;
case POLICY_JOB_SCHEDULER: case POLICY_JOB_SCHEDULER:
int sizeJS = mJobSchedulerMap.size(); writeConstantsToSettings(mJobSchedulerMap,
Settings.Global.TARE_JOB_SCHEDULER_CONSTANTS);
for (int i = 0; i < sizeJS; i++) {
if (i > 0) {
newConstantsStringBuilder.append(",");
}
String key = mJobSchedulerMap.keyAt(i);
newConstantsStringBuilder.append(key + "=" + mJobSchedulerMap.get(key)
.currentValue);
}
String newJSConstantsString = newConstantsStringBuilder.toString();
Settings.Global.putString(mContentResolver, Settings.Global
.TARE_JOB_SCHEDULER_CONSTANTS,
newJSConstantsString);
mJobSchedulerConstants = Settings.Global mJobSchedulerConstants = Settings.Global
.getString(mContentResolver, Settings.Global .getString(mContentResolver, Settings.Global
@@ -625,6 +592,29 @@ public class TareFactorController {
} }
} }
private void writeConstantsToSettings(ArrayMap<String, TareFactorData> factorMap,
String settingsKey) {
final StringBuilder constantsStringBuilder = new StringBuilder();
for (int i = 0, size = factorMap.size(); i < size; ++i) {
final TareFactorData factor = factorMap.valueAt(i);
if (factor.currentValue == factor.defaultValue) {
continue;
}
if (constantsStringBuilder.length() > 0) {
constantsStringBuilder.append(",");
}
constantsStringBuilder
.append(factorMap.keyAt(i))
.append("=")
.append(factor.currentValue);
}
Settings.Global.putString(mContentResolver, settingsKey, constantsStringBuilder.toString());
}
/** /**
* Creates a dialog with the values linked to the key. * Creates a dialog with the values linked to the key.
* *