public class FixedLocaleResolver extends AbstractLocaleContextResolver
LocaleResolver
implementation
that always returns a fixed default locale and optionally time zone.
Default is the current JVM's default locale.
Note: Does not support setLocale(Context)
, as the fixed
locale and time zone cannot be changed.
AbstractLocaleResolver.setDefaultLocale(java.util.Locale)
,
AbstractLocaleContextResolver.setDefaultTimeZone(java.util.TimeZone)
Constructor and Description |
---|
FixedLocaleResolver()
Create a default FixedLocaleResolver, exposing a configured default
locale (or the JVM's default locale as fallback).
|
FixedLocaleResolver(Locale locale)
Create a FixedLocaleResolver that exposes the given locale.
|
FixedLocaleResolver(Locale locale,
TimeZone timeZone)
Create a FixedLocaleResolver that exposes the given locale and time zone.
|
Modifier and Type | Method and Description |
---|---|
Locale |
resolveLocale(HttpServletRequest request)
Resolve the current locale via the given request.
|
LocaleContext |
resolveLocaleContext(HttpServletRequest request)
Resolve the current locale context via the given request.
|
void |
setLocaleContext(HttpServletRequest request,
HttpServletResponse response,
LocaleContext localeContext)
Set the current locale context to the given one,
potentially including a locale with associated time zone information.
|
getDefaultTimeZone, setDefaultTimeZone, setLocale
getDefaultLocale, setDefaultLocale
public FixedLocaleResolver()
public FixedLocaleResolver(Locale locale)
locale
- the locale to exposepublic Locale resolveLocale(HttpServletRequest request)
LocaleResolver
Can return a default locale as fallback in any case.
resolveLocale
in interface LocaleResolver
resolveLocale
in class AbstractLocaleContextResolver
request
- the request to resolve the locale fornull
)public LocaleContext resolveLocaleContext(HttpServletRequest request)
LocaleContextResolver
This is primarily intended for framework-level processing; consider using
RequestContextUtils
or
RequestContext
for
application-level access to the current locale and/or time zone.
The returned context may be a
TimeZoneAwareLocaleContext
,
containing a locale with associated time zone information.
Simply apply an instanceof
check and downcast accordingly.
Custom resolver implementations may also return extra settings in the returned context, which again can be accessed through downcasting.
request
- the request to resolve the locale context fornull
LocaleResolver.resolveLocale(HttpServletRequest)
,
RequestContextUtils.getLocale(javax.servlet.http.HttpServletRequest)
,
RequestContextUtils.getTimeZone(javax.servlet.http.HttpServletRequest)
public void setLocaleContext(HttpServletRequest request, @Nullable HttpServletResponse response, @Nullable LocaleContext localeContext)
LocaleContextResolver
request
- the request to be used for locale modificationresponse
- the response to be used for locale modificationlocaleContext
- the new locale context, or null
to clear the localeLocaleResolver.setLocale(HttpServletRequest, HttpServletResponse, Locale)
,
SimpleLocaleContext
,
SimpleTimeZoneAwareLocaleContext