From c524cc6fdf383f0c1c25591509312ef0280f1b0d Mon Sep 17 00:00:00 2001 From: pricelees Date: Sat, 27 Sep 2025 20:16:33 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20=EC=83=88=EB=A1=9C=20=EB=B6=84?= =?UTF-8?q?=EB=A6=AC=EB=90=9C=20persistence=20=EB=AA=A8=EB=93=88=EC=97=90?= =?UTF-8?q?=20=EA=B8=B0=EC=A1=B4=20TsidFactory=20=EC=B6=94=EC=83=81?= =?UTF-8?q?=ED=99=94=20=EB=B0=8F=20=EC=9E=AC=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sangdol/common/persistence/IDGenerator.kt | 13 +++++++++++++ .../roomescape/common/config/TsidConfig.kt | 17 ----------------- 2 files changed, 13 insertions(+), 17 deletions(-) create mode 100644 common/persistence/src/main/kotlin/com/sangdol/common/persistence/IDGenerator.kt delete mode 100644 service/src/main/kotlin/com/sangdol/roomescape/common/config/TsidConfig.kt diff --git a/common/persistence/src/main/kotlin/com/sangdol/common/persistence/IDGenerator.kt b/common/persistence/src/main/kotlin/com/sangdol/common/persistence/IDGenerator.kt new file mode 100644 index 00000000..ba6778ff --- /dev/null +++ b/common/persistence/src/main/kotlin/com/sangdol/common/persistence/IDGenerator.kt @@ -0,0 +1,13 @@ +package com.sangdol.common.persistence + +import com.github.f4b6a3.tsid.TsidFactory + +interface IDGenerator { + fun create(): Long +} + +class TsidIDGenerator( + private val tsidFactory: TsidFactory +) : IDGenerator { + override fun create(): Long = tsidFactory.create().toLong() +} diff --git a/service/src/main/kotlin/com/sangdol/roomescape/common/config/TsidConfig.kt b/service/src/main/kotlin/com/sangdol/roomescape/common/config/TsidConfig.kt deleted file mode 100644 index 5561e6b7..00000000 --- a/service/src/main/kotlin/com/sangdol/roomescape/common/config/TsidConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.sangdol.roomescape.common.config - -import com.github.f4b6a3.tsid.TsidFactory -import org.springframework.beans.factory.annotation.Value -import org.springframework.context.annotation.Bean -import org.springframework.context.annotation.Configuration - -@Configuration -class TsidConfig { - @Value("\${POD_NAME:app-0}") - private lateinit var podName: String - - @Bean - fun tsidFactory(): TsidFactory = TsidFactory(podName.substringAfterLast("-").toInt()) -} - -fun TsidFactory.next(): Long = this.create().toLong() \ No newline at end of file