# Formatter

public abstract class **Formatter** extends [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)  

|---|---|---|
| Known Direct Subclasses [SimpleFormatter](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/SimpleFormatter.html), [XMLFormatter](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/XMLFormatter.html) |---|---| | [SimpleFormatter](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/SimpleFormatter.html) | Print a brief summary of the `LogRecord` in a human readable format. | | [XMLFormatter](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/XMLFormatter.html) | Format a LogRecord into a standard XML format. | |||

A Formatter provides support for formatting LogRecords.


Typically each logging Handler will have a Formatter associated
with it. The Formatter takes a LogRecord and converts it to
a string.


Some formatters (such as the XMLFormatter) need to wrap head
and tail strings around a set of formatted records. The getHeader
and getTail methods can be used to obtain these strings.

### Protected Constructor Summary

|---|---|
|   | [Formatter](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Formatter.html#Formatter())() Construct a new formatter. |

### Public Method Summary

|---|---|
| abstract [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [format](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Formatter.html#format(java.util.logging.LogRecord))([LogRecord](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/LogRecord.html) record) Format the given log record and return the formatted string. |
| synchronized [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [formatMessage](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Formatter.html#formatMessage(java.util.logging.LogRecord))([LogRecord](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/LogRecord.html) record) Localize and format the message string from a log record. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [getHead](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Formatter.html#getHead(java.util.logging.Handler))([Handler](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Handler.html) h) Return the header string for a set of formatted records. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [getTail](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Formatter.html#getTail(java.util.logging.Handler))([Handler](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Handler.html) h) Return the tail string for a set of formatted records. |

### Inherited Method Summary

From class [java.lang.Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html)

|---|---|
| [Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) | [clone](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#clone())() Creates and returns a copy of this `Object`. |
| boolean | [equals](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#equals(java.lang.Object))([Object](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html) obj) Compares this instance with the specified object and indicates if they are equal. |
| void | [finalize](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#finalize())() Invoked when the garbage collector has detected that this instance is no longer reachable. |
| final [Class](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Class.html)\<?\> | [getClass](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#getClass())() Returns the unique instance of `https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Class.html` that represents this object's class. |
| int | [hashCode](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#hashCode())() Returns an integer hash code for this object. |
| final void | [notify](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#notify())() Causes a thread which is waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |
| final void | [notifyAll](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#notifyAll())() Causes all threads which are waiting on this object's monitor (by means of calling one of the `wait()` methods) to be woken up. |
| [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html) | [toString](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#toString())() Returns a string containing a concise, human-readable description of this object. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait(long,%20int))(long timeout, int nanos) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait(long))(long timeout) Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object or until the specified timeout expires. |
| final void | [wait](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/Object.html#wait())() Causes the calling thread to wait until another thread calls the `notify()` or `notifyAll()` method of this object. |

## Protected Constructors

#### protected
**Formatter**
()

Construct a new formatter.

## Public Methods

#### public abstract [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html)
**format**
([LogRecord](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/LogRecord.html) record)

Format the given log record and return the formatted string.


The resulting formatted String will normally include a
localized and formatted version of the LogRecord's message field.
It is recommended to use the `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Formatter.html#formatMessage(java.util.logging.LogRecord)`
convenience method to localize and format the message field.

##### Parameters

| record | the log record to be formatted. |
|---|---|

##### Returns

- the formatted log record

#### public synchronized [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html)
**formatMessage**
([LogRecord](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/LogRecord.html) record)

Localize and format the message string from a log record. This
method is provided as a convenience for Formatter subclasses to
use when they are performing formatting.


The message string is first localized to a format string using
the record's ResourceBundle. (If there is no ResourceBundle,
or if the message key is not found, then the key is used as the
format string.) The format String uses java.text style
formatting.

- If there are no parameters, no formatter is used.
- Otherwise, if the string contains "{0" then java.text.MessageFormat is used to format the string.
- Otherwise no formatting is performed.

<br />

##### Parameters

| record | the log record containing the raw message |
|---|---|

##### Returns

- a localized and formatted message

#### public [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html)
**getHead**
([Handler](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Handler.html) h)

Return the header string for a set of formatted records.


This base class returns an empty string, but this may be
overridden by subclasses.

##### Parameters

| h | The target handler (can be null) |
|---|---|

##### Returns

- header string

#### public [String](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/String.html)
**getTail**
([Handler](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/logging/Handler.html) h)

Return the tail string for a set of formatted records.


This base class returns an empty string, but this may be
overridden by subclasses.

##### Parameters

| h | The target handler (can be null) |
|---|---|

##### Returns

- tail string