Class XMLResourceBundle


  • public class XMLResourceBundle
    extends java.util.ResourceBundle
    This class is a ResourceBundle that loads its contents from XML files instead of properties files (like PropertiesResourceBundle).

    The XML format for this resource bundle implementation is the following (the same as Apache Cocoon's XMLResourceBundle):

     <catalogue xml:lang="en">
       <message key="key1">Message <br/> Value 1</message>
       <message key="key2">Message <br/> Value 1</message>
       ...
     </catalogue>
     
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.util.Map cache  
      private java.util.Locale locale  
      private static java.util.ResourceBundle MISSING  
      private static java.util.ResourceBundle MISSINGBASE  
      private java.util.Properties resources  
      private static javax.xml.transform.sax.SAXTransformerFactory tFactory  
      • Fields inherited from class java.util.ResourceBundle

        parent
    • Constructor Summary

      Constructors 
      Constructor Description
      XMLResourceBundle​(java.io.InputStream in)
      Creates a resource bundle from an InputStream.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Enumeration getKeys()
      java.util.Locale getLocale()
      private java.util.Enumeration getLocalKeys()  
      static java.util.ResourceBundle getXMLBundle​(java.lang.String baseName, java.lang.ClassLoader loader)
      Gets a resource bundle using the specified base name, default locale, and class loader.
      static java.util.ResourceBundle getXMLBundle​(java.lang.String baseName, java.util.Locale locale, java.lang.ClassLoader loader)
      Gets a resource bundle using the specified base name, locale, and class loader.
      protected java.lang.Object handleGetObject​(java.lang.String key)
      private static java.util.ResourceBundle handleGetXMLBundle​(java.lang.String base, java.lang.String locale, boolean loadBase, java.lang.ClassLoader loader)  
      private void setLocale​(java.lang.String name)  
      private static java.lang.String strip​(java.lang.String name)  
      java.lang.String toString()
      • Methods inherited from class java.util.ResourceBundle

        clearCache, clearCache, containsKey, getBaseBundleName, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getObject, getString, getStringArray, handleKeySet, keySet, setParent
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • resources

        private java.util.Properties resources
      • locale

        private java.util.Locale locale
      • tFactory

        private static javax.xml.transform.sax.SAXTransformerFactory tFactory
      • MISSING

        private static final java.util.ResourceBundle MISSING
      • MISSINGBASE

        private static final java.util.ResourceBundle MISSINGBASE
      • cache

        private static java.util.Map cache
    • Constructor Detail

      • XMLResourceBundle

        public XMLResourceBundle​(java.io.InputStream in)
                          throws java.io.IOException
        Creates a resource bundle from an InputStream.
        Parameters:
        in - the stream to read from
        Throws:
        java.io.IOException - if an I/O error occurs
    • Method Detail

      • getXMLBundle

        public static java.util.ResourceBundle getXMLBundle​(java.lang.String baseName,
                                                            java.lang.ClassLoader loader)
                                                     throws java.util.MissingResourceException
        Gets a resource bundle using the specified base name, default locale, and class loader.
        Parameters:
        baseName - the base name of the resource bundle, a fully qualified class name
        loader - the class loader from which to load the resource bundle
        Returns:
        a resource bundle for the given base name and the default locale
        Throws:
        java.util.MissingResourceException - if no resource bundle for the specified base name can be found
        See Also:
        ResourceBundle.getBundle(String)
      • getXMLBundle

        public static java.util.ResourceBundle getXMLBundle​(java.lang.String baseName,
                                                            java.util.Locale locale,
                                                            java.lang.ClassLoader loader)
                                                     throws java.util.MissingResourceException
        Gets a resource bundle using the specified base name, locale, and class loader.
        Parameters:
        baseName - the base name of the resource bundle, a fully qualified class name
        locale - the locale for which a resource bundle is desired
        loader - the class loader from which to load the resource bundle
        Returns:
        a resource bundle for the given base name and locale
        Throws:
        java.util.MissingResourceException - if no resource bundle for the specified base name can be found
        See Also:
        ResourceBundle.getBundle(String, Locale, ClassLoader)
      • handleGetXMLBundle

        private static java.util.ResourceBundle handleGetXMLBundle​(java.lang.String base,
                                                                   java.lang.String locale,
                                                                   boolean loadBase,
                                                                   java.lang.ClassLoader loader)
      • setLocale

        private void setLocale​(java.lang.String name)
      • strip

        private static java.lang.String strip​(java.lang.String name)
      • getLocalKeys

        private java.util.Enumeration getLocalKeys()
      • getLocale

        public java.util.Locale getLocale()
        Overrides:
        getLocale in class java.util.ResourceBundle
      • getKeys

        public java.util.Enumeration getKeys()
        Specified by:
        getKeys in class java.util.ResourceBundle
      • handleGetObject

        protected java.lang.Object handleGetObject​(java.lang.String key)
        Specified by:
        handleGetObject in class java.util.ResourceBundle
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object