org.springframework.format.number

## Class NumberFormatAnnotationFormatterFactory

- java.lang.Object
- - org.springframework.format.number.NumberFormatAnnotationFormatterFactory

All Implemented Interfaces:
  Aware, EmbeddedValueResolverAware, AnnotationFormatterFactory<NumberFormat>

    public class NumberFormatAnnotationFormatterFactory
    extends Object
    implements AnnotationFormatterFactory<NumberFormat>, EmbeddedValueResolverAware

Formats fields annotated with the `NumberFormat` annotation.

Since:
  3.0
Author:
  Keith Donald
See Also:
  `NumberFormat`

### Constructor Summary

Constructors
Constructor and Description
`NumberFormatAnnotationFormatterFactory()`

### Method Summary

Methods
`Set<Class<?>>` `getFieldTypes()` The types of fields that may be annotated with the <A> annotation.
`Parser<Number>` `getParser(NumberFormat annotation, Class<?> fieldType)` Get the Parser to parse a submitted value for a field of `fieldType` annotated with `annotation`.
`Printer<Number>` `getPrinter(NumberFormat annotation, Class<?> fieldType)` Get the Printer to print the value of a field of `fieldType` annotated with `annotation`.
`protected String` `resolveEmbeddedValue(String value)`
`void` `setEmbeddedValueResolver(StringValueResolver resolver)` Set the StringValueResolver to use for resolving embedded definition values.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### NumberFormatAnnotationFormatterFactory

    public NumberFormatAnnotationFormatterFactory()

### Method Detail

#### getFieldTypes

    public final Set<Class<?>> getFieldTypes()

Description copied from interface: `AnnotationFormatterFactory`
The types of fields that may be annotated with the <A> annotation.

Specified by:
  `getFieldTypes` in interface `AnnotationFormatterFactory<NumberFormat>`

#### setEmbeddedValueResolver

    public void setEmbeddedValueResolver(StringValueResolver resolver)

Description copied from interface: `EmbeddedValueResolverAware`
Set the StringValueResolver to use for resolving embedded definition values.

Specified by:
  `setEmbeddedValueResolver` in interface `EmbeddedValueResolverAware`

#### resolveEmbeddedValue

    protected String resolveEmbeddedValue(String value)

#### getPrinter

    public Printer<Number> getPrinter(NumberFormat annotation,
                             Class<?> fieldType)

Description copied from interface: `AnnotationFormatterFactory`
Get the Printer to print the value of a field of `fieldType` annotated with `annotation`. If the type <T> the printer accepts is not assignable to `fieldType`, a coersion from `fieldType` to <T> will be attempted before the Printer is invoked.

Specified by:
  `getPrinter` in interface `AnnotationFormatterFactory<NumberFormat>`
Parameters:
  `annotation` - the annotation instance
  `fieldType` - the type of field that was annotated
Returns:
  the printer

#### getParser

    public Parser<Number> getParser(NumberFormat annotation,
                           Class<?> fieldType)

Description copied from interface: `AnnotationFormatterFactory`
Get the Parser to parse a submitted value for a field of `fieldType` annotated with `annotation`. If the object the parser returns is not assignable to `fieldType`, a coersion to `fieldType` will be attempted before the field is set.

Specified by:
  `getParser` in interface `AnnotationFormatterFactory<NumberFormat>`
Parameters:
  `annotation` - the annotation instance
  `fieldType` - the type of field that was annotated
Returns:
  the parser