Class LanguageCache

java.lang.Object
com.helger.commons.locale.language.LanguageCache
All Implemented Interfaces:
IHasConditionalLogger

@ThreadSafe @Singleton public final class LanguageCache extends Object implements IHasConditionalLogger
This is a global cache for language objects to avoid too many objects flowing around.
This cache is application independent.
Since:
v9.1.3
Author:
Philip Helger
  • Method Details

    • isSilentMode

      public static boolean isSilentMode()
      Returns:
      true if logging is disabled, false if it is enabled.
      Since:
      9.4.0
    • setSilentMode

      public static boolean setSilentMode(boolean bSilentMode)
      Enable or disable certain regular log messages.
      Parameters:
      bSilentMode - true to disable logging, false to enable logging
      Returns:
      The previous value of the silent mode.
      Since:
      9.4.0
    • isInstantiated

      public static boolean isInstantiated()
    • getInstance

      @Nonnull public static LanguageCache getInstance()
    • getLanguage

      @Nullable public Locale getLanguage(@Nullable Locale aLanguage)
      The normed language locale associated with the provided locale.
      Parameters:
      aLanguage - Source locale. May be null.
      Returns:
      null if the source locale is null or if the source locale does not contain language information.
    • getLanguageExt

      @Nullable public Locale getLanguageExt(@Nullable Locale aLanguage, @Nullable LocaleCache.IMissingLocaleHandler aMissingHandler)
      The normed language locale associated with the provided locale.
      Parameters:
      aLanguage - Source locale. May be null.
      aMissingHandler - The missing locale handler to be passed to LocaleCache. May be null to use LocaleCache default handler.
      Returns:
      null if the source locale is null or if the source locale does not contain language information.
      Since:
      9.4.2
    • getLanguage

      @Nullable public Locale getLanguage(@Nullable String sLanguage)
      Resolve the language from the provided string.
      Note: this method may be invoked recursively, if the language code contains a locale separator char.
      Parameters:
      sLanguage - The language code. May be null or empty.
      Returns:
      null if the provided language code is null or empty.
    • getLanguageExt

      @Nullable public Locale getLanguageExt(@Nullable String sLanguage, @Nullable LocaleCache.IMissingLocaleHandler aMissingHandler)
      Resolve the language from the provided string.
      Note: this method may be invoked recursively, if the language code contains a locale separator char.
      Parameters:
      sLanguage - The language code. May be null or empty.
      aMissingHandler - The missing locale handler to be passed to LocaleCache. May be null to use LocaleCache default handler.
      Returns:
      null if the provided language code is null or empty.
      Since:
      9.4.2
    • getAllLanguages

      @Nonnull @ReturnsMutableCopy public ICommonsSet<String> getAllLanguages()
      Returns:
      a set with all contained languages. Never null.
    • getAllLanguageLocales

      @Nonnull @ReturnsMutableCopy public ICommonsSet<Locale> getAllLanguageLocales()
      Returns:
      a set with all contained language locales. Never null.
    • containsLanguage

      public boolean containsLanguage(@Nullable Locale aLanguage)
      Check if the passed language is known.
      Parameters:
      aLanguage - The language to check. May be null.
      Returns:
      true if the passed language is contained, false otherwise.
    • containsLanguage

      public boolean containsLanguage(@Nullable String sLanguage)
      Check if the passed language is known.
      Parameters:
      sLanguage - The language to check. May be null.
      Returns:
      true if the passed language is contained, false otherwise.
    • reinitialize

      public void reinitialize()
      Reset the cache to the initial state.