Class MessageService
- java.lang.Object
-
- org.apache.derby.iapi.services.i18n.MessageService
-
public final class MessageService extends java.lang.Object
Message Service implementation provides a mechanism for locating messages and substituting arguments for message parameters. It also provides a service for locating property values.It uses the resource bundle mechanism for locating messages based on keys; the preferred form of resource bundle is a property file mapping keys to messages.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Locale
EN
private static BundleFinder
finder
-
Constructor Summary
Constructors Modifier Constructor Description private
MessageService()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
formatMessage(java.util.ResourceBundle bundle, java.lang.String messageId, java.lang.Object[] arguments, boolean lastChance)
private static java.util.ResourceBundle
getBundle(java.lang.String messageId)
static java.util.ResourceBundle
getBundleForLocale(java.util.Locale locale, java.lang.String msgId)
static java.util.ResourceBundle
getBundleWithEnDefault(java.lang.String resource, java.util.Locale locale)
Method to use instead of ResourceBundle.getBundle().static java.lang.String
getProperty(java.lang.String messageId, java.lang.String propertyName)
static java.lang.String
getTextMessage(java.lang.String messageId, java.lang.Object... arguments)
Transform the message from messageID to the actual error, warning, or info message using the correct locale.static int
hashString50(java.lang.String key)
Hash function to split messages into 50 files based upon the message identifier or SQLState.static void
setFinder(BundleFinder theFinder)
-
-
-
Field Detail
-
EN
private static final java.util.Locale EN
-
finder
private static BundleFinder finder
-
-
Method Detail
-
getBundleForLocale
public static java.util.ResourceBundle getBundleForLocale(java.util.Locale locale, java.lang.String msgId)
-
setFinder
public static void setFinder(BundleFinder theFinder)
-
getTextMessage
public static java.lang.String getTextMessage(java.lang.String messageId, java.lang.Object... arguments)
Transform the message from messageID to the actual error, warning, or info message using the correct locale.The arguments to the messages are passed via an object array, the objects in the array WILL be changed by this class. The caller should NOT get the object back from this array.
-
getProperty
public static java.lang.String getProperty(java.lang.String messageId, java.lang.String propertyName)
-
formatMessage
public static java.lang.String formatMessage(java.util.ResourceBundle bundle, java.lang.String messageId, java.lang.Object[] arguments, boolean lastChance)
-
getBundle
private static java.util.ResourceBundle getBundle(java.lang.String messageId)
-
getBundleWithEnDefault
public static java.util.ResourceBundle getBundleWithEnDefault(java.lang.String resource, java.util.Locale locale)
Method to use instead of ResourceBundle.getBundle(). This method acts like ResourceBundle.getBundle() but if the resource is not available in the requested locale, default locale or base class the one for en_US is returned.
-
hashString50
public static int hashString50(java.lang.String key)
Hash function to split messages into 50 files based upon the message identifier or SQLState. We don't use String.hashCode() as it varies between releases and doesn't provide an even distribution across the 50 files.
-
-