From 56e7c53f7062d559efb3abc93d9b68d382bac382 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaroslav=20Dr=C5=BE=C3=ADk?= Date: Sun, 9 Feb 2025 18:33:04 +0100 Subject: [PATCH] Add migrations --- .../ktans/db/migration/V4__add_lang_code.kt | 28 +++++++++++++++++++ .../ktans/db/migration/V5__add_indexes.kt | 24 ++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V4__add_lang_code.kt create mode 100644 shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V5__add_indexes.kt diff --git a/shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V4__add_lang_code.kt b/shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V4__add_lang_code.kt new file mode 100644 index 0000000..8901ad2 --- /dev/null +++ b/shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V4__add_lang_code.kt @@ -0,0 +1,28 @@ +package db.migration + +import dao.DictionaryDao +import kotlinx.serialization.decodeFromString +import tables.* +import org.flywaydb.core.api.migration.BaseJavaMigration +import org.flywaydb.core.api.migration.Context +import org.jetbrains.exposed.dao.id.EntityID +import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.sql.transactions.transaction +import kotlin.system.exitProcess + +class V4__add_lang_code: BaseJavaMigration() { + override fun migrate(context: Context?) { + transaction { + val mapOfCodes = mapOf(1 to "SK",2 to "CZ", 3 to "GB",4 to "NL", 5 to "FR", 6 to "DE", 7 to "IT", 8 to "IT", + 9 to "HU", 10 to "PL", 11 to "PT", 12 to "RU", 13 to "ES", 14 to "SE" ) + SchemaUtils.createMissingTablesAndColumns(Languages) + for (l in Languages.selectAll()) { + val id = l[Languages.id] + Languages.update({ Languages.id eq id}) { + it[alphaCode] = mapOfCodes[id.value] + } + } + } + } +} + diff --git a/shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V5__add_indexes.kt b/shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V5__add_indexes.kt new file mode 100644 index 0000000..1094884 --- /dev/null +++ b/shared/src/commonMain/kotlin/org/neutrino/ktans/db/migration/V5__add_indexes.kt @@ -0,0 +1,24 @@ +package db.migration + +import dao.DictionaryDao +import kotlinx.serialization.decodeFromString +import tables.* +import org.flywaydb.core.api.migration.BaseJavaMigration +import org.flywaydb.core.api.migration.Context +import org.jetbrains.exposed.dao.id.EntityID +import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.sql.transactions.transaction +import kotlin.system.exitProcess +import service.DatabaseFactory + +class V5__add_indexes: BaseJavaMigration() { + override fun migrate(context: Context?) { + DatabaseFactory.connectAll() + // for ((id,dict) in DatabaseFactory.getDictionaies()) { + transaction (1) { + SchemaUtils.createMissingTablesAndColumns(Terms) + } + //} + } +} +