de.smartics.exceptions.i18n
Class AbstractLocalizedRuntimeException

Package class diagram package AbstractLocalizedRuntimeException
java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.lang.RuntimeException
              extended by de.smartics.exceptions.AbstractCoreRuntimeException
                  extended by de.smartics.exceptions.i18n.AbstractLocalizedRuntimeException
All Implemented Interfaces:
CoreException, LocalizedException, Serializable
Direct Known Subclasses:
ConfigurationException, ParseException

public abstract class AbstractLocalizedRuntimeException
     
     
extends AbstractCoreRuntimeException
implements LocalizedException

The base implementation of exceptions that support Internationalization for unchecked exceptions.

Author:
Robert Reiner
See Also:
Serialized Form

Field Summary
protected  LocalizedInfo localizedInfo
          The localized information controls the localization information.
 
Fields inherited from class de.smartics.exceptions.AbstractCoreRuntimeException
info
 
Constructor Summary
protected AbstractLocalizedRuntimeException(Code code)
          Constructor.
protected AbstractLocalizedRuntimeException(Code code, String bundleBaseName)
          Constructor.
protected AbstractLocalizedRuntimeException(Throwable cause, Code code)
          Constructor.
protected AbstractLocalizedRuntimeException(Throwable cause, Code code, String bundleBaseName)
          Constructor.
protected AbstractLocalizedRuntimeException(Throwable cause, Code code, String bundleBaseName, String resourceKey)
          Constructor.
 
Method Summary
 String getBundleBaseName()
          Returns the fully qualified base name of the bundle to use.
 String getLocalizedMessage()
          Returns the localized message according to the system's default locale.
 String getLocalizedMessage(Locale locale)
          Returns the localized message for the given locale.
 String getLocalizedMessage(Locale locale, ClassLoader loader)
          Returns the localized message for the given locale.
 String getLocalizedMessage(String keyPrefix, Locale locale, MessageType messageType, ClassLoader loader)
          Returns the localized message for the given locale.
 String getMessage()
          Returns the detail message string of this throwable.
 String getMessage(Locale locale, MessageType messageType)
          Returns the message for the given message type.
 String getMessage(MessageType messageType)
          Returns the message for the given message type and the system's default locale.
 String getMessages()
          Returns the messages in one string.
 String getMessages(Locale locale)
          Returns the messages in one string.
 String getResourceKey()
          Returns the localization key to fetch messages from message bundles.
 
Methods inherited from class de.smartics.exceptions.AbstractCoreRuntimeException
getCause, getCode, getId, getTime, toString, truncateCause
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.smartics.exceptions.CoreException
getCause, getCode, getId, getStackTrace, getTime, setStackTrace, truncateCause
 

Field Detail

localizedInfo

protected final LocalizedInfo localizedInfo
The localized information controls the localization information.

Constructor Detail

AbstractLocalizedRuntimeException

protected AbstractLocalizedRuntimeException(Code code)
Constructor.

Parameters:
code - the error or exception code of the exception.
See Also:
AbstractLocalizedRuntimeException(Throwable,Code)

AbstractLocalizedRuntimeException

protected AbstractLocalizedRuntimeException(Code code,
                                            String bundleBaseName)
Constructor.

Parameters:
code - the error or exception code of the exception.
bundleBaseName - the fully qualified name of the bundle to use.
See Also:
AbstractLocalizedRuntimeException(Throwable,Code,String)

AbstractLocalizedRuntimeException

protected AbstractLocalizedRuntimeException(Throwable cause,
                                            Code code)
Constructor.

Parameters:
cause - the cause (which is saved for later retrieval by the AbstractCoreRuntimeException.getCause() method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
code - the error or exception code of the exception.
See Also:
AbstractLocalizedRuntimeException(Throwable,Code,String)

AbstractLocalizedRuntimeException

protected AbstractLocalizedRuntimeException(Throwable cause,
                                            Code code,
                                            String bundleBaseName)
Constructor.

Parameters:
cause - the cause (which is saved for later retrieval by the AbstractCoreRuntimeException.getCause() method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
code - the error or exception code of the exception.
bundleBaseName - the fully qualified name of the bundle to use.
See Also:
AbstractLocalizedRuntimeException(Throwable,Code,String,String)

AbstractLocalizedRuntimeException

protected AbstractLocalizedRuntimeException(Throwable cause,
                                            Code code,
                                            String bundleBaseName,
                                            String resourceKey)
Constructor.

Parameters:
cause - the cause (which is saved for later retrieval by the AbstractCoreRuntimeException.getCause() method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
code - the error or exception code of the exception.
bundleBaseName - the fully qualified name of the bundle to use.
resourceKey - the localization key to fetch messages from message bundles.
See Also:
AbstractCoreRuntimeException.AbstractCoreRuntimeException(String, Throwable, Code)
Method Detail

getResourceKey

public String getResourceKey()
Returns the localization key to fetch messages from message bundles. If this value is not set, the String representation of the AbstractCoreRuntimeException.getCode() instance is used.

Returns:
the localization key to fetch messages from message bundles.

getBundleBaseName

public String getBundleBaseName()
Returns the fully qualified base name of the bundle to use.

Returns:
the fully qualified base name of the bundle to use.

getMessage

public String getMessage(MessageType messageType)
Returns the message for the given message type and the system's default locale.

Specified by:
getMessage in interface LocalizedException
Parameters:
messageType - the type if message to return.
Returns:
the message for the given message type.

getMessage

public String getMessage()
Returns the detail message string of this throwable.

Returns the localized message for the default locale.

Specified by:
getMessage in interface CoreException
Overrides:
getMessage in class Throwable
Returns:
the detail message string of this Throwable instance (which may be null).
See Also:
Throwable.getMessage()

getMessage

public String getMessage(Locale locale,
                         MessageType messageType)
Returns the message for the given message type.

Specified by:
getMessage in interface LocalizedException
Parameters:
locale - the locale to select the localized message.
messageType - the type if message to return.
Returns:
the message for the given message type.

getLocalizedMessage

public String getLocalizedMessage()
Returns the localized message according to the system's default locale.

Creates a localized description of this throwable. Subclasses may override this method in order to produce a locale-specific message. For subclasses that do not override this method, the default implementation returns the same result as getMessage().

Specified by:
getLocalizedMessage in interface CoreException
Overrides:
getLocalizedMessage in class Throwable
Returns:
The localized description of this throwable.

getLocalizedMessage

public String getLocalizedMessage(Locale locale)
Returns the localized message for the given locale.

Parameters:
locale - the locale for which the message is requested.
Returns:
returns the localized message of this exception.

getLocalizedMessage

public String getLocalizedMessage(Locale locale,
                                  ClassLoader loader)
Returns the localized message for the given locale.

Parameters:
locale - the locale for which the message is requested.
loader - the loader to read the message bundle.
Returns:
returns the localized message of this exception.

getLocalizedMessage

public String getLocalizedMessage(String keyPrefix,
                                  Locale locale,
                                  MessageType messageType,
                                  ClassLoader loader)
Returns the localized message for the given locale.

Parameters:
keyPrefix - the prefix of the key to load from the bundle.
locale - the locale for which the message is requested.
messageType - the type of message to localize.
loader - the loader to read the message bundle.
Returns:
returns the localized message of this exception.
Todo:
Should we really provide these methods with class loader and control? What is the user scenario for this?

getMessages

public String getMessages()
Returns the messages in one string. Useful to make a dump of all text information for all message types for debugging.

Uses the default locale to access the messages.

Specified by:
getMessages in interface LocalizedException
Returns:
a dump of all types of messages.
See Also:
LocalizedException.getMessages()

getMessages

public String getMessages(Locale locale)
Returns the messages in one string. Useful to make a dump of all text information for all message types for debugging.

Specified by:
getMessages in interface LocalizedException
Parameters:
locale - the locale to use for the dump.
Returns:
a dump of all types of messages.
See Also:
LocalizedException.getMessages(java.util.Locale)


Copyright © 2007-null Kronseder & Reiner GmbH - smartics. All Rights Reserved.