com.sun.rave.faces.util
Class ComponentBundle

java.lang.Object
  extended by com.sun.rave.faces.util.ComponentBundle
Direct Known Subclasses:
DesignTimeComponentBundle

public class ComponentBundle
extends java.lang.Object

Wraps a java.util.ResourceBundle and utilizes a java.text.MessageFormat for message formatting.

See Also:
ResourceBundle, MessageFormat

Constructor Summary
protected ComponentBundle()
           
 
Method Summary
static ComponentBundle getBundle(java.lang.Class c)
           
static ComponentBundle getBundle(java.lang.Class c, java.lang.String suffix)
          Return the component bundle found in class c's package.
 java.lang.String getMessage(java.lang.String key)
           
 java.lang.String getMessage(java.lang.String key, java.lang.Object arg1)
           
 java.lang.String getMessage(java.lang.String key, java.lang.Object[] args)
           
 java.lang.String getMessage(java.lang.String key, java.lang.Object[] args, boolean escapeSingleQuotes)
           
 java.lang.String getMessage(java.lang.String key, java.lang.Object arg1, java.lang.Object arg2)
           
 java.lang.String getMessage(java.lang.String key, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
           
 void init(java.lang.String baseName, java.lang.ClassLoader classLoader)
          If a class loader is not passed in, I will only be able to fetch ResourceBundles that are reachable from MY class loader.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ComponentBundle

protected ComponentBundle()
Method Detail

init

public void init(java.lang.String baseName,
                 java.lang.ClassLoader classLoader)
If a class loader is not passed in, I will only be able to fetch ResourceBundles that are reachable from MY class loader. This is due to a bug in ResourceBundle that goes up the stack only 2 levels in order to find the appropriate class loader. Since I provide a level of indirection, I will ALWAYS be the callee, and therefore at the 2nd level. See source for ResourceBundle.getBundle() ResourceBundle.getLoader().

Parameters:
baseName -

getMessage

public java.lang.String getMessage(java.lang.String key)

getMessage

public java.lang.String getMessage(java.lang.String key,
                                   java.lang.Object arg1)

getMessage

public java.lang.String getMessage(java.lang.String key,
                                   java.lang.Object arg1,
                                   java.lang.Object arg2)

getMessage

public java.lang.String getMessage(java.lang.String key,
                                   java.lang.Object arg1,
                                   java.lang.Object arg2,
                                   java.lang.Object arg3)

getMessage

public java.lang.String getMessage(java.lang.String key,
                                   java.lang.Object[] args)

getMessage

public java.lang.String getMessage(java.lang.String key,
                                   java.lang.Object[] args,
                                   boolean escapeSingleQuotes)

getBundle

public static ComponentBundle getBundle(java.lang.Class c)

getBundle

public static ComponentBundle getBundle(java.lang.Class c,
                                        java.lang.String suffix)
Return the component bundle found in class c's package. The name of the bundle file is Bundle.properties. If suffix is not null and not empty, then the bundle file will be Bundle-<suffix>.properties.

Parameters:
c -
suffix -
Returns: