## org.springframework.format.number
Class NumberFormatAnnotationFormatterFactory

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

All Implemented Interfaces:
  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
`NumberFormatAnnotationFormatterFactory()`

Method Summary
`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