From e2b6ab63d639af178eef88e0f6b137707f1e1fae Mon Sep 17 00:00:00 2001 From: lingniu Date: Wed, 1 Jul 2026 10:35:12 +0800 Subject: [PATCH] refactor: remove legacy session store enum --- .../ingest/session/SessionProperties.java | 18 ++++++++---------- .../SessionCoreAutoConfigurationTest.java | 6 ++++++ 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/modules/core/session-core/src/main/java/com/lingniu/ingest/session/SessionProperties.java b/modules/core/session-core/src/main/java/com/lingniu/ingest/session/SessionProperties.java index d928c38b..d44f1abb 100644 --- a/modules/core/session-core/src/main/java/com/lingniu/ingest/session/SessionProperties.java +++ b/modules/core/session-core/src/main/java/com/lingniu/ingest/session/SessionProperties.java @@ -3,23 +3,25 @@ package com.lingniu.ingest.session; import org.springframework.boot.context.properties.ConfigurationProperties; import java.time.Duration; +import java.util.Locale; @ConfigurationProperties(prefix = "lingniu.ingest.session") public class SessionProperties { - private Store store = Store.REDIS; + private String store = "redis"; private Duration ttl = Duration.ofMinutes(30); - public Store getStore() { + public String getStore() { return store; } - public void setStore(Store store) { - if (store == Store.MEMORY) { - throw new IllegalStateException("session.store supports only redis; configured value: memory"); + public void setStore(String store) { + String value = store == null || store.isBlank() ? "redis" : store.trim().toLowerCase(Locale.ROOT); + if (!"redis".equals(value)) { + throw new IllegalStateException("session.store supports only redis; configured value: " + store); } - this.store = store; + this.store = value; } public Duration getTtl() { @@ -30,8 +32,4 @@ public class SessionProperties { this.ttl = ttl; } - public enum Store { - MEMORY, - REDIS - } } diff --git a/modules/core/session-core/src/test/java/com/lingniu/ingest/session/config/SessionCoreAutoConfigurationTest.java b/modules/core/session-core/src/test/java/com/lingniu/ingest/session/config/SessionCoreAutoConfigurationTest.java index 2a57c150..06cdf40b 100644 --- a/modules/core/session-core/src/test/java/com/lingniu/ingest/session/config/SessionCoreAutoConfigurationTest.java +++ b/modules/core/session-core/src/test/java/com/lingniu/ingest/session/config/SessionCoreAutoConfigurationTest.java @@ -61,4 +61,10 @@ class SessionCoreAutoConfigurationTest { .hasStackTraceContaining("session.store supports only redis") .hasStackTraceContaining("memory")); } + + @Test + void sessionPropertiesDoNotExposeLegacyStoreEnum() { + assertThatThrownBy(() -> Class.forName("com.lingniu.ingest.session.SessionProperties$Store")) + .isInstanceOf(ClassNotFoundException.class); + } }