Interface LocalStringManager


  • public interface LocalStringManager
    A local string manager. This interface describes the access to i18n messages for classes that need them.
    • Method Detail

      • getLocalString

        String getLocalString​(Class callerClass,
                              String key,
                              String defaultValue)
        Get a localized string. Strings are stored in a single property file per package named LocalStrings[_locale].properties. Starting from the class of the caller, we walk up the class hierarchy until we find a package resource bundle that provides a value for the requested key.

        This simplifies access to resources, at the cost of checking for the resource bundle of several classes upon each call. However, due to the caching performed by ResourceBundle this seems reasonable.

        Due to that, sub-classes must make sure they don't have conflicting resource naming.

        Parameters:
        callerClass - The object making the call, to allow per-package resource bundles
        key - The name of the resource to fetch
        defaultValue - The default return value if not found
        Returns:
        The localized value for the resource
      • getLocalString

        String getLocalString​(Class callerClass,
                              String key,
                              String defaultFormat,
                              Object[] arguments)
        Get a local string for the caller and format the arguments accordingly.
        Parameters:
        callerClass - The caller (to walk through its class hierarchy)
        key - The key to the local format string
        defaultFormat - The default format if not found in the resources
        arguments - The set of arguments to provide to the formatter
        Returns:
        A formatted localized string