Loading legacy/core/src/main/java/com/fsck/k9/preferences/AccountSettingsDescriptions.java +1 −5 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ import static com.fsck.k9.preferences.upgrader.AccountSettingsUpgraderTo53.FOLDE class AccountSettingsDescriptions { static final Map<String, TreeMap<Integer, SettingsDescription<?>>> SETTINGS; private static final Map<Integer, SettingsUpgrader> UPGRADERS; static final Map<Integer, SettingsUpgrader> UPGRADERS; static { Map<String, TreeMap<Integer, SettingsDescription<?>>> s = new LinkedHashMap<>(); Loading Loading @@ -302,10 +302,6 @@ class AccountSettingsDescriptions { return Settings.validate(version, SETTINGS, importedSettings, useDefaultValues); } public static Map<String, Object> upgrade(int version, Map<String, Object> validatedSettings) { return SettingsUpgradeHelper.upgrade(version, UPGRADERS, SETTINGS, validatedSettings); } public static Map<String, String> convert(Map<String, Object> settings) { return Settings.convert(settings, SETTINGS); } Loading legacy/core/src/main/java/com/fsck/k9/preferences/AccountSettingsUpgrader.kt +12 −2 Original line number Diff line number Diff line Loading @@ -4,15 +4,18 @@ internal class AccountSettingsUpgrader( private val identitySettingsUpgrader: IdentitySettingsUpgrader, private val folderSettingsUpgrader: FolderSettingsUpgrader, private val serverSettingsUpgrader: ServerSettingsUpgrader, private val latestVersion: Int = Settings.VERSION, private val settingsDescriptions: SettingsDescriptions = AccountSettingsDescriptions.SETTINGS, private val upgraders: Map<Int, SettingsUpgrader> = AccountSettingsDescriptions.UPGRADERS, ) { fun upgrade(contentVersion: Int, account: ValidatedSettings.Account): ValidatedSettings.Account { if (contentVersion == Settings.VERSION) { if (contentVersion == latestVersion) { return account } return account.copy( settings = AccountSettingsDescriptions.upgrade(contentVersion, account.settings), settings = upgradeAccountSettings(contentVersion, account.settings), incoming = serverSettingsUpgrader.upgrade(contentVersion, account.incoming), outgoing = serverSettingsUpgrader.upgrade(contentVersion, account.outgoing), identities = upgradeIdentities(contentVersion, account.identities), Loading @@ -20,6 +23,13 @@ internal class AccountSettingsUpgrader( ) } private fun upgradeAccountSettings( contentVersion: Int, settings: InternalSettingsMap, ): InternalSettingsMap { return SettingsUpgradeHelper.upgrade(contentVersion, upgraders, settingsDescriptions, settings) } private fun upgradeIdentities( contentVersion: Int, identities: List<ValidatedSettings.Identity>, Loading legacy/core/src/main/java/com/fsck/k9/preferences/FolderSettingsDescriptions.java +1 −5 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ import com.fsck.k9.preferences.Settings.V; class FolderSettingsDescriptions { static final Map<String, TreeMap<Integer, SettingsDescription<?>>> SETTINGS; private static final Map<Integer, SettingsUpgrader> UPGRADERS; static final Map<Integer, SettingsUpgrader> UPGRADERS; static { Map<String, TreeMap<Integer, SettingsDescription<?>>> s = new LinkedHashMap<>(); Loading Loading @@ -57,10 +57,6 @@ class FolderSettingsDescriptions { return Settings.validate(version, SETTINGS, importedSettings, useDefaultValues); } public static Map<String, Object> upgrade(int version, Map<String, Object> validatedSettings) { return SettingsUpgradeHelper.upgrade(version, UPGRADERS, SETTINGS, validatedSettings); } public static Map<String, String> convert(Map<String, Object> settings) { return Settings.convert(settings, SETTINGS); } Loading legacy/core/src/main/java/com/fsck/k9/preferences/FolderSettingsUpgrader.kt +12 −3 Original line number Diff line number Diff line package com.fsck.k9.preferences internal class FolderSettingsUpgrader { internal class FolderSettingsUpgrader( private val latestVersion: Int = Settings.VERSION, private val settingsDescriptions: SettingsDescriptions = FolderSettingsDescriptions.SETTINGS, private val upgraders: Map<Int, SettingsUpgrader> = FolderSettingsDescriptions.UPGRADERS, ) { fun upgrade(contentVersion: Int, folder: ValidatedSettings.Folder): ValidatedSettings.Folder { if (contentVersion == Settings.VERSION) { if (contentVersion == latestVersion) { return folder } val upgradedSettings = FolderSettingsDescriptions.upgrade(contentVersion, folder.settings) val upgradedSettings = SettingsUpgradeHelper.upgrade( contentVersion, upgraders, settingsDescriptions, folder.settings, ) return folder.copy(settings = upgradedSettings) } Loading legacy/core/src/main/java/com/fsck/k9/preferences/IdentitySettingsDescriptions.java +1 −5 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ import com.fsck.k9.preferences.Settings.V; class IdentitySettingsDescriptions { static final Map<String, TreeMap<Integer, SettingsDescription<?>>> SETTINGS; private static final Map<Integer, SettingsUpgrader> UPGRADERS; static final Map<Integer, SettingsUpgrader> UPGRADERS; static { Map<String, TreeMap<Integer, SettingsDescription<?>>> s = new LinkedHashMap<>(); Loading Loading @@ -50,10 +50,6 @@ class IdentitySettingsDescriptions { return Settings.validate(version, SETTINGS, importedSettings, useDefaultValues); } public static Map<String, Object> upgrade(int version, Map<String, Object> validatedSettings) { return SettingsUpgradeHelper.upgrade(version, UPGRADERS, SETTINGS, validatedSettings); } public static Map<String, String> convert(Map<String, Object> settings) { return Settings.convert(settings, SETTINGS); } Loading Loading
legacy/core/src/main/java/com/fsck/k9/preferences/AccountSettingsDescriptions.java +1 −5 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ import static com.fsck.k9.preferences.upgrader.AccountSettingsUpgraderTo53.FOLDE class AccountSettingsDescriptions { static final Map<String, TreeMap<Integer, SettingsDescription<?>>> SETTINGS; private static final Map<Integer, SettingsUpgrader> UPGRADERS; static final Map<Integer, SettingsUpgrader> UPGRADERS; static { Map<String, TreeMap<Integer, SettingsDescription<?>>> s = new LinkedHashMap<>(); Loading Loading @@ -302,10 +302,6 @@ class AccountSettingsDescriptions { return Settings.validate(version, SETTINGS, importedSettings, useDefaultValues); } public static Map<String, Object> upgrade(int version, Map<String, Object> validatedSettings) { return SettingsUpgradeHelper.upgrade(version, UPGRADERS, SETTINGS, validatedSettings); } public static Map<String, String> convert(Map<String, Object> settings) { return Settings.convert(settings, SETTINGS); } Loading
legacy/core/src/main/java/com/fsck/k9/preferences/AccountSettingsUpgrader.kt +12 −2 Original line number Diff line number Diff line Loading @@ -4,15 +4,18 @@ internal class AccountSettingsUpgrader( private val identitySettingsUpgrader: IdentitySettingsUpgrader, private val folderSettingsUpgrader: FolderSettingsUpgrader, private val serverSettingsUpgrader: ServerSettingsUpgrader, private val latestVersion: Int = Settings.VERSION, private val settingsDescriptions: SettingsDescriptions = AccountSettingsDescriptions.SETTINGS, private val upgraders: Map<Int, SettingsUpgrader> = AccountSettingsDescriptions.UPGRADERS, ) { fun upgrade(contentVersion: Int, account: ValidatedSettings.Account): ValidatedSettings.Account { if (contentVersion == Settings.VERSION) { if (contentVersion == latestVersion) { return account } return account.copy( settings = AccountSettingsDescriptions.upgrade(contentVersion, account.settings), settings = upgradeAccountSettings(contentVersion, account.settings), incoming = serverSettingsUpgrader.upgrade(contentVersion, account.incoming), outgoing = serverSettingsUpgrader.upgrade(contentVersion, account.outgoing), identities = upgradeIdentities(contentVersion, account.identities), Loading @@ -20,6 +23,13 @@ internal class AccountSettingsUpgrader( ) } private fun upgradeAccountSettings( contentVersion: Int, settings: InternalSettingsMap, ): InternalSettingsMap { return SettingsUpgradeHelper.upgrade(contentVersion, upgraders, settingsDescriptions, settings) } private fun upgradeIdentities( contentVersion: Int, identities: List<ValidatedSettings.Identity>, Loading
legacy/core/src/main/java/com/fsck/k9/preferences/FolderSettingsDescriptions.java +1 −5 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ import com.fsck.k9.preferences.Settings.V; class FolderSettingsDescriptions { static final Map<String, TreeMap<Integer, SettingsDescription<?>>> SETTINGS; private static final Map<Integer, SettingsUpgrader> UPGRADERS; static final Map<Integer, SettingsUpgrader> UPGRADERS; static { Map<String, TreeMap<Integer, SettingsDescription<?>>> s = new LinkedHashMap<>(); Loading Loading @@ -57,10 +57,6 @@ class FolderSettingsDescriptions { return Settings.validate(version, SETTINGS, importedSettings, useDefaultValues); } public static Map<String, Object> upgrade(int version, Map<String, Object> validatedSettings) { return SettingsUpgradeHelper.upgrade(version, UPGRADERS, SETTINGS, validatedSettings); } public static Map<String, String> convert(Map<String, Object> settings) { return Settings.convert(settings, SETTINGS); } Loading
legacy/core/src/main/java/com/fsck/k9/preferences/FolderSettingsUpgrader.kt +12 −3 Original line number Diff line number Diff line package com.fsck.k9.preferences internal class FolderSettingsUpgrader { internal class FolderSettingsUpgrader( private val latestVersion: Int = Settings.VERSION, private val settingsDescriptions: SettingsDescriptions = FolderSettingsDescriptions.SETTINGS, private val upgraders: Map<Int, SettingsUpgrader> = FolderSettingsDescriptions.UPGRADERS, ) { fun upgrade(contentVersion: Int, folder: ValidatedSettings.Folder): ValidatedSettings.Folder { if (contentVersion == Settings.VERSION) { if (contentVersion == latestVersion) { return folder } val upgradedSettings = FolderSettingsDescriptions.upgrade(contentVersion, folder.settings) val upgradedSettings = SettingsUpgradeHelper.upgrade( contentVersion, upgraders, settingsDescriptions, folder.settings, ) return folder.copy(settings = upgradedSettings) } Loading
legacy/core/src/main/java/com/fsck/k9/preferences/IdentitySettingsDescriptions.java +1 −5 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ import com.fsck.k9.preferences.Settings.V; class IdentitySettingsDescriptions { static final Map<String, TreeMap<Integer, SettingsDescription<?>>> SETTINGS; private static final Map<Integer, SettingsUpgrader> UPGRADERS; static final Map<Integer, SettingsUpgrader> UPGRADERS; static { Map<String, TreeMap<Integer, SettingsDescription<?>>> s = new LinkedHashMap<>(); Loading Loading @@ -50,10 +50,6 @@ class IdentitySettingsDescriptions { return Settings.validate(version, SETTINGS, importedSettings, useDefaultValues); } public static Map<String, Object> upgrade(int version, Map<String, Object> validatedSettings) { return SettingsUpgradeHelper.upgrade(version, UPGRADERS, SETTINGS, validatedSettings); } public static Map<String, String> convert(Map<String, Object> settings) { return Settings.convert(settings, SETTINGS); } Loading