Interface SubFormatter

  • All Superinterfaces:
    Serializable
    Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface SubFormatter
    extends Serializable
    • Method Detail

      • format

        String format​(String name,
                      Map<? super String,​?> parameters,
                      Function<String,​NameBasedMessageFormat> nameBasedMessageFormatFactory)
        Formats the the parameter with the given name from the given set of parameters. SubFormatters can recursively format messages using the supplied parameters and the given NameBasedMessageFormat factory. The NameBasedMessageFormat factory should create an instance that uses the same settings as the format that is calling the current sub-formatter, but with a different pattern.
        Parameters:
        name - the name of the parameter to format
        parameters - the map that contains all the parameters used in the current formatter operation
        nameBasedMessageFormatFactory - a factory to create a new NameBasedMessageFormat for any recursively defined message patterns.
        Returns:
        the formatted parameter
      • alternativeFormatter

        static SubFormatter alternativeFormatter​(String modifier,
                                                 Locale locale)
        Formatter that always formats the given modifier as a pattern instead of using the given parameter. This formatter may be useful for testing or for more complex dynamic formatting.
        Parameters:
        modifier - the String to use as alternative
        locale - the locale to use when formatting
        Returns:
        a formatter that outputs the given modifier, formatted as pattern