Class LocalStringsImpl


  • public class LocalStringsImpl
    extends Object
    This class makes getting localized strings super-simple. This is the companion class to Strings. Use this class when performance may be an issue. I.e. Strings is all-static and creates a ResourceBundle on every call. This class is instantiated once and can be used over and over from the same package.

    Specifics:

    • Your calling code should have a file named LocalStrings.properties in its package directory.
    • If your localized string has no arguments call get(String) to get the localized String value.
    • If you have a parameterized string, call get(String, Object...)

    Note: You can not get an Exception out of calling this code! If the String or the properties file does not exist, it will return the String that you gave in the first place as the argument.

    Example:

    • LocalStringsImpl sh = new LocalStringsImpl();
    • String s = sh.get("xyz");
    • String s = sh.get("xyz", new Date(), 500, "something", 2.00003);
    • String s = sh.get("xyz", "something", "foo", "whatever");
    Author:
    bnevins
    • Constructor Detail

      • LocalStringsImpl

        public LocalStringsImpl()
        Create a LocalStringsImpl instance. Automatically discover the caller's LocalStrings.properties file
      • LocalStringsImpl

        public LocalStringsImpl​(Class clazz)
        Create a LocalStringsImpl instance. use the proffered class object to find LocalStrings.properties. This is the constructor to use if you are concerned about getting the fastest performance.
      • LocalStringsImpl

        public LocalStringsImpl​(String packageName,
                                String propsName)
        Create a LocalStringsImpl instance. use the proffered String. The String is the FQN of the properties file, without the '.properties'. E.g. 'com.elf.something.LogStrings'
    • Method Detail

      • get

        public String get​(String indexString)
        Get a String from the caller's package's LocalStrings.properties
        Parameters:
        indexString - The string index into the localized string file
        Returns:
        the String from LocalStrings or the supplied String if it doesn't exist
      • get

        public String get​(String indexString,
                          Object... objects)
        Get and format a String from the caller's package's LocalStrings.properties
        Parameters:
        indexString - The string index into the localized string file
        objects - The arguments to give to MessageFormat
        Returns:
        the String from LocalStrings or the supplied String if it doesn't exist -- using the array of supplied Object arguments
      • getString

        public String getString​(String indexString,
                                String defaultValue)
        Get a String from the caller's package's LocalStrings.properties
        Parameters:
        indexString - The string index into the localized string file
        Returns:
        the String from LocalStrings or the supplied default value if it doesn't exist
      • getInt

        public int getInt​(String indexString,
                          int defaultValue)
        Get an integer from the caller's package's LocalStrings.properties
        Parameters:
        indexString - The string index into the localized string file
        Returns:
        the integer value from LocalStrings or the supplied default if it doesn't exist or is bad.
      • getBoolean

        public boolean getBoolean​(String indexString,
                                  boolean defaultValue)
        Get a boolean from the caller's package's LocalStrings.properties
        Parameters:
        indexString - The string index into the localized string file
        Returns:
        the integer value from LocalStrings or the supplied default if it doesn't exist or is bad.