Class 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 Detail

      • 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()
      • 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
      • 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.