From 8365fa17677b5694a67d9f11b4d261446a23253d Mon Sep 17 00:00:00 2001 From: dalbodeule <11470513+dalbodeule@users.noreply.github.com> Date: Tue, 30 Jul 2024 15:48:39 +0900 Subject: [PATCH] debug with eagerLoading - debug with eagerLoading. Exposed is lazyLoading. But, This program requires eagerLoading. So, I make eagerLoading methods. --- .../common/services/ManagerService.kt | 21 +++++++++++++------ gradle.properties | 2 +- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/common/src/main/kotlin/space/mori/chzzk_bot/common/services/ManagerService.kt b/common/src/main/kotlin/space/mori/chzzk_bot/common/services/ManagerService.kt index 49615f8..796ce59 100644 --- a/common/src/main/kotlin/space/mori/chzzk_bot/common/services/ManagerService.kt +++ b/common/src/main/kotlin/space/mori/chzzk_bot/common/services/ManagerService.kt @@ -26,10 +26,8 @@ object ManagerService { if (user.liveAlertGuild == null) throw RuntimeException("${user.username} has no liveAlertGuild") - val manager = getUser(user.liveAlertGuild!!, discordId) + val manager = getUser(user.liveAlertGuild!!, discordId) ?: throw RuntimeException("$name isn't manager.") - if (manager == null) - throw RuntimeException("$name isn't manager.") manager.lastUserName = name return manager @@ -38,16 +36,23 @@ object ManagerService { fun getUser(guildId: Long, discordId: Long): Manager? { return transaction { val manager = Manager.find( - (Managers.discordGuildId eq guildId) and (Managers.managerId eq discordId) + (Managers.discordGuildId eq guildId) and (Managers.managerId eq discordId), ) - manager.firstOrNull() + val result = manager.firstOrNull() + + result?.eagerLoad() + result } } fun getAllUsers(guildId: Long): List { return transaction { - Manager.find(Managers.discordGuildId eq guildId).toList() + val result = Manager.find(Managers.discordGuildId eq guildId).toList() + + result.forEach { it.eagerLoad() } + + result } } @@ -67,4 +72,8 @@ object ManagerService { managerRow } } + + fun Manager.eagerLoad() { + this.user + } } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 34c6fb8..da20dc7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,6 @@ kotlin.code.style=official group = space.mori -version = 1.1.0 +version = 1.1.1 org.gradle.jvmargs=-Dfile.encoding=UTF-8 org.gradle.console=plain