From 6ee21f0e879ea222754915c9bed26aec33515295 Mon Sep 17 00:00:00 2001 From: Jari Date: Sat, 18 Oct 2025 17:18:13 +0200 Subject: [PATCH] Add Converter --- .../db/converters/MonthListConverter.kt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/main/kotlin/org/octopus/internal/db/converters/MonthListConverter.kt diff --git a/src/main/kotlin/org/octopus/internal/db/converters/MonthListConverter.kt b/src/main/kotlin/org/octopus/internal/db/converters/MonthListConverter.kt new file mode 100644 index 0000000..e27f8be --- /dev/null +++ b/src/main/kotlin/org/octopus/internal/db/converters/MonthListConverter.kt @@ -0,0 +1,19 @@ +package org.octopus.internal.db.converters + +import jakarta.persistence.AttributeConverter +import jakarta.persistence.Converter +import java.time.Month + +@Converter +class MonthListConverter : AttributeConverter, String> { + + override fun convertToDatabaseColumn(attribute: List?): String? { + return attribute?.joinToString(separator = ",") { it.name } + } + + override fun convertToEntityAttribute(dbData: String?): List? { + return dbData?.split(",") + ?.filter { it.isNotBlank() } + ?.mapNotNull { runCatching { Month.valueOf(it.trim()) }.getOrNull() } + } +} \ No newline at end of file