Package io.vertigo.core.impl.locale
Class LocaleManagerImpl
- java.lang.Object
-
- io.vertigo.core.impl.locale.LocaleManagerImpl
-
- All Implemented Interfaces:
LocaleManager,Component,CoreComponent,Manager
public final class LocaleManagerImpl extends Object implements LocaleManager
- Author:
- pchretien
-
-
Constructor Summary
Constructors Constructor Description LocaleManagerImpl(String locales, Optional<String> defaultZoneId)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(String baseName, MessageKey[] enums)Ajout d'un dictionnaire de ressources.LocalegetCurrentLocale()Retourne la locale courante.ZoneIdgetCurrentZoneId()Retourne la time zone courante.StringgetMessage(MessageKey messageKey, Locale locale)Retourne le libellé non formatté d'un message identifié par sa clé.voidoverride(String baseName, MessageKey[] enums)Surcharge d'un dictionnaire de ressources.voidregisterLocaleSupplier(Supplier<Locale> newLocaleSupplier)Register a strategy to choose a locale.voidregisterZoneSupplier(Supplier<ZoneId> newZoneSupplier)Register a strategy to choose a zone.
-
-
-
Constructor Detail
-
LocaleManagerImpl
@Inject public LocaleManagerImpl(String locales, Optional<String> defaultZoneId)
Constructor. Les exceptions sont toujours externalisées. Les libellés de champs ne le sont pas. La première Locale est celle utilisée si il n'y a aucun utilisateur déclaré (cas des batchs). On précise la liste des locales sous la forme d'une chaine de caractères exemples : Locale.french : 'fr' Locale.FRANCE + Locale.us : 'fr_FR,us' Une locale est définie par une langue{_Pays{_Variante}}- Parameters:
locales- Liste des locales gérées par l'application.defaultZoneId- ZoneId par défaut utilisée par l'application.
-
-
Method Detail
-
registerZoneSupplier
public void registerZoneSupplier(Supplier<ZoneId> newZoneSupplier)
Register a strategy to choose a zone.- Specified by:
registerZoneSupplierin interfaceLocaleManager- Parameters:
newZoneSupplier- Supply a zone in a context
-
registerLocaleSupplier
public void registerLocaleSupplier(Supplier<Locale> newLocaleSupplier)
Register a strategy to choose a locale.- Specified by:
registerLocaleSupplierin interfaceLocaleManager- Parameters:
newLocaleSupplier- Supply a locale in a context
-
add
public void add(String baseName, MessageKey[] enums)
Ajout d'un dictionnaire de ressources. Toutes les ressources identifiées par une clé doivent être présente dans le fichier properties. Cette méthode est non synchronisée etdoit être appelée lors du démarrage de l'application.- Specified by:
addin interfaceLocaleManager- Parameters:
baseName- Nom et chemin du fichier propertiesenums- Enumération (enum) de contrôle des ressources géréees
-
override
public void override(String baseName, MessageKey[] enums)
Surcharge d'un dictionnaire de ressources. Cette méthode est non synchronisée et doit être appelée lors du démarrage de l'application. Il est possible de ne surcharger qu'une propriété. Il est possible de ne renseigner qu'un des dictionnaire (et donc de ne pas renseigner tous les bundles).- Specified by:
overridein interfaceLocaleManager- Parameters:
baseName- Nom et chemin du fichier propertiesenums- Enumération (enum) de contrôle des ressources géréees
-
getMessage
public String getMessage(MessageKey messageKey, Locale locale)
Retourne le libellé non formatté d'un message identifié par sa clé. Retourne null si le message n'est pas trouvé- Specified by:
getMessagein interfaceLocaleManager- Parameters:
messageKey- clé du message .locale- Locale- Returns:
- Message non formatté dans la langue de la locale.
-
getCurrentZoneId
public ZoneId getCurrentZoneId()
Retourne la time zone courante. C'est à dire correspondant à l'utilisateur courant si il y en a un, sinon correspond à la time zone de l'application.- Specified by:
getCurrentZoneIdin interfaceLocaleManager- Returns:
- Zone courante
-
getCurrentLocale
public Locale getCurrentLocale()
Retourne la locale courante. C'est à dire correspondant à l'utilisateur courant si il y en a un, sinon correspond à la locale de l'application.- Specified by:
getCurrentLocalein interfaceLocaleManager- Returns:
- Locale courante
-
-