Class MultiPropertyResourceBundle


  • public class MultiPropertyResourceBundle
    extends ResourceBundle
    Extends ResourceBundle with 2 new capabilities. The first is to store the path where the properties file used to create the InputStream is located and the second is to allow additional ResourceBundle properties to be merged into an instance.

    To allow a SystemOfUnits to locate and merge extension module properties files.

    Version:
    1.0
    Author:
    Werner Keil
    • Constructor Detail

      • MultiPropertyResourceBundle

        public MultiPropertyResourceBundle​(InputStream stream,
                                           String resourcePath)
                                    throws IOException

        Instantiates a new MultiPropertyResourceBundle.

        Parameters:
        stream - The InputStream passed on to the super class constructor.
        resourcePath - The location of the properties file used to create the InputStream
        Throws:
        IOException
      • MultiPropertyResourceBundle

        public MultiPropertyResourceBundle​(ResourceBundle baseBundle,
                                           String resourcePath)

        Constructor for instantiating from an existing ResourceBundle. This calls the merge method to copy the properties from the bundle into the resources map.

        Parameters:
        baseBundle -
        resourcePath -
    • Method Detail

      • getResourcePath

        public String getResourcePath()
        Returns:
        The location of the properties file that was used to instantiate the MultiPropertyResourceBundle instance.
      • merge

        public void merge​(ResourceBundle resourceBundle,
                          String aResourcePath)

        Merges the properties of a ResourceBundle into the current MultiPropertyResourceBundle instance. This will override any values mapped to duplicate keys in the current merged properties.

        Parameters:
        resourceBundle - The ResourceBundle to merge the properties of.
        aResourcePath -
      • getKeys

        public Enumeration<String> getKeys()

        Overrides the super class implementation to return an enumeration of keys from all the merged bundles

        Specified by:
        getKeys in class ResourceBundle
        Returns:
        An Enumeration of the keys across all the merged bundles.
      • handleKeySet

        protected Set<String> handleKeySet()

        Overrides the super class implementation to return the Set of keys from all merged bundles

        Overrides:
        handleKeySet in class ResourceBundle
        Returns:
        A Set of keys obtained from all merged bundles
      • containsKey

        public boolean containsKey​(String key)

        Overrides the super class implementation to check the existence of a key across all merged bundles

        Overrides:
        containsKey in class ResourceBundle
        Returns:
        true if the key is present and false otherwise.
      • keySet

        public Set<String> keySet()

        Overrides the super class implementation to return the Set of keys from all merged bundles

        Overrides:
        keySet in class ResourceBundle
        Returns:
        A Set of keys obtained from all merged bundles