@Deprecated
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.Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
DUMMY_PATTERN
Deprecated.
|
private static char |
END_FE
Deprecated.
|
private static int |
HASH_SEED
Deprecated.
|
private static char |
QUOTE
Deprecated.
|
private java.util.Map<java.lang.String,? extends FormatFactory> |
registry
Deprecated.
|
private static long |
serialVersionUID
Deprecated.
|
private static char |
START_FE
Deprecated.
|
private static char |
START_FMT
Deprecated.
|
private java.lang.String |
toPattern
Deprecated.
|
Constructor and Description |
---|
ExtendedMessageFormat(java.lang.String pattern)
Deprecated.
Create a new ExtendedMessageFormat for the default locale.
|
ExtendedMessageFormat(java.lang.String pattern,
java.util.Locale locale)
Deprecated.
Create a new ExtendedMessageFormat.
|
ExtendedMessageFormat(java.lang.String pattern,
java.util.Locale locale,
java.util.Map<java.lang.String,? extends FormatFactory> registry)
Deprecated.
Create a new ExtendedMessageFormat.
|
ExtendedMessageFormat(java.lang.String pattern,
java.util.Map<java.lang.String,? extends FormatFactory> registry)
Deprecated.
Create a new ExtendedMessageFormat for the default locale.
|
Modifier and Type | Method and Description |
---|---|
private java.lang.StringBuilder |
appendQuotedString(java.lang.String pattern,
java.text.ParsePosition pos,
java.lang.StringBuilder appendTo)
Deprecated.
Consume a quoted string, adding it to
appendTo if
specified. |
void |
applyPattern(java.lang.String pattern)
Deprecated.
Apply the specified pattern.
|
private boolean |
containsElements(java.util.Collection<?> coll)
Deprecated.
Learn whether the specified Collection contains non-null elements.
|
boolean |
equals(java.lang.Object obj)
Deprecated.
Check if this extended message format is equal to another object.
|
private java.text.Format |
getFormat(java.lang.String desc)
Deprecated.
Get a custom format from a format description.
|
private void |
getQuotedString(java.lang.String pattern,
java.text.ParsePosition pos)
Deprecated.
Consume quoted string only
|
int |
hashCode()
Deprecated.
|
private java.lang.String |
insertFormats(java.lang.String pattern,
java.util.ArrayList<java.lang.String> customPatterns)
Deprecated.
Insert formats back into the pattern for toPattern() support.
|
private java.text.ParsePosition |
next(java.text.ParsePosition pos)
Deprecated.
Convenience method to advance parse position by 1
|
private java.lang.String |
parseFormatDescription(java.lang.String pattern,
java.text.ParsePosition pos)
Deprecated.
Parse the format component of a format element.
|
private int |
readArgumentIndex(java.lang.String pattern,
java.text.ParsePosition pos)
Deprecated.
Read the argument index from the current format element
|
private void |
seekNonWs(java.lang.String pattern,
java.text.ParsePosition pos)
Deprecated.
Consume whitespace from the current parse position.
|
void |
setFormat(int formatElementIndex,
java.text.Format newFormat)
Deprecated.
Throws UnsupportedOperationException - see class Javadoc for details.
|
void |
setFormatByArgumentIndex(int argumentIndex,
java.text.Format newFormat)
Deprecated.
Throws UnsupportedOperationException - see class Javadoc for details.
|
void |
setFormats(java.text.Format[] newFormats)
Deprecated.
Throws UnsupportedOperationException - see class Javadoc for details.
|
void |
setFormatsByArgumentIndex(java.text.Format[] newFormats)
Deprecated.
Throws UnsupportedOperationException - see class Javadoc for details.
|
java.lang.String |
toPattern()
Deprecated.
|
private static final long serialVersionUID
private static final int HASH_SEED
private static final java.lang.String DUMMY_PATTERN
private static final char START_FMT
private static final char END_FE
private static final char START_FE
private static final char QUOTE
private java.lang.String toPattern
private final java.util.Map<java.lang.String,? extends FormatFactory> registry
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<java.lang.String,? extends FormatFactory> 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<java.lang.String,? extends FormatFactory> 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
- always thrown since this isn't supported by ExtendMessageFormatpublic void setFormatByArgumentIndex(int argumentIndex, java.text.Format newFormat)
setFormatByArgumentIndex
in class java.text.MessageFormat
argumentIndex
- argument indexnewFormat
- the new formatjava.lang.UnsupportedOperationException
- always thrown since this isn't supported by ExtendMessageFormatpublic void setFormats(java.text.Format[] newFormats)
setFormats
in class java.text.MessageFormat
newFormats
- new formatsjava.lang.UnsupportedOperationException
- always thrown since this isn't supported by ExtendMessageFormatpublic void setFormatsByArgumentIndex(java.text.Format[] newFormats)
setFormatsByArgumentIndex
in class java.text.MessageFormat
newFormats
- new formatsjava.lang.UnsupportedOperationException
- always thrown since this isn't supported by ExtendMessageFormatpublic 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
private java.text.Format getFormat(java.lang.String desc)
desc
- Stringprivate int readArgumentIndex(java.lang.String pattern, java.text.ParsePosition pos)
pattern
- pattern to parsepos
- current parse positionprivate java.lang.String parseFormatDescription(java.lang.String pattern, java.text.ParsePosition pos)
pattern
- string to parsepos
- current parse positionprivate java.lang.String insertFormats(java.lang.String pattern, java.util.ArrayList<java.lang.String> customPatterns)
pattern
- sourcecustomPatterns
- The custom patterns to re-insert, if anyprivate void seekNonWs(java.lang.String pattern, java.text.ParsePosition pos)
pattern
- String to readpos
- current positionprivate java.text.ParsePosition next(java.text.ParsePosition pos)
pos
- ParsePositionpos
private java.lang.StringBuilder appendQuotedString(java.lang.String pattern, java.text.ParsePosition pos, java.lang.StringBuilder appendTo)
appendTo
if
specified.pattern
- pattern to parsepos
- current parse positionappendTo
- optional StringBuilder to appendappendTo
private void getQuotedString(java.lang.String pattern, java.text.ParsePosition pos)
pattern
- pattern to parsepos
- current parse positionprivate boolean containsElements(java.util.Collection<?> coll)
coll
- to checktrue
if some Object was found, false
otherwise.