org.springframework.format.number

## Class NumberFormatAnnotationFormatterFactory

- java.lang.Object
- - org.springframework.context.support.EmbeddedValueResolutionSupport
  - - org.springframework.format.number.NumberFormatAnnotationFormatterFactory

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

      public class NumberFormatAnnotationFormatterFactory
      extends EmbeddedValueResolutionSupport
      implements AnnotationFormatterFactory<NumberFormat>

  Formats fields annotated with the `NumberFormat` annotation.
  Since:
    3.0
  Author:
    Keith Donald, Juergen Hoeller
  See Also:
    `NumberFormat`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `NumberFormatAnnotationFormatterFactory()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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`.

    - ### Methods inherited from class org.springframework.context.support.EmbeddedValueResolutionSupport

      `resolveEmbeddedValue, setEmbeddedValueResolver`

    - ### 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 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>`

    - #### 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 coercion 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 coercion 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