Overview

This plugin provides an implementation of the LocaleResolver interface, which is used to find the best locale/language to use in the code. The implementation, LocaleResolverDefault, tries to find the best Locale to use this way :

  • If currently not inside a HTTP request scope, it uses the default Locale. This default Locale is configurable using SpincastConfig#getDefaultLocale().
  • If a cookie specified what Locale to use, this Locale is used. The name of this cookie is configurable using SpincastConfig#getCookieNameLocale().
  • Use the "Accept-Language" HTTP header of the current request to determine the best Locale to use.

Quick Examples

  • You can inject the LocaleResolver component anywhere you need it, but you also have a direct access to the best Locale to use inside a Route Handler :

    public void myHandler(AppRequestContext context) {
        Locale localeToUse = context.getLocaleToUse();
        //...
    }

Installation

If you use the spincast-default artifact and the standard Bootstrapper, this plugin is already installed by default so you have nothing to do!

If you start from scratch, using the spincast-core artifact, you can use the plugin by :

1. Adding this Maven artifact to your project:

<dependency>
    <groupId>org.spincast</groupId>
    <artifactId>spincast-plugins-locale-resolver</artifactId>
    <version>2.2.0</version>
</dependency>

2. Installing the provided SpincastLocaleResolverPluginModule module to your Guice context.

Plugin class

The class implementing the SpincastPlugin interface is SpincastLocaleResolverPlugin.

Javadoc