Class ConfigAwareLocaleResolver

java.lang.Object
org.craftercms.engine.util.spring.servlet.i18n.ConfigAwareLocaleResolver
All Implemented Interfaces:
org.springframework.web.servlet.LocaleResolver
Direct Known Subclasses:
CookieLocaleResolver, GroovyLocaleResolver, HeaderLocaleResolver, PrincipalLocaleResolver, UrlPatternLocaleResolver

public abstract class ConfigAwareLocaleResolver extends Object implements org.springframework.web.servlet.LocaleResolver
Base implementation for LocaleResolver by the ChainLocaleResolver.

Resolvers extending this class can be customized using configuration properties and should never implement the setLocale method because the ChainLocaleResolver handles that.

Since:
4.0.0
Author:
joseross
  • Field Details

    • logger

      protected final org.slf4j.Logger logger
  • Constructor Details

    • ConfigAwareLocaleResolver

      public ConfigAwareLocaleResolver()
  • Method Details

    • setSupportedLocales

      public void setSupportedLocales(List<Locale> supportedLocales)
    • isSupported

      protected boolean isSupported(Locale locale)
    • init

      protected abstract void init(org.apache.commons.configuration2.HierarchicalConfiguration<?> config)
      Performs any customization needed
      Parameters:
      config - the configuration
    • resolveLocale

      public Locale resolveLocale(javax.servlet.http.HttpServletRequest request)
      Specified by:
      resolveLocale in interface org.springframework.web.servlet.LocaleResolver
    • resolveLocale

      protected abstract Locale resolveLocale(SiteContext siteContext, javax.servlet.http.HttpServletRequest request)
      Performs the actual work to resolve a locale
      Parameters:
      siteContext - the current site context
      request - the current request
      Returns:
      a locale object or null
    • setLocale

      public void setLocale(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Locale locale)
      Specified by:
      setLocale in interface org.springframework.web.servlet.LocaleResolver