Class LocalizationUtil

  • All Implemented Interfaces:
    java.io.Serializable

    public class LocalizationUtil
    extends java.lang.Object
    implements java.io.Serializable
    Utility class for localization.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String WEB_APP_ATTR
      Name of the attribute used to store this utility in the zk-webapp.
    • Constructor Summary

      Constructors 
      Constructor Description
      LocalizationUtil()
      Constructor that is called by web application init listener.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      protected java.lang.String cacheLocalize​(java.lang.String toLocalize, java.util.Locale clientLocale)  
      java.lang.String coreLocalize​(java.lang.String key)
      Localize a core string using the strings resource bundle.
      java.lang.String coreLocalize​(java.lang.String key, javax.servlet.http.HttpSession session)
      Localize a core string using the strings resource bundle.
      java.lang.String databaseLocalize​(java.lang.String toLocalize)
      Localizes a string for the current client locale using the localize table on the database and a localizeUtilCache for holding localized Strings in a cache.
      java.util.List<java.util.Locale> getAllSupportedLocales()
      Returns a list of all supported locales as configured in webclient.properties.
      static java.util.Locale getCurrentLocale()
      Gets the current locale.
      static java.util.Locale getCurrentLocale​(javax.servlet.http.HttpSession session)
      Gets the current locale.
      static java.util.Locale getDefaultLocale()
      resolve defaultLocale form web.xml.
      static java.lang.String getDisplayLanguage()
      Get current Display Language in english.
      static LocalizationUtil getInstance()
      Get LocalizationUtil Instance.
      static LocalizationUtil getInstanceExternal​(javax.servlet.ServletContext context)
      Get LocalizationUtil Instance.
      java.util.Locale getSupportedLocale()
      Check if the initial browser Locale or current Locale is one of the supported Locales.If this Locale is not supported we use the defaultLocale.
      java.util.Locale getSupportedLocale​(javax.servlet.http.HttpSession session)
      Check if the initial browser Locale or current Locale is one of the supported Locales.If this Locale is not supported we use the defaultLocale.
      java.util.ArrayList<java.util.Locale> getSupportedLocales()
      Deprecated.
      boolean isSupportedLocale​(java.util.Locale locale)
      Checks if the specified locale is supported.
      static java.lang.String localize​(java.lang.String baseName, java.lang.String key, javax.servlet.http.HttpSession session)
      Localize the key with the given localization bundle.
      java.lang.String localizeFolderPath​(java.lang.String pathToLocalize)
      Localizes a folder path.
      static java.util.Locale resolveLocale​(java.lang.String webLocale)
      resolve Country and Language from a Locale String like "de_DE".
      static java.lang.String resolveLocale​(java.util.Locale locale)
      resolve Country and Language from a Locale to a String like "de_DE".
      static java.util.ArrayList<java.lang.String> resolveToStringArray​(java.lang.String valuesConcatinated)
      Deprecated.
      will be removed in 8.1
      static java.lang.String sessionLocalize​(java.lang.String key)
      Returns the session stored messages by the given key if existing.
      static void setCurrentLocale​(java.util.Locale aLocale)  
      static void setCurrentLocale​(java.util.Locale aLocale, javax.servlet.http.HttpSession session)  
      static java.lang.String staticWebLocalize​(java.lang.String key)
      Localize a string using the localizations resource bundle.
      java.lang.String webLocalize​(java.lang.String key)
      Localize a string using the localizations resource bundle.
      java.lang.String webLocalize​(java.lang.String key, javax.servlet.http.HttpSession session)
      Localize a string using the localizations resource bundle.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • WEB_APP_ATTR

        public static final java.lang.String WEB_APP_ATTR
        Name of the attribute used to store this utility in the zk-webapp.
        See Also:
        Constant Field Values
    • Constructor Detail

      • LocalizationUtil

        public LocalizationUtil()
        Constructor that is called by web application init listener. To get a LocalizationUtil instance, use the getInstance or getInstanceExternal methods.
    • Method Detail

      • getCurrentLocale

        public static java.util.Locale getCurrentLocale()
        Gets the current locale.
        Returns:
        the current locale
      • getCurrentLocale

        public static java.util.Locale getCurrentLocale​(javax.servlet.http.HttpSession session)
        Gets the current locale. Uses the specified session to read attributes from.
        Parameters:
        session - the session
        Returns:
        the current locale
      • setCurrentLocale

        public static void setCurrentLocale​(java.util.Locale aLocale)
        Parameters:
        aLocale - the currentLocale to set
      • setCurrentLocale

        public static void setCurrentLocale​(java.util.Locale aLocale,
                                            javax.servlet.http.HttpSession session)
        Parameters:
        aLocale - the currentLocale to set
      • getDisplayLanguage

        public static java.lang.String getDisplayLanguage()
        Get current Display Language in english.
        Returns:
        the displayLanguage
      • getInstance

        public static LocalizationUtil getInstance()
        Get LocalizationUtil Instance.
        Returns:
        LocalizationUtil
      • getInstanceExternal

        public static LocalizationUtil getInstanceExternal​(javax.servlet.ServletContext context)
        Get LocalizationUtil Instance. Can be called from without ZK context.
        Parameters:
        context - current servlet context
        Returns:
        LocalizationUtil
      • webLocalize

        public java.lang.String webLocalize​(java.lang.String key)
        Localize a string using the localizations resource bundle. Use this method to localize keys from LocalizationConstants.
        Parameters:
        key - Key
        Returns:
        Localized string
      • staticWebLocalize

        public static java.lang.String staticWebLocalize​(java.lang.String key)
        Localize a string using the localizations resource bundle. Use this method to localize keys from LocalizationConstants. Same as webLocalize but accessible from static methods.
        Parameters:
        key - Key
        Returns:
        Localized string
      • webLocalize

        public java.lang.String webLocalize​(java.lang.String key,
                                            javax.servlet.http.HttpSession session)
        Localize a string using the localizations resource bundle. Use this method to localize keys from LocalizationConstants.
        Parameters:
        key - Key
        session - the current session
        Returns:
        Localized string
      • sessionLocalize

        public static java.lang.String sessionLocalize​(java.lang.String key)
        Returns the session stored messages by the given key if existing. Returns null if no session is available or no message with the given key exists in the session. Session based messages are stored by ServiceView.registerSessionAttributes.
        Parameters:
        key - The key of the message to retrieve.
        Returns:
        The requested message or null if no session is available no message exists by the given key.
      • coreLocalize

        public java.lang.String coreLocalize​(java.lang.String key)
        Localize a core string using the strings resource bundle. Use this method to localize a key from CoreResources.
        Parameters:
        key - Key
        Returns:
        Localized key
      • coreLocalize

        public java.lang.String coreLocalize​(java.lang.String key,
                                             javax.servlet.http.HttpSession session)
        Localize a core string using the strings resource bundle. Use this method to localize a key from CoreResources.
        Parameters:
        key - Key
        session - the current session
        Returns:
        Localized key
      • databaseLocalize

        public java.lang.String databaseLocalize​(java.lang.String toLocalize)
        Localizes a string for the current client locale using the localize table on the database and a localizeUtilCache for holding localized Strings in a cache. If the cache is not activated (configurable in web.xml) the standard localization handling is used instead.
        Parameters:
        toLocalize - string to localize
        Returns:
        localized string or the original string if no localized string was found
      • localize

        public static java.lang.String localize​(java.lang.String baseName,
                                                java.lang.String key,
                                                javax.servlet.http.HttpSession session)
        Localize the key with the given localization bundle.
        Parameters:
        baseName - Bundle name
        key - Key
        session - Session
        Returns:
        Localized value
      • cacheLocalize

        protected java.lang.String cacheLocalize​(java.lang.String toLocalize,
                                                 java.util.Locale clientLocale)
                                          throws com.saperion.cache.exception.CacheException,
                                                 com.saperion.cache.exception.ElementNotFoundException,
                                                 com.saperion.cache.exception.CorruptElementException
        Throws:
        com.saperion.cache.exception.CacheException
        com.saperion.cache.exception.ElementNotFoundException
        com.saperion.cache.exception.CorruptElementException
      • localizeFolderPath

        public java.lang.String localizeFolderPath​(java.lang.String pathToLocalize)
        Localizes a folder path.
        Parameters:
        pathToLocalize - path to localize
        Returns:
        localized path
      • resolveLocale

        public static java.util.Locale resolveLocale​(java.lang.String webLocale)
        resolve Country and Language from a Locale String like "de_DE".
        Parameters:
        webLocale - webLocale
        Returns:
        locale Locale
      • resolveLocale

        public static java.lang.String resolveLocale​(java.util.Locale locale)
        resolve Country and Language from a Locale to a String like "de_DE".
        Parameters:
        locale - locale
        Returns:
        locale String
      • resolveToStringArray

        @Deprecated
        public static java.util.ArrayList<java.lang.String> resolveToStringArray​(java.lang.String valuesConcatinated)
        Deprecated.
        will be removed in 8.1
        resolve values concatinated Strings seperated with "," to an ArrayList .
        Parameters:
        valuesConcatinated - valuesConcatinated
        Returns:
        arraylist resultArray
      • getSupportedLocales

        @Deprecated
        public java.util.ArrayList<java.util.Locale> getSupportedLocales()
        Deprecated.
        use getAllSupportedLocales() instead. Will be removed in 8.1
        resolve supportedLocales form web.xml.
        Returns:
        supportedLocales resultArray
      • getAllSupportedLocales

        public java.util.List<java.util.Locale> getAllSupportedLocales()
        Returns a list of all supported locales as configured in webclient.properties. The returned list is not modifiable.
        Returns:
        list of supported locales
      • getDefaultLocale

        public static java.util.Locale getDefaultLocale()
        resolve defaultLocale form web.xml.
        Returns:
        supportedLocales resultArray
      • isSupportedLocale

        public boolean isSupportedLocale​(java.util.Locale locale)
        Checks if the specified locale is supported.
        Parameters:
        locale - locale to check
        Returns:
        true if the specified locale is supported, otherwise false
      • getSupportedLocale

        public java.util.Locale getSupportedLocale()
        Check if the initial browser Locale or current Locale is one of the supported Locales.If this Locale is not supported we use the defaultLocale.
        Returns:
        supportedLocale
      • getSupportedLocale

        public java.util.Locale getSupportedLocale​(javax.servlet.http.HttpSession session)
        Check if the initial browser Locale or current Locale is one of the supported Locales.If this Locale is not supported we use the defaultLocale.
        Parameters:
        session - the current session
        Returns:
        supportedLocale