Preserve vault passwords as well while updating the database schema

This commit is contained in:
Julian Raufelder 2021-01-31 23:20:47 +01:00
parent 52e88b865d
commit 36f7b80002
No known key found for this signature in database
GPG Key ID: 17EE71F6634E381D

View File

@ -14,7 +14,7 @@ internal class Upgrade3To4 @Inject constructor() : DatabaseUpgrade(3, 4) {
override fun internalApplyTo(db: Database, origin: Int) { override fun internalApplyTo(db: Database, origin: Int) {
db.beginTransaction() db.beginTransaction()
try { try {
upgradeDatabaseScheme(db) upgradeDatabaseSchema(db)
updateVaultPositions(db) updateVaultPositions(db)
db.setTransactionSuccessful() db.setTransactionSuccessful()
} finally { } finally {
@ -22,7 +22,7 @@ internal class Upgrade3To4 @Inject constructor() : DatabaseUpgrade(3, 4) {
} }
} }
private fun upgradeDatabaseScheme(db: Database) { private fun upgradeDatabaseSchema(db: Database) {
Sql.alterTable("VAULT_ENTITY").renameTo("VAULT_ENTITY_OLD").executeOn(db) Sql.alterTable("VAULT_ENTITY").renameTo("VAULT_ENTITY_OLD").executeOn(db)
Sql.createTable("VAULT_ENTITY") // Sql.createTable("VAULT_ENTITY") //
.id() // .id() //
@ -36,8 +36,8 @@ internal class Upgrade3To4 @Inject constructor() : DatabaseUpgrade(3, 4) {
.executeOn(db) .executeOn(db)
Sql.insertInto("VAULT_ENTITY") // Sql.insertInto("VAULT_ENTITY") //
.select("_id", "FOLDER_CLOUD_ID", "FOLDER_PATH", "FOLDER_NAME", "CLOUD_ENTITY.TYPE") // .select("_id", "FOLDER_CLOUD_ID", "FOLDER_PATH", "FOLDER_NAME", "PASSWORD", "CLOUD_ENTITY.TYPE") //
.columns("_id", "FOLDER_CLOUD_ID", "FOLDER_PATH", "FOLDER_NAME", "CLOUD_TYPE") // .columns("_id", "FOLDER_CLOUD_ID", "FOLDER_PATH", "FOLDER_NAME", "PASSWORD", "CLOUD_TYPE") //
.from("VAULT_ENTITY_OLD") // .from("VAULT_ENTITY_OLD") //
.join("CLOUD_ENTITY", "VAULT_ENTITY_OLD.FOLDER_CLOUD_ID") // .join("CLOUD_ENTITY", "VAULT_ENTITY_OLD.FOLDER_CLOUD_ID") //
.executeOn(db) .executeOn(db)