public class CmsMultiMessages extends CmsMessages
Messages are cached for faster lookup. If a localized key is contained in more then one resource bundle, it will be used only from the resource bundle where it was first found in. The resource bundle order is undefined. It is therefore recommended to ensure the uniqueness of all module keys by placing a special prefix in front of all keys of a resource bundle.
限定符和类型 | 字段和说明 |
---|---|
static java.lang.String |
MULTI_BUNDLE_NAME
Constant for the multi bundle name.
|
static java.lang.String |
NULL_STRING
Null String value for caching of null message results.
|
KEY_SHORT_SUFFIX, UNKNOWN_KEY_EXTENSION
构造器和说明 |
---|
CmsMultiMessages(java.util.Locale locale)
Constructor for creating a new messages object initialized with the given locale.
|
限定符和类型 | 方法和说明 |
---|---|
void |
addBundle(I_CmsMessageBundle bundle)
Adds a bundle instance to this multi message bundle.
|
void |
addMessages(CmsMessages messages)
Adds a messages instance to this multi message bundle.
|
void |
addMessages(java.util.List<CmsMessages> messages)
Adds a list a messages instances to this multi message bundle.
|
java.util.List<CmsMessages> |
getMessages()
Returns the list of all individual message objects in this multi message instance.
|
java.lang.String |
getString(java.lang.String keyName)
Directly calls the getString(String) method of the wrapped ResourceBundle.
|
boolean |
isInitialized()
Checks if the bundle was properly initialized.
|
java.lang.String |
key(java.lang.String keyName,
boolean allowNull)
Returns the localized resource string for a given message key.
|
equals, formatUnknownKey, getBundleName, getDate, getDate, getDate, getDateTime, getDateTime, getDateTime, getLocale, getResourceBundle, hashCode, isUncacheable, isUnknownKey, key, key, key, key, key, keyDefault, keyWithParams, setBundleName, setLocale, setResourceBundle, toString
public static final java.lang.String MULTI_BUNDLE_NAME
public static final java.lang.String NULL_STRING
public CmsMultiMessages(java.util.Locale locale)
locale
- the locale to use for localization of the messagespublic void addBundle(I_CmsMessageBundle bundle)
The added bundle will be localized with the locale of this multi message bundle.
bundle
- the bundle instance to addpublic void addMessages(CmsMessages messages) throws CmsIllegalArgumentException
The messages instance should have been initialized with the same locale as this multi bundle,
if not, the locale of the messages instance is automatically replaced. However, this will not work
if the added messages instance is in face also of type
.CmsMultiMessages
messages
- the messages instance to addCmsIllegalArgumentException
- if the locale of the given CmsMultiMessages
does not match the locale of this multi messagespublic void addMessages(java.util.List<CmsMessages> messages)
messages
- the messages instance to addpublic java.util.List<CmsMessages> getMessages()
public java.lang.String getString(java.lang.String keyName)
CmsMessages
If you use this this class on a template, you should consider using
the CmsMessages.key(String)
method to get the value from the ResourceBundle because it
handles the exception for you in a convenient way.
getString
在类中 CmsMessages
keyName
- the keyCmsMessages.getString(java.lang.String)
public boolean isInitialized()
CmsMessages
isInitialized
在类中 CmsMessages
true
if bundle was initialized, false
otherwiseCmsMessages.isInitialized()
public java.lang.String key(java.lang.String keyName, boolean allowNull)
CmsMessages
If the key was not found in the bundle, the return value
depends on the setting of the allowNull parameter. If set to false,
the return value is always a String in the format
"??? " + keyName + " ???"
.
If set to true, null is returned if the key is not found.
This will also be returned
if the bundle was not properly initialized first.
key
在类中 CmsMessages
keyName
- the key for the desired stringallowNull
- if true, 'null' is an allowed return valueCmsMessages.key(java.lang.String, boolean)