From b4db7548803a09ead1a0edef30ba5d8fbde6546a Mon Sep 17 00:00:00 2001 From: Thomas <> Date: Thu, 5 Sep 2024 19:06:05 +0200 Subject: feat(i18): add method to set a specific Locale for i18n message --- .../gv/egiz/eaaf/core/impl/logging/SimpleStatusMessager.java | 9 +++++++++ .../core/impl/logging/SpringBasedBasicStatusMessager.java | 11 ++++++++--- .../egiz/eaaf/core/impl/logging/JUnitTestStatusMessenger.java | 7 +++++++ 3 files changed, 24 insertions(+), 3 deletions(-) (limited to 'eaaf_core_utils/src') diff --git a/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SimpleStatusMessager.java b/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SimpleStatusMessager.java index 0d394d19..145994f3 100644 --- a/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SimpleStatusMessager.java +++ b/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SimpleStatusMessager.java @@ -1,6 +1,7 @@ package at.gv.egiz.eaaf.core.impl.logging; import java.text.MessageFormat; +import java.util.Locale; import at.gv.egiz.eaaf.core.api.IStatusMessenger; @@ -32,6 +33,14 @@ public class SimpleStatusMessager implements IStatusMessenger { return NULLMESSAGE; } + /** + * @param lang not supported by this implementation + */ + @Override + public String getMessageWithoutDefault(String messageId, Object[] parameters, Locale lang) { + return getMessageWithoutDefault(messageId, parameters); + } + @Override public String getResponseErrorCode(final Throwable throwable) { return NOTSUPPORTED; diff --git a/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SpringBasedBasicStatusMessager.java b/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SpringBasedBasicStatusMessager.java index 27fc04d2..6315a3d7 100644 --- a/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SpringBasedBasicStatusMessager.java +++ b/eaaf_core_utils/src/main/java/at/gv/egiz/eaaf/core/impl/logging/SpringBasedBasicStatusMessager.java @@ -61,16 +61,22 @@ public class SpringBasedBasicStatusMessager implements IStatusMessenger, Message @Override public String getMessageWithoutDefault(String messageId, Object[] parameters) { + final Locale locale = LocaleContextHolder.getLocale(); + return getMessageWithoutDefault(messageId, parameters, locale); + + } + + @Override + public String getMessageWithoutDefault(String messageId, Object[] parameters, Locale locale) { if (messageSource == null) { return null; } else { try { - final Locale locale = LocaleContextHolder.getLocale(); return messageSource.getMessage(messageId, parameters, locale); } catch (final NoSuchMessageException e) { - log.debug(MSG_WARN_NO_SOURCE, messageId, LocaleContextHolder.getLocale()); + log.debug(MSG_WARN_NO_SOURCE, messageId, locale); log.trace(MSG_INFO, Locale.ENGLISH); try { @@ -88,7 +94,6 @@ public class SpringBasedBasicStatusMessager implements IStatusMessenger, Message } return null; - } @Override diff --git a/eaaf_core_utils/src/test/java/at/gv/egiz/eaaf/core/impl/logging/JUnitTestStatusMessenger.java b/eaaf_core_utils/src/test/java/at/gv/egiz/eaaf/core/impl/logging/JUnitTestStatusMessenger.java index 9c1d0c82..edc6fe30 100644 --- a/eaaf_core_utils/src/test/java/at/gv/egiz/eaaf/core/impl/logging/JUnitTestStatusMessenger.java +++ b/eaaf_core_utils/src/test/java/at/gv/egiz/eaaf/core/impl/logging/JUnitTestStatusMessenger.java @@ -2,6 +2,7 @@ package at.gv.egiz.eaaf.core.impl.logging; import java.text.MessageFormat; import java.util.HashMap; +import java.util.Locale; import java.util.Map; import at.gv.egiz.eaaf.core.api.IStatusMessenger; @@ -35,6 +36,12 @@ public class JUnitTestStatusMessenger implements IStatusMessenger { return null; } + @Override + public String getMessageWithoutDefault(String messageId, Object[] parameters, Locale lang) { + return getMessageWithoutDefault(messageId, parameters); + + } + @Override public String getResponseErrorCode(final Throwable throwable) { return null; -- cgit v1.2.3