Class ProjectResourceBundle


  • public class ProjectResourceBundle
    extends ResourceBundle

    Wrapper class for resource bundles. Property files are used to store resource strings, which are the only types of resources available. Property files can inherit properties from other files so that a base property file can be used and a small number of properties can be over-ridden by another property file. For example you may create an english version of a resource file named "resource.properties". You then decide that the British English version of all of the properties except one are the same, so there is no need to redefine all of the properties in "resource_en_GB", just the one that is different.

    The basename is the name of the property file without the ".properties" extension.

    Properties will be cached for performance.

    Property values stored in the property files can also contain dynamic variables. Any dynamic variable defined in PropertiesUtil.getVariableValue() can be used (such as {date}), as well as arguments in the form {0}, {1}, etc. Argument values are specified in the various overloaded getString() methods.

    • Method Detail

      • getBundle

        public static ProjectResourceBundle getBundle​(String projectName,
                                                      String packageName,
                                                      String resourceName)
                                               throws MissingResourceException
        Construct a new ProjectResourceBundle
        Parameters:
        projectName - The name of the project to which the class belongs. It must be a proper prefix of the caller's package.
        packageName - The package name to further construct the basename.
        resourceName - The name of the resource without the ".properties" extension
        Throws:
        MissingResourceException - if projectName is not a prefix of the caller's package name, or if the resource could not be found/loaded.
      • getBundle

        public static ProjectResourceBundle getBundle​(String projectName,
                                                      Class caller,
                                                      String resourceName,
                                                      Locale locale)
                                               throws MissingResourceException
        Construct a new ProjectResourceBundle
        Parameters:
        projectName - The name of the project to which the class belongs. It must be a proper prefix of the caller's package.
        caller - The calling class.
        resourceName - The name of the resource without the ".properties" extension
        Throws:
        MissingResourceException - if projectName is not a prefix of the caller's package name, or if the resource could not be found/loaded.
      • getBundle

        public static ProjectResourceBundle getBundle​(String projectName,
                                                      String packageName,
                                                      String resourceName,
                                                      Locale locale,
                                                      ClassLoader loader)
                                               throws MissingResourceException
        Construct a new ProjectResourceBundle
        Parameters:
        projectName - The name of the project to which the class belongs. It must be a proper prefix of the caller's package.
        packageName - The package name to construct base name.
        resourceName - The name of the resource without the ".properties" extension
        locale - The locale
        Throws:
        MissingResourceException - if projectName is not a prefix of the caller's package name, or if the resource could not be found/loaded.
      • getBundle

        public static ProjectResourceBundle getBundle​(String projectName,
                                                      Class caller,
                                                      String resourceName,
                                                      Locale locale,
                                                      ResourceBundle extendsBundle)
                                               throws MissingResourceException
        Construct a new ProjectResourceBundle
        Parameters:
        projectName - The name of the project to which the class belongs. It must be a proper prefix of the caller's package.
        caller - The calling class. This is used to get the package name to further construct the basename as well as to get the proper ClassLoader.
        resourceName - The name of the resource without the ".properties" extension
        locale - The locale
        extendsBundle - If non-null, then this ExtendMessages will default to extendsBundle.
        Throws:
        MissingResourceException - if projectName is not a prefix of the caller's package name, or if the resource could not be found/loaded.
      • getBundle

        public static ProjectResourceBundle getBundle​(String projectName,
                                                      String packageName,
                                                      String resourceName,
                                                      Locale locale,
                                                      ClassLoader loader,
                                                      ResourceBundle extendsBundle)
                                               throws MissingResourceException
        Construct a new ProjectResourceBundle
        Parameters:
        projectName - The name of the project to which the class belongs. It must be a proper prefix of the caller's package.
        packageName - The package name to further construct the basename.
        resourceName - The name of the resource without the ".properties" extension
        locale - The locale
        extendsBundle - If non-null, then this ExtendMessages will default to extendsBundle.
        Throws:
        MissingResourceException - if projectName is not a prefix of the caller's package name, or if the resource could not be found/loaded.
      • getResourceName

        public String getResourceName()
      • toString

        public String toString()
        Clears the internal cache
        Overrides:
        toString in class Object