Class InternationalizedException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- org.apache.uima.InternationalizedException
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
PackageCreatorException
,UIMAException
public class InternationalizedException extends java.lang.Exception
TheInternationalizedException
class adds internationalization support to the standard functionality provided byjava.lang.Exception
.To support internationalization, the thrower of an exception must not specify a hardcoded message string. Instead, the thrower specifies a key that identifies the message. That key is then looked up in a locale-specific
ResourceBundle
to find the actual message associated with this exception.This class also supports arguments to messages. The full message will be constructed using the
MessageFormat
class. For more information on internationalization, see the Java Internationalization Guide.This version of this class works with JDK versions prior to 1.4, since it does not assume support for exception chaining. The file
InternationalizedException.java_1_4
is a version that uses the exception chaining support built-in to JDK1.4.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description InternationalizedException()
Creates a newInternationalizedException
with a null message.InternationalizedException(java.lang.String aResourceBundleName, java.lang.String aMessageKey, java.lang.Object[] aArguments)
Creates a newInternationalizedException
with the specified message.InternationalizedException(java.lang.String aResourceBundleName, java.lang.String aMessageKey, java.lang.Object[] aArguments, java.lang.Throwable aCause)
Creates a newInternationalizedException
with the specified message and cause.InternationalizedException(java.lang.Throwable aCause)
Creates a newInternationalizedException
with the specified cause and a null message.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object[]
getArguments()
Gets the arguments to this exception's message.java.lang.Throwable
getCause()
Gets the cause of this Exception.java.lang.String
getLocalizedMessage()
Gets the localized detail message for this exception.java.lang.String
getLocalizedMessage(java.util.Locale aLocale)
Gets the localized detail message for this exception using the specifiedLocale
.java.lang.String
getMessage()
Gets the English detail message for this exception.java.lang.String
getMessageKey()
Gets the identifier for this exception's message.java.lang.String
getResourceBundleName()
Gets the base name of the resource bundle in which the message for this exception is located.boolean
hasMessageKey(java.lang.String messageKey)
Checks if this exception, or any of its root causes, has a particular UIMA message key.java.lang.Throwable
initCause(java.lang.Throwable cause)
-
-
-
Constructor Detail
-
InternationalizedException
public InternationalizedException()
Creates a newInternationalizedException
with a null message.
-
InternationalizedException
public InternationalizedException(java.lang.Throwable aCause)
Creates a newInternationalizedException
with the specified cause and a null message.- Parameters:
aCause
- the original exception that caused this exception to be thrown, if any
-
InternationalizedException
public InternationalizedException(java.lang.String aResourceBundleName, java.lang.String aMessageKey, java.lang.Object[] aArguments)
Creates a newInternationalizedException
with the specified message.- Parameters:
aResourceBundleName
- the base name of the resource bundle in which the message for this exception is located.aMessageKey
- an identifier that maps to the message for this exception. The message may contain placeholders for arguments as defined by theMessageFormat
class.aArguments
- The arguments to the message.null
may be used if the message has no arguments.
-
InternationalizedException
public InternationalizedException(java.lang.String aResourceBundleName, java.lang.String aMessageKey, java.lang.Object[] aArguments, java.lang.Throwable aCause)
Creates a newInternationalizedException
with the specified message and cause.- Parameters:
aResourceBundleName
- the base name of the resource bundle in which the message for this exception is located.aMessageKey
- an identifier that maps to the message for this exception. The message may contain placeholders for arguments as defined by theMessageFormat
class.aArguments
- The arguments to the message.null
may be used if the message has no arguments.aCause
- the original exception that caused this exception to be thrown, if any
-
-
Method Detail
-
getResourceBundleName
public java.lang.String getResourceBundleName()
Gets the base name of the resource bundle in which the message for this exception is located.- Returns:
- the resource bundle base name. May return
null
if this exception has no message.
-
getMessageKey
public java.lang.String getMessageKey()
Gets the identifier for this exception's message. This identifier can be looked up in this exception'sResourceBundle
to get the locale-specific message for this exception.- Returns:
- the resource identifier for this exception's message. May return
null
if this exception has no message.
-
getArguments
public java.lang.Object[] getArguments()
Gets the arguments to this exception's message. Arguments allow aInternationalizedException
to have a compound message, made up of multiple parts that are concatenated in a language-neutral way.- Returns:
- the arguments to this exception's message.
-
getMessage
public java.lang.String getMessage()
Gets the English detail message for this exception. For the localized message usegetLocalizedMessage()
.- Overrides:
getMessage
in classjava.lang.Throwable
- Returns:
- the English detail message for this exception.
-
getLocalizedMessage
public java.lang.String getLocalizedMessage()
Gets the localized detail message for this exception. This uses the default Locale for this JVM. A Locale may be specified usinggetLocalizedMessage(Locale)
.- Overrides:
getLocalizedMessage
in classjava.lang.Throwable
- Returns:
- this exception's detail message, localized for the default Locale.
-
getLocalizedMessage
public java.lang.String getLocalizedMessage(java.util.Locale aLocale)
Gets the localized detail message for this exception using the specifiedLocale
.- Parameters:
aLocale
- the locale to use for localizing the message- Returns:
- this exception's detail message, localized for the specified
Locale
.
-
getCause
public java.lang.Throwable getCause()
Gets the cause of this Exception.- Overrides:
getCause
in classjava.lang.Throwable
- Returns:
- the Throwable that caused this Exception to occur, if any. Returns
null
if there is no such cause.
-
hasMessageKey
public boolean hasMessageKey(java.lang.String messageKey)
Checks if this exception, or any of its root causes, has a particular UIMA message key. This allows checking for particular error condition- Parameters:
messageKey
- to search for in the exception chain- Returns:
- true if this exception or any of its root causes has a particular UIMA message key.
-
initCause
public java.lang.Throwable initCause(java.lang.Throwable cause)
- Overrides:
initCause
in classjava.lang.Throwable
-
-