From e33489bda1b02bdf4371998ff17c5df40d76be9e Mon Sep 17 00:00:00 2001 From: Andrew Golovashevich <landgrafhomyak@gmail.com> Date: Thu, 13 Feb 2025 11:28:58 +0300 Subject: [PATCH] Version of module template moved to constructor --- .../landgrafhomyak/db/serdha0/api/module/ModuleTemplate.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/module/ModuleTemplate.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/module/ModuleTemplate.kt index e20e950..837ac40 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/module/ModuleTemplate.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/module/ModuleTemplate.kt @@ -8,12 +8,10 @@ public interface ModuleTemplate<@Suppress("unused") mUE : Any> { public interface Scope { public fun <nmUE : Any> createTemplate( - versionKey: String, constructor: ModuleConstructor<nmUE>, ): ModuleTemplate<nmUE> public fun <omUE : Any, nmUE : Any> upgradeTemplate( - versionKey: String, oldModule: ModuleTemplate<omUE>, upgrade: ModuleUpgrade<omUE, nmUE>, ): ModuleTemplate<nmUE> @@ -21,18 +19,21 @@ public interface ModuleTemplate<@Suppress("unused") mUE : Any> { public fun <omUE : Any, nmUE : Any> upgradeTemplateAndMerge( oldModule: ModuleTemplate<omUE>, upgrade: ModuleUpgrade<omUE, nmUE>, - mergePoint: ModuleTemplate<nmUE> + mergeTo: ModuleTemplate<nmUE> ): ModuleTemplate<nmUE> } } public interface ModuleConstructor<mUE : Any> { + public val versionKey: String + public fun createSchema(context: CreateModuleScope): mUE public suspend fun initData(ext: mUE, transaction: Transaction) {} } public interface ModuleUpgrade<omUE : Any, nmUE : Any> { + public val versionKey: String public fun upgradeSchema(context: UpgradeModuleScope<omUE>): nmUE