com.sun.tools.javac.util
Class JavacMessages

java.lang.Object
  extended by com.sun.tools.javac.util.JavacMessages
All Implemented Interfaces:
Messages

public class JavacMessages
extends java.lang.Object
implements Messages

Support for formatted localized messages.

This is NOT part of any API supported by Sun Microsystems. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.


Field Summary
private  java.util.Map<java.util.Locale,java.lang.ref.SoftReference<List<java.util.ResourceBundle>>> bundleCache
           
private  List<java.lang.String> bundleNames
           
private  List<java.util.ResourceBundle> currentBundles
           
private  java.util.Locale currentLocale
           
private static java.util.ResourceBundle defaultBundle
           
private static java.lang.String defaultBundleName
           
private static JavacMessages defaultMessages
           
protected static Context.Key<JavacMessages> messagesKey
          The context key for the JavacMessages object.
 
Constructor Summary
JavacMessages()
           
JavacMessages(Context context)
          Creates a JavacMessages object.
JavacMessages(java.lang.String bundleName)
          Creates a JavacMessages object.
 
Method Summary
 void add(java.lang.String bundleName)
          Add a new resource bundle to the list that is searched for localized messages.
 List<java.util.ResourceBundle> getBundles(java.util.Locale locale)
           
 java.util.Locale getCurrentLocale()
           
static java.util.ResourceBundle getDefaultBundle()
           
(package private) static java.lang.String getDefaultLocalizedString(java.lang.String key, java.lang.Object... args)
          Gets a localized string from the compiler's default bundle.
(package private) static JavacMessages getDefaultMessages()
          Deprecated. 
private static java.lang.String getLocalizedString(List<java.util.ResourceBundle> bundles, java.lang.String key, java.lang.Object... args)
           
 java.lang.String getLocalizedString(java.util.Locale l, java.lang.String key, java.lang.Object... args)
          Get a localized formatted string
 java.lang.String getLocalizedString(java.lang.String key, java.lang.Object... args)
          Gets the localized string corresponding to a key, formatted with a set of args.
static JavacMessages instance(Context context)
          Get the JavacMessages instance for this context.
 void setCurrentLocale(java.util.Locale locale)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

messagesKey

protected static final Context.Key<JavacMessages> messagesKey
The context key for the JavacMessages object.


bundleCache

private java.util.Map<java.util.Locale,java.lang.ref.SoftReference<List<java.util.ResourceBundle>>> bundleCache

bundleNames

private List<java.lang.String> bundleNames

currentLocale

private java.util.Locale currentLocale

currentBundles

private List<java.util.ResourceBundle> currentBundles

defaultBundleName

private static final java.lang.String defaultBundleName
See Also:
Constant Field Values

defaultBundle

private static java.util.ResourceBundle defaultBundle

defaultMessages

private static JavacMessages defaultMessages
Constructor Detail

JavacMessages

public JavacMessages(Context context)
Creates a JavacMessages object.


JavacMessages

public JavacMessages(java.lang.String bundleName)
              throws java.util.MissingResourceException
Creates a JavacMessages object.

Parameters:
bundleName - the name to identify the resource buundle of localized messages.
Throws:
java.util.MissingResourceException

JavacMessages

public JavacMessages()
              throws java.util.MissingResourceException
Throws:
java.util.MissingResourceException
Method Detail

instance

public static JavacMessages instance(Context context)
Get the JavacMessages instance for this context.


getCurrentLocale

public java.util.Locale getCurrentLocale()

setCurrentLocale

public void setCurrentLocale(java.util.Locale locale)

add

public void add(java.lang.String bundleName)
         throws java.util.MissingResourceException
Description copied from interface: Messages
Add a new resource bundle to the list that is searched for localized messages.

Specified by:
add in interface Messages
Parameters:
bundleName - the name to identify the resource bundle of localized messages.
Throws:
java.util.MissingResourceException - if the given resource is not found

getBundles

public List<java.util.ResourceBundle> getBundles(java.util.Locale locale)

getLocalizedString

public java.lang.String getLocalizedString(java.lang.String key,
                                           java.lang.Object... args)
Gets the localized string corresponding to a key, formatted with a set of args.


getLocalizedString

public java.lang.String getLocalizedString(java.util.Locale l,
                                           java.lang.String key,
                                           java.lang.Object... args)
Description copied from interface: Messages
Get a localized formatted string

Specified by:
getLocalizedString in interface Messages
Parameters:
l - locale in which the text is to be localized
key - locale-independent message key
args - misc message arguments
Returns:
a localized formatted string

getDefaultLocalizedString

static java.lang.String getDefaultLocalizedString(java.lang.String key,
                                                  java.lang.Object... args)
Gets a localized string from the compiler's default bundle.


getDefaultMessages

@Deprecated
static JavacMessages getDefaultMessages()
Deprecated. 


getDefaultBundle

public static java.util.ResourceBundle getDefaultBundle()

getLocalizedString

private static java.lang.String getLocalizedString(List<java.util.ResourceBundle> bundles,
                                                   java.lang.String key,
                                                   java.lang.Object... args)