public class

ExtendedMessageFormat

extends MessageFormat
java.lang.Object
   ↳ java.text.Format
     ↳ java.text.MessageFormat
       ↳ humanize.text.ExtendedMessageFormat
Known Direct Subclasses

Class Overview

Extends 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.

Limitations inherited from java.text.MessageFormat:

  • When using "choice" subformats, support for nested formatting instructions is limited to that provided by the base class.
  • Thread-safety of Formats, including MessageFormat and thus ExtendedMessageFormat, is not guaranteed.

Summary

Public Constructors
ExtendedMessageFormat(String pattern)
Create a new ExtendedMessageFormat for the default locale.
ExtendedMessageFormat(String pattern, Locale locale)
Create a new ExtendedMessageFormat.
ExtendedMessageFormat(String pattern, Locale locale, Map<String, ? extends FormatFactory> registry)
Create a new ExtendedMessageFormat.
ExtendedMessageFormat(String pattern, Map<String, ? extends FormatFactory> registry)
Create a new ExtendedMessageFormat for the default locale.
Public Methods
final void applyPattern(String pattern)
Apply the specified pattern.
boolean equals(Object obj)
int hashCode()
Return the hashcode.
void setFormat(int formatElementIndex, Format newFormat)
void setFormatByArgumentIndex(int argumentIndex, Format newFormat)
void setFormats(Format[] newFormats)
void setFormatsByArgumentIndex(Format[] newFormats)
String toPattern()
[Expand]
Inherited Methods
From class java.text.MessageFormat
From class java.text.Format
From class java.lang.Object

Public Constructors

public ExtendedMessageFormat (String pattern)

Create a new ExtendedMessageFormat for the default locale.

Parameters
pattern the pattern to use, not null
Throws
IllegalArgumentException in case of a bad pattern.

public ExtendedMessageFormat (String pattern, Locale locale)

Create a new ExtendedMessageFormat.

Parameters
pattern the pattern to use, not null
locale the locale to use, not null
Throws
IllegalArgumentException in case of a bad pattern.

public ExtendedMessageFormat (String pattern, Locale locale, Map<String, ? extends FormatFactory> registry)

Create a new ExtendedMessageFormat.

Parameters
pattern the pattern to use, not null
locale the locale to use, not null
registry the registry of format factories, may be null
Throws
IllegalArgumentException in case of a bad pattern.

public ExtendedMessageFormat (String pattern, Map<String, ? extends FormatFactory> registry)

Create a new ExtendedMessageFormat for the default locale.

Parameters
pattern the pattern to use, not null
registry the registry of format factories, may be null
Throws
IllegalArgumentException in case of a bad pattern.

Public Methods

public final void applyPattern (String pattern)

Apply the specified pattern.

Parameters
pattern String

public boolean equals (Object obj)

public int hashCode ()

Return the hashcode.

Returns
  • the hashcode

public void setFormat (int formatElementIndex, Format newFormat)

public void setFormatByArgumentIndex (int argumentIndex, Format newFormat)

public void setFormats (Format[] newFormats)

public void setFormatsByArgumentIndex (Format[] newFormats)

public String toPattern ()