Interface IStringResourceLoader

  • All Known Implementing Classes:
    BundleStringResourceLoader, ClassStringResourceLoader, ComponentStringResourceLoader, InitializerStringResourceLoader, NestedStringResourceLoader, PackageStringResourceLoader, ValidatorStringResourceLoader

    public interface IStringResourceLoader
    The string resource loader interface allows a strategy pattern to be applied to the loading of resource strings for an application. The loader (or chain of loaders) that are used is configured via the application settings.

    Each particular implementation of this interface may define its own mechanism for searching for resources. Please see the documents for each particular implementation to determine its behavior and to see how it can be configured.

    It is important to note that if a resource is not found by a particular loader than the loader should return null rather than throw an exception. The reason for this is that loaders can be arranged in a chain and it would be very inefficient for loaders earlier in the chain to throw exceptions that must be caught and handled each time until the correct loader in the chain is reached.

    Author:
    Chris Turner, Juergen Donnerstag
    See Also:
    ResourceSettings
    • Method Detail

      • loadStringResource

        String loadStringResource​(Class<?> clazz,
                                  String key,
                                  Locale locale,
                                  String style,
                                  String variation)
        Get the string resource for the given combination of component class, resource key, locale and style. The component class provided is used to allow implementation of component specific resource loading (e.g. per page or per reusable component). The key should be a String containing a lookup key into a resource bundle. The locale should contain the locale of the current operation so that the appropriate set of resources can be selected. The style allows the set of resources to select to be varied by skin/brand.
        Parameters:
        clazz - The class to get the string resource for
        key - The key should be a String containing a lookup key into a resource bundle
        locale - The locale should contain the locale of the current operation so that the appropriate set of resources can be selected
        style - The style identifying the resource set to select the strings from (see Session)
        variation - The components variation (of the style)
        Returns:
        The string resource value or null if the resource could not be loaded by this loader
      • loadStringResource

        String loadStringResource​(Component component,
                                  String key,
                                  Locale locale,
                                  String style,
                                  String variation)
        Get the string resource for the given combination of component, resource key, locale and style. The component provided is used to allow implementation of component specific resource loading (e.g. per page or per reusable component). The key should be a String containing a lookup key into a resource bundle. The Locale and the style will be taken from the Component provided.
        Parameters:
        component - The component to get the string resource for
        key - The key should be a String containing a lookup key into a resource bundle
        locale - Will be preset with the appropriate value. You shall ignore the component's locale.
        style - Will be preset with the appropriate value. You shall ignore the component's style.
        variation - Will be preset with the appropriate value. You shall ignore the component's variation.
        Returns:
        The string resource value or null if the resource could not be loaded by this loader