Class LocalStringManagerImpl

java.lang.Object
com.sun.xml.ws.security.opt.impl.util.LocalStringManagerImpl
All Implemented Interfaces:
LocalStringManager

public class LocalStringManagerImpl extends Object implements LocalStringManager
Implementation of a local string manager. Provides access to i18n messages for classes that need them.
  • Constructor Details

    • LocalStringManagerImpl

      public LocalStringManagerImpl(Class defaultClass)
      Create a string manager that looks for LocalStrings.properties in the package of the defaultClass.
      Parameters:
      defaultClass - Class whose package has default localized strings
  • Method Details

    • getLocalString

      public 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.

      Specified by:
      getLocalString in interface LocalStringManager
      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

      public String getLocalString(String key, String defaultValue)
      Get a localized string from the package of the default class.
      Specified by:
      getLocalString in interface LocalStringManager
      Parameters:
      key - The name of the resource to fetch
      defaultValue - The default return value if not found
      Returns:
      The localized string
    • getLocalString

      public String getLocalString(Class callerClass, String key, String defaultFormat, Object... arguments)
      Get a local string for the caller and format the arguments accordingly.
      Specified by:
      getLocalString in interface LocalStringManager
      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
    • getLocalString

      public String getLocalString(String key, String defaultFormat, Object... arguments)
      Get a local string from the package of the default class and format the arguments accordingly.
      Parameters:
      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