org.apache.batik.i18n
public class LocalizableSupport extends Object implements Localizable
For example, to implement Localizable, the following code can be used:
package mypackage; ... public class MyClass implements Localizable { // This code fragment requires a file named // 'mypackage/resources/Messages.properties', or a // 'mypackage.resources.Messages' class which extends // java.util.ResourceBundle, accessible using the current // classpath. LocalizableSupport localizableSupport = new LocalizableSupport("mypackage.resources.Messages"); public void setLocale(Locale l) { localizableSupport.setLocale(l); } public Local getLocale() { return localizableSupport.getLocale(); } public String formatMessage(String key, Object[] args) { return localizableSupport.formatMessage(key, args); } }The algorithm for the Locale lookup in a LocalizableSupport object is:
Note: if no group is specified a LocalizableSupport object belongs to a default group common to each instance of LocalizableSupport.
Field Summary | |
---|---|
protected String | bundleName
The resource bundle classname. |
protected ClassLoader | classLoader
The classloader to use to create the resource bundle. |
protected Locale | locale
The current locale. |
protected LocaleGroup | localeGroup
The locale group to which this object belongs. |
protected Locale | usedLocale
The locale in use. |
Constructor Summary | |
---|---|
LocalizableSupport(String s, Class cls)
Same as LocalizableSupport(cls, null). | |
LocalizableSupport(String s, Class cls, ClassLoader cl)
Same as LocalizableSupport(cls, null). | |
LocalizableSupport(String s)
Same as LocalizableSupport(s, null). | |
LocalizableSupport(String s, ClassLoader cl)
Creates a new Localizable object.
|
Method Summary | |
---|---|
String | formatMessage(String key, Object[] args)
Implements {@link
org.apache.batik.i18n.Localizable#formatMessage(String,Object[])}. |
int | getCharacter(String key) |
protected Locale | getCurrentLocale() |
Locale | getDefaultLocale()
Implements {@link
org.apache.batik.i18n.ExtendedLocalizable#getDefaultLocale()}. |
int | getInteger(String key)
Returns the integer mapped with the given string |
Locale | getLocale()
Implements {@link org.apache.batik.i18n.Localizable#getLocale()}. |
LocaleGroup | getLocaleGroup()
Implements {@link
org.apache.batik.i18n.ExtendedLocalizable#getLocaleGroup()}. |
ResourceBundle | getResourceBundle()
Here for backwards compatability |
protected ResourceBundle | getResourceBundle(int i) |
String | getString(String key) |
protected boolean | hasNextResourceBundle(int i) |
protected ResourceBundle | lookupResourceBundle(String bundle, Class theClass) |
void | setDefaultLocale(Locale l)
Implements {@link
org.apache.batik.i18n.ExtendedLocalizable#setDefaultLocale(Locale)}.
|
void | setLocale(Locale l)
Implements {@link org.apache.batik.i18n.Localizable#setLocale(Locale)}. |
void | setLocaleGroup(LocaleGroup lg)
Implements {@link
org.apache.batik.i18n.ExtendedLocalizable#setLocaleGroup(LocaleGroup)}. |
protected boolean | setUsedLocale()
returns true if the locale is different from the previously
used locale. |
Parameters: s must be the name of the class to use to get the appropriate resource bundle given the current locale. cl is the classloader used to create the resource bundle, or null.
See Also: java.util.ResourceBundle
Parameters: key a key of the resource bundle
Throws: MissingResourceException if key is not the name of a resource