Class InternationalizedException

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    PackageCreatorException, UIMAException

    public class InternationalizedException
    extends java.lang.Exception
    The InternationalizedException class adds internationalization support to the standard functionality provided by java.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 new InternationalizedException with a null message.
      InternationalizedException​(java.lang.String aResourceBundleName, java.lang.String aMessageKey, java.lang.Object[] aArguments)
      Creates a new InternationalizedException with the specified message.
      InternationalizedException​(java.lang.String aResourceBundleName, java.lang.String aMessageKey, java.lang.Object[] aArguments, java.lang.Throwable aCause)
      Creates a new InternationalizedException with the specified message and cause.
      InternationalizedException​(java.lang.Throwable aCause)
      Creates a new InternationalizedException 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 specified Locale.
      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)  
      • Methods inherited from class java.lang.Throwable

        addSuppressed, fillInStackTrace, getStackTrace, getSuppressed, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • InternationalizedException

        public InternationalizedException()
        Creates a new InternationalizedException with a null message.
      • InternationalizedException

        public InternationalizedException​(java.lang.Throwable aCause)
        Creates a new InternationalizedException 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 new InternationalizedException 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 the MessageFormat 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 new InternationalizedException 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 the MessageFormat 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's ResourceBundle 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 a InternationalizedException 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 use getLocalizedMessage().
        Overrides:
        getMessage in class java.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 using getLocalizedMessage(Locale).
        Overrides:
        getLocalizedMessage in class java.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 specified Locale.
        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 class java.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 class java.lang.Throwable