org.jfree.util

Class ResourceBundleWrapper

public class ResourceBundleWrapper extends Object

Wrapper of ResourceBundle.getBundle() methods. This wrapper is introduced to avoid a dramatic performance penalty by superfluous resource (and classes loaded by Class.forName) lookups on web server in applets.
 public class AppletC extends javax.swing.JApplet {
    public void init() {
       ResourceBundleWrapper.removeCodeBase(getCodeBase(),
               (URLClassLoader) getClass().getClassLoader());
    ...
 

Since: 1.0.15

See Also: Bug ID: 4243379 Bug ID: 4668479

Method Summary
static ResourceBundlegetBundle(String baseName)
Finds and returns the specified resource bundle.
static ResourceBundlegetBundle(String baseName, Locale locale)
Finds and returns the specified resource bundle.
static ResourceBundlegetBundle(String baseName, Locale locale, ClassLoader loader)
Maps directly to ResourceBundle.getBundle(baseName, locale, loader).
static voidremoveCodeBase(URL codeBase, URLClassLoader urlClassLoader)
Instantiate a URLClassLoader for resource lookups where the codeBase URL is removed.

Method Detail

getBundle

public static final ResourceBundle getBundle(String baseName)
Finds and returns the specified resource bundle.

Parameters: baseName the base name.

Returns: The resource bundle.

getBundle

public static final ResourceBundle getBundle(String baseName, Locale locale)
Finds and returns the specified resource bundle.

Parameters: baseName the base name. locale the locale.

Returns: The resource bundle.

getBundle

public static ResourceBundle getBundle(String baseName, Locale locale, ClassLoader loader)
Maps directly to ResourceBundle.getBundle(baseName, locale, loader).

Parameters: baseName the base name. locale the locale. loader the class loader.

Returns: The resource bundle.

removeCodeBase

public static void removeCodeBase(URL codeBase, URLClassLoader urlClassLoader)
Instantiate a URLClassLoader for resource lookups where the codeBase URL is removed. This method is typically called from an applet's init() method. If this method is never called, the getBundle() methods map to the standard ResourceBundle lookup methods.

Parameters: codeBase the codeBase URL. urlClassLoader the class loader.