From 280eeba824d8ba60a41316a27d290fdc28c46e85 Mon Sep 17 00:00:00 2001 From: zhouhao Date: Fri, 20 Dec 2024 12:21:45 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/i18n/I18nSupportEntity.java | 2 ++ .../web/i18n/MultipleI18nSupportEntity.java | 20 +++++++++++++++++++ .../web/i18n/SingleI18nSupportEntity.java | 13 ++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 hsweb-core/src/main/java/org/hswebframework/web/i18n/MultipleI18nSupportEntity.java create mode 100644 hsweb-core/src/main/java/org/hswebframework/web/i18n/SingleI18nSupportEntity.java diff --git a/hsweb-core/src/main/java/org/hswebframework/web/i18n/I18nSupportEntity.java b/hsweb-core/src/main/java/org/hswebframework/web/i18n/I18nSupportEntity.java index 5ed661124..d86781d2f 100644 --- a/hsweb-core/src/main/java/org/hswebframework/web/i18n/I18nSupportEntity.java +++ b/hsweb-core/src/main/java/org/hswebframework/web/i18n/I18nSupportEntity.java @@ -10,6 +10,8 @@ import java.util.Map; * * @author zhouhao * @since 4.0.18 + * @see SingleI18nSupportEntity + * @see MultipleI18nSupportEntity */ public interface I18nSupportEntity { diff --git a/hsweb-core/src/main/java/org/hswebframework/web/i18n/MultipleI18nSupportEntity.java b/hsweb-core/src/main/java/org/hswebframework/web/i18n/MultipleI18nSupportEntity.java new file mode 100644 index 000000000..ab34d4233 --- /dev/null +++ b/hsweb-core/src/main/java/org/hswebframework/web/i18n/MultipleI18nSupportEntity.java @@ -0,0 +1,20 @@ +package org.hswebframework.web.i18n; + +import org.apache.commons.collections4.MapUtils; + +import java.util.Collections; +import java.util.Map; + +public interface MultipleI18nSupportEntity extends I18nSupportEntity { + + Map> getI18nMessages(); + + @Override + default Map getI18nMessages(String key) { + Map> source = getI18nMessages(); + if (MapUtils.isNotEmpty(source)) { + return Collections.emptyMap(); + } + return source.get(key); + } +} diff --git a/hsweb-core/src/main/java/org/hswebframework/web/i18n/SingleI18nSupportEntity.java b/hsweb-core/src/main/java/org/hswebframework/web/i18n/SingleI18nSupportEntity.java new file mode 100644 index 000000000..54b19ebff --- /dev/null +++ b/hsweb-core/src/main/java/org/hswebframework/web/i18n/SingleI18nSupportEntity.java @@ -0,0 +1,13 @@ +package org.hswebframework.web.i18n; + +import java.util.Map; + +public interface SingleI18nSupportEntity extends I18nSupportEntity { + + Map getI18nMessages(); + + default Map getI18nMessages(String key) { + return getI18nMessages(); + } + +}