Class LocalizedMessage

  • All Implemented Interfaces:
    LoggerNameAwareMessage, Message

    public class LocalizedMessage
    extends Object
    implements Message, LoggerNameAwareMessage
    Provides some level of compatibility with Log4j 1.x and convenience but is not the recommended way to Localize messages.

    The recommended way to localize messages is to log a message id. Log events should then be recorded without formatting into a data store. The application that is used to read the events and display them to the user can then localize and format the messages for the end user.

    • Method Detail

      • getFormattedMessage

        public String getFormattedMessage()
        Returns the formatted message after looking up the format in the resource bundle.
        Specified by:
        getFormattedMessage in interface Message
        Returns:
        The formatted message String.
      • getFormat

        public String getFormat()
        Description copied from interface: Message
        Gets the format portion of the Message. This may be an implementation-specific template string for interpolating the message parameters.
        Specified by:
        getFormat in interface Message
        Returns:
        The message format. Some implementations, such as ParameterizedMessage, will use this as the message "pattern". Other Messages may simply return an empty String.
      • getParameters

        public Object[] getParameters()
        Description copied from interface: Message
        Gets parameter values, if any.
        Specified by:
        getParameters in interface Message
        Returns:
        An array of parameter values or null.
      • getThrowable

        public Throwable getThrowable()
        Description copied from interface: Message
        Gets the throwable, if any.
        Specified by:
        getThrowable in interface Message
        Returns:
        the throwable or null.
      • getResourceBundle

        protected ResourceBundle getResourceBundle​(String rbBaseName,
                                                   Locale resourceBundleLocale,
                                                   boolean loop)
        Override this to use a ResourceBundle.Control in Java 6
        Parameters:
        rbBaseName - The base name of the resource bundle, a fully qualified class name.
        resourceBundleLocale - The locale to use when formatting the message.
        loop - If true the key will be treated as a package or class name and a resource bundle will be located based on all or part of the package name. If false the key is expected to be the exact bundle id.
        Returns:
        The ResourceBundle.