org.apache.axis.i18n

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.

Author: Richard A. Sitze (rsitze@us.ibm.com) Karl Moss (kmoss@macromedia.com) Glen Daniels (gdaniels@apache.org)

Field Summary
protected static Loglog
Method Summary
static ProjectResourceBundlegetBundle(String projectName, String packageName, String resourceName)
Construct a new ProjectResourceBundle
static ProjectResourceBundlegetBundle(String projectName, Class caller, String resourceName, Locale locale)
Construct a new ProjectResourceBundle
static ProjectResourceBundlegetBundle(String projectName, String packageName, String resourceName, Locale locale, ClassLoader loader)
Construct a new ProjectResourceBundle
static ProjectResourceBundlegetBundle(String projectName, Class caller, String resourceName, Locale locale, ResourceBundle extendsBundle)
Construct a new ProjectResourceBundle
static ProjectResourceBundlegetBundle(String projectName, String packageName, String resourceName, Locale locale, ClassLoader loader, ResourceBundle extendsBundle)
Construct a new ProjectResourceBundle
EnumerationgetKeys()
StringgetResourceName()
protected ObjecthandleGetObject(String key)
StringtoString()
Clears the internal cache

Field Detail

log

protected static Log log

Method Detail

getBundle

public static ProjectResourceBundle getBundle(String projectName, String packageName, String resourceName)
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

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)
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

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)
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

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)
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)
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.

getKeys

public Enumeration getKeys()

getResourceName

public String getResourceName()

handleGetObject

protected Object handleGetObject(String key)

toString

public String toString()
Clears the internal cache
Copyright B) 2005 Apache Web Services Project. All Rights Reserved.