From 7c527699c23780b22ebd08f2860f1d655516634a Mon Sep 17 00:00:00 2001 From: Laurent Date: Wed, 26 Oct 2022 16:30:40 +0200 Subject: [PATCH] Fixes migration --- app/build.gradle | 4 +- .../android/model/migrations/Patcher.kt | 5 ++- .../migrations/PokerAnalyticsMigration.kt | 42 +++++++++---------- .../android/model/realm/Performance.kt | 2 + 4 files changed, 29 insertions(+), 24 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index d313f6a5..89e80ee4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -35,8 +35,8 @@ android { applicationId "net.pokeranalytics.android" minSdkVersion 23 targetSdkVersion 32 - versionCode 143 - versionName "6.0" + versionCode 144 + versionName "6.0.1" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/net/pokeranalytics/android/model/migrations/Patcher.kt b/app/src/main/java/net/pokeranalytics/android/model/migrations/Patcher.kt index add25cf1..89db8b65 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/migrations/Patcher.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/migrations/Patcher.kt @@ -65,7 +65,10 @@ class Patcher { val realm = Realm.getDefaultInstance() val transactionTypes = TransactionType.Value.values() - Seed.createDefaultTransactionTypes(transactionTypes, context, realm) + + realm.executeTransaction { + Seed.createDefaultTransactionTypes(transactionTypes, context, realm) + } realm.close() } diff --git a/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt b/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt index dc2d5914..8ca95a3e 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt @@ -286,29 +286,29 @@ class PokerAnalyticsMigration : RealmMigration { hs.renameField("bigBlind", "oldBigBlind") } - // Migrate to version 13 - if (currentVersion == 12) { - Timber.d("*** Running migration ${currentVersion + 1}") - schema.get("TransactionType")?.let { tts -> - tts.addField("transferRate", Double::class.java) - .setNullable("transferRate", true) - schema.get("Bankroll")?.let { bs -> - tts.addRealmObjectField("destination", bs) - } ?: throw PAIllegalStateException("Bankroll schema not found") - } + currentVersion++ + } - schema.create("Performance")?.let { schema -> - schema.addField("id", String::class.java).setRequired("id", true) - schema.addPrimaryKey("id") - schema.addField("reportId", Int::class.java).setRequired("report", true) - schema.addField("key", Int::class.java).setRequired("key", true) - schema.addField("name", String::class.java).setNullable("name", true) - schema.addField("objectId", String::class.java).setNullable("objectId", true) - schema.addField("customFieldId", String::class.java).setNullable("customFieldId", true) - schema.addField("value", Double::class.java).setNullable("value", true) - } + // Migrate to version 13 + if (currentVersion == 12) { + Timber.d("*** Running migration ${currentVersion + 1}") + schema.get("Transaction")?.let { tts -> + tts.addField("transferRate", Double::class.java) + .setNullable("transferRate", true) + schema.get("Bankroll")?.let { bs -> + tts.addRealmObjectField("destination", bs) + } ?: throw PAIllegalStateException("Bankroll schema not found") + } - currentVersion++ + schema.create("Performance")?.let { ps -> + ps.addField("id", String::class.java).setRequired("id", true) + ps.addPrimaryKey("id") + ps.addField("reportId", Int::class.java) + ps.addField("key", Int::class.java) + ps.addField("name", String::class.java) + ps.addField("objectId", String::class.java)//.setNullable("objectId", true) + ps.addField("customFieldId", String::class.java)//.setNullable("customFieldId", true) + ps.addField("value", Double::class.java).setRequired("value", false) //.setNullable("value", true) } currentVersion++ diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/Performance.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/Performance.kt index 954c89f6..65ae3e53 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/Performance.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/Performance.kt @@ -2,6 +2,7 @@ package net.pokeranalytics.android.model.realm import io.realm.Realm import io.realm.RealmObject +import io.realm.annotations.PrimaryKey import net.pokeranalytics.android.calculus.Stat import net.pokeranalytics.android.model.LiveOnline import net.pokeranalytics.android.ui.view.rows.StaticReport @@ -17,6 +18,7 @@ interface PerformanceKey { open class Performance() : RealmObject() { + @PrimaryKey var id: String = UUID.randomUUID().toString() constructor(