Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ad1c4a9 authored by Kweku Adams's avatar Kweku Adams Committed by Automerger Merge Worker
Browse files

Simplifying settings string generation. am: 82b0e1cc am: e6f24f02

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

Change-Id: I80e5e86952ce74d234cd3f366fbfc4bd7498b1d3
parents 2aeaefba e6f24f02
Loading
Loading
Loading
Loading
+27 −37
Original line number Diff line number Diff line
@@ -565,7 +565,6 @@ public class TareFactorController {
        }
    }


    /**
     * 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.
@@ -573,56 +572,47 @@ public class TareFactorController {
     * @param factorPolicy policy being updated
     */
    private void rebuildPolicyConstants(int factorPolicy) {
        StringBuilder newConstantsStringBuilder = new StringBuilder();

        switch (factorPolicy) {
            case POLICY_ALARM_MANAGER:
                int sizeAM = mAlarmManagerMap.size();

                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);
                writeConstantsToSettings(mAlarmManagerMap,
                        Settings.Global.TARE_ALARM_MANAGER_CONSTANTS);

                mAlarmManagerConstants = Settings.Global
                        .getString(mContentResolver, Settings.Global
                                .TARE_ALARM_MANAGER_CONSTANTS);
                break;
            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(",");
                mJobSchedulerConstants = Settings.Global
                        .getString(mContentResolver, Settings.Global
                                .TARE_JOB_SCHEDULER_CONSTANTS);
                break;
        }

                    String key = mJobSchedulerMap.keyAt(i);
                    newConstantsStringBuilder.append(key + "=" + mJobSchedulerMap.get(key)
                            .currentValue);
    }

                String newJSConstantsString = newConstantsStringBuilder.toString();
    private void writeConstantsToSettings(ArrayMap<String, TareFactorData> factorMap,
            String settingsKey) {
        final StringBuilder constantsStringBuilder = new StringBuilder();

                Settings.Global.putString(mContentResolver, Settings.Global
                                .TARE_JOB_SCHEDULER_CONSTANTS,
                        newJSConstantsString);
        for (int i = 0, size = factorMap.size(); i < size; ++i) {
            final TareFactorData factor = factorMap.valueAt(i);
            if (factor.currentValue == factor.defaultValue) {
                continue;
            }

                mJobSchedulerConstants = Settings.Global
                        .getString(mContentResolver, Settings.Global
                                .TARE_JOB_SCHEDULER_CONSTANTS);
                break;
            if (constantsStringBuilder.length() > 0) {
                constantsStringBuilder.append(",");
            }

            constantsStringBuilder
                    .append(factorMap.keyAt(i))
                    .append("=")
                    .append(factor.currentValue);
        }

        Settings.Global.putString(mContentResolver, settingsKey, constantsStringBuilder.toString());
    }

    /**