Class ExtendedMessageFormat

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable

    @Deprecated
    public class ExtendedMessageFormat
    extends java.text.MessageFormat
    Deprecated.
    as of 3.6, use commons-text ExtendedMessageFormat instead
    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.

    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:

    • 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.
    Since:
    2.4
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.text.MessageFormat

        java.text.MessageFormat.Field
    • Field Summary

      Fields 
      Modifier and Type Field 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 Summary

      Constructors 
      Constructor 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.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method 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.
      Gets 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.
      • Methods inherited from class java.text.MessageFormat

        clone, format, format, format, formatToCharacterIterator, getFormats, getFormatsByArgumentIndex, getLocale, parse, parse, parseObject, setLocale
      • Methods inherited from class java.text.Format

        format, parseObject
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ExtendedMessageFormat

        public ExtendedMessageFormat​(java.lang.String pattern)
        Deprecated.
        Create a new ExtendedMessageFormat for the default locale.
        Parameters:
        pattern - the pattern to use, not null
        Throws:
        java.lang.IllegalArgumentException - in case of a bad pattern.
      • ExtendedMessageFormat

        public ExtendedMessageFormat​(java.lang.String pattern,
                                     java.util.Locale locale)
        Deprecated.
        Create a new ExtendedMessageFormat.
        Parameters:
        pattern - the pattern to use, not null
        locale - the locale to use, not null
        Throws:
        java.lang.IllegalArgumentException - in case of a bad pattern.
      • ExtendedMessageFormat

        public ExtendedMessageFormat​(java.lang.String pattern,
                                     java.util.Map<java.lang.String,​? extends FormatFactory> registry)
        Deprecated.
        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:
        java.lang.IllegalArgumentException - in case of a bad pattern.
      • ExtendedMessageFormat

        public ExtendedMessageFormat​(java.lang.String pattern,
                                     java.util.Locale locale,
                                     java.util.Map<java.lang.String,​? extends FormatFactory> registry)
        Deprecated.
        Create a new ExtendedMessageFormat.
        Parameters:
        pattern - the pattern to use, not null.
        locale - the locale to use.
        registry - the registry of format factories, may be null.
        Throws:
        java.lang.IllegalArgumentException - in case of a bad pattern.
    • Method Detail

      • toPattern

        public java.lang.String toPattern()
        Deprecated.
        Overrides:
        toPattern in class java.text.MessageFormat
      • applyPattern

        public final void applyPattern​(java.lang.String pattern)
        Deprecated.
        Apply the specified pattern.
        Overrides:
        applyPattern in class java.text.MessageFormat
        Parameters:
        pattern - String
      • setFormat

        public void setFormat​(int formatElementIndex,
                              java.text.Format newFormat)
        Deprecated.
        Throws UnsupportedOperationException - see class Javadoc for details.
        Overrides:
        setFormat in class java.text.MessageFormat
        Parameters:
        formatElementIndex - format element index
        newFormat - the new format
        Throws:
        java.lang.UnsupportedOperationException - always thrown since this isn't supported by ExtendMessageFormat
      • setFormatByArgumentIndex

        public void setFormatByArgumentIndex​(int argumentIndex,
                                             java.text.Format newFormat)
        Deprecated.
        Throws UnsupportedOperationException - see class Javadoc for details.
        Overrides:
        setFormatByArgumentIndex in class java.text.MessageFormat
        Parameters:
        argumentIndex - argument index
        newFormat - the new format
        Throws:
        java.lang.UnsupportedOperationException - always thrown since this isn't supported by ExtendMessageFormat
      • setFormats

        public void setFormats​(java.text.Format[] newFormats)
        Deprecated.
        Throws UnsupportedOperationException - see class Javadoc for details.
        Overrides:
        setFormats in class java.text.MessageFormat
        Parameters:
        newFormats - new formats
        Throws:
        java.lang.UnsupportedOperationException - always thrown since this isn't supported by ExtendMessageFormat
      • setFormatsByArgumentIndex

        public void setFormatsByArgumentIndex​(java.text.Format[] newFormats)
        Deprecated.
        Throws UnsupportedOperationException - see class Javadoc for details.
        Overrides:
        setFormatsByArgumentIndex in class java.text.MessageFormat
        Parameters:
        newFormats - new formats
        Throws:
        java.lang.UnsupportedOperationException - always thrown since this isn't supported by ExtendMessageFormat
      • equals

        public boolean equals​(java.lang.Object obj)
        Deprecated.
        Check if this extended message format is equal to another object.
        Overrides:
        equals in class java.text.MessageFormat
        Parameters:
        obj - the object to compare to
        Returns:
        true if this object equals the other, otherwise false
      • hashCode

        public int hashCode()
        Deprecated.
        Overrides:
        hashCode in class java.text.MessageFormat
      • getFormat

        private java.text.Format getFormat​(java.lang.String desc)
        Deprecated.
        Gets a custom format from a format description.
        Parameters:
        desc - String
        Returns:
        Format
      • readArgumentIndex

        private int readArgumentIndex​(java.lang.String pattern,
                                      java.text.ParsePosition pos)
        Deprecated.
        Read the argument index from the current format element
        Parameters:
        pattern - pattern to parse
        pos - current parse position
        Returns:
        argument index
      • parseFormatDescription

        private java.lang.String parseFormatDescription​(java.lang.String pattern,
                                                        java.text.ParsePosition pos)
        Deprecated.
        Parse the format component of a format element.
        Parameters:
        pattern - string to parse
        pos - current parse position
        Returns:
        Format description String
      • insertFormats

        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.
        Parameters:
        pattern - source
        customPatterns - The custom patterns to re-insert, if any
        Returns:
        full pattern
      • seekNonWs

        private void seekNonWs​(java.lang.String pattern,
                               java.text.ParsePosition pos)
        Deprecated.
        Consume whitespace from the current parse position.
        Parameters:
        pattern - String to read
        pos - current position
      • next

        private java.text.ParsePosition next​(java.text.ParsePosition pos)
        Deprecated.
        Convenience method to advance parse position by 1
        Parameters:
        pos - ParsePosition
        Returns:
        pos
      • appendQuotedString

        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.
        Parameters:
        pattern - pattern to parse
        pos - current parse position
        appendTo - optional StringBuilder to append
        Returns:
        appendTo
      • getQuotedString

        private void getQuotedString​(java.lang.String pattern,
                                     java.text.ParsePosition pos)
        Deprecated.
        Consume quoted string only
        Parameters:
        pattern - pattern to parse
        pos - current parse position
      • containsElements

        private boolean containsElements​(java.util.Collection<?> coll)
        Deprecated.
        Learn whether the specified Collection contains non-null elements.
        Parameters:
        coll - to check
        Returns:
        true if some Object was found, false otherwise.