From e48b29d58c714ed79b09e1a9a21fc5c1302f6ad7 Mon Sep 17 00:00:00 2001 From: Krzysztof Majewski Date: Tue, 10 Sep 2019 11:35:35 +0200 Subject: [PATCH] add custom interpolator --- .../interpolation/MyMessageInterpolator.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 spring-mvc-simple-2/src/main/java/com/baeldung/interpolation/MyMessageInterpolator.java diff --git a/spring-mvc-simple-2/src/main/java/com/baeldung/interpolation/MyMessageInterpolator.java b/spring-mvc-simple-2/src/main/java/com/baeldung/interpolation/MyMessageInterpolator.java new file mode 100644 index 0000000000..8251138b9b --- /dev/null +++ b/spring-mvc-simple-2/src/main/java/com/baeldung/interpolation/MyMessageInterpolator.java @@ -0,0 +1,28 @@ +package com.baeldung.interpolation; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import javax.validation.MessageInterpolator; +import java.util.Locale; + +public class MyMessageInterpolator implements MessageInterpolator { + + private static Logger logger = LoggerFactory.getLogger(MyMessageInterpolator.class); + + private final MessageInterpolator defaultInterpolator; + + public MyMessageInterpolator(MessageInterpolator interpolator) { + this.defaultInterpolator = interpolator; + } + + @Override + public String interpolate(String messageTemplate, Context context) { + logger.debug("Selecting the language " + Locale.getDefault() + " for the error message."); + return defaultInterpolator.interpolate(messageTemplate, context, Locale.getDefault()); + } + + @Override + public String interpolate(String messageTemplate, Context context, Locale locale) { + return defaultInterpolator.interpolate(messageTemplate, context, locale); + } +}