Class Jsr354NumberFormatAnnotationFormatterFactory

java.lang.Object
org.springframework.context.support.EmbeddedValueResolutionSupport
org.springframework.format.number.money.Jsr354NumberFormatAnnotationFormatterFactory
All Implemented Interfaces:
Aware, EmbeddedValueResolverAware, AnnotationFormatterFactory<NumberFormat>

public class Jsr354NumberFormatAnnotationFormatterFactory extends EmbeddedValueResolutionSupport implements AnnotationFormatterFactory<NumberFormat>
Formats MonetaryAmount fields annotated with Spring's common NumberFormat annotation.
Since:
4.2
Author:
Juergen Hoeller
See Also:
  • Constructor Details

    • Jsr354NumberFormatAnnotationFormatterFactory

      public Jsr354NumberFormatAnnotationFormatterFactory()
  • Method Details

    • 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<javax.money.MonetaryAmount> 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<javax.money.MonetaryAmount> 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