public class ExtendedMessageFormat
extends java.text.MessageFormat
java.text.MessageFormat
to allow pluggable/additional formatting
options for embedded format elements. Client code should specify a registry
of FormatFactory
instances associated with String
format names. This registry will be consulted when the format elements are
parsed from the message pattern. In this way custom patterns can be specified,
and the formats supported by java.text.MessageFormat
can be overridden
at the format and/or format style level (see MessageFormat). A "format element"
embedded in the message pattern is specified (()? signifies optionality):{
argument-number(,
format-name(,
format-style)?)?}
format-name and format-style values are trimmed of surrounding whitespace
in the manner of java.text.MessageFormat
. If format-name denotes
FormatFactory formatFactoryInstance
in registry
, a Format
matching format-name and format-style is requested from
formatFactoryInstance
. If this is successful, the Format
found is used for this format element.
NOTICE:: The various subformat mutator methods are considered unnecessary; they exist on the parent
class to allow the type of customization which it is the job of this class to provide in
a configurable fashion. These methods have thus been disabled and will throw
UnsupportedOperationException
if called.
Limitations inherited from java.text.MessageFormat
:
Format
s, including MessageFormat
and thus
ExtendedMessageFormat
, is not guaranteed.Constructor and Description |
---|
ExtendedMessageFormat(java.lang.String pattern)
Create a new ExtendedMessageFormat for the default locale.
|
ExtendedMessageFormat(java.lang.String pattern,
java.util.Locale locale)
Create a new ExtendedMessageFormat.
|
ExtendedMessageFormat(java.lang.String pattern,
java.util.Locale locale,
java.util.Map registry)
Create a new ExtendedMessageFormat.
|
ExtendedMessageFormat(java.lang.String pattern,
java.util.Map registry)
Create a new ExtendedMessageFormat for the default locale.
|
Modifier and Type | Method and Description |
---|---|
void |
applyPattern(java.lang.String pattern)
Apply the specified pattern.
|
boolean |
equals(java.lang.Object obj)
Check if this extended message format is equal to another object.
|
int |
hashCode()
Return the hashcode.
|
void |
setFormat(int formatElementIndex,
java.text.Format newFormat)
Throws UnsupportedOperationException - see class Javadoc for details.
|
void |
setFormatByArgumentIndex(int argumentIndex,
java.text.Format newFormat)
Throws UnsupportedOperationException - see class Javadoc for details.
|
void |
setFormats(java.text.Format[] newFormats)
Throws UnsupportedOperationException - see class Javadoc for details.
|
void |
setFormatsByArgumentIndex(java.text.Format[] newFormats)
Throws UnsupportedOperationException - see class Javadoc for details.
|
java.lang.String |
toPattern() |
public ExtendedMessageFormat(java.lang.String pattern)
pattern
- the pattern to use, not nulljava.lang.IllegalArgumentException
- in case of a bad pattern.public ExtendedMessageFormat(java.lang.String pattern, java.util.Locale locale)
pattern
- the pattern to use, not nulllocale
- the locale to use, not nulljava.lang.IllegalArgumentException
- in case of a bad pattern.public ExtendedMessageFormat(java.lang.String pattern, java.util.Map registry)
pattern
- the pattern to use, not nullregistry
- the registry of format factories, may be nulljava.lang.IllegalArgumentException
- in case of a bad pattern.public ExtendedMessageFormat(java.lang.String pattern, java.util.Locale locale, java.util.Map registry)
pattern
- the pattern to use, not nulllocale
- the locale to use, not nullregistry
- the registry of format factories, may be nulljava.lang.IllegalArgumentException
- in case of a bad pattern.public java.lang.String toPattern()
toPattern
in class java.text.MessageFormat
public final void applyPattern(java.lang.String pattern)
applyPattern
in class java.text.MessageFormat
pattern
- Stringpublic void setFormat(int formatElementIndex, java.text.Format newFormat)
setFormat
in class java.text.MessageFormat
formatElementIndex
- format element indexnewFormat
- the new formatjava.lang.UnsupportedOperationException
public void setFormatByArgumentIndex(int argumentIndex, java.text.Format newFormat)
setFormatByArgumentIndex
in class java.text.MessageFormat
argumentIndex
- argument indexnewFormat
- the new formatjava.lang.UnsupportedOperationException
public void setFormats(java.text.Format[] newFormats)
setFormats
in class java.text.MessageFormat
newFormats
- new formatsjava.lang.UnsupportedOperationException
public void setFormatsByArgumentIndex(java.text.Format[] newFormats)
setFormatsByArgumentIndex
in class java.text.MessageFormat
newFormats
- new formatsjava.lang.UnsupportedOperationException
public boolean equals(java.lang.Object obj)
equals
in class java.text.MessageFormat
obj
- the object to compare topublic int hashCode()
hashCode
in class java.text.MessageFormat
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"