## org.springframework.format.datetime.joda
Class JodaDateTimeFormatAnnotationFormatterFactory

    java.lang.Object
      org.springframework.format.datetime.joda.JodaDateTimeFormatAnnotationFormatterFactory

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

    public class JodaDateTimeFormatAnnotationFormatterFactory

extends Object
implements AnnotationFormatterFactory<DateTimeFormat>, EmbeddedValueResolverAware

Formats fields annotated with the `DateTimeFormat` annotation.

Since:
  3.0
Author:
  Keith Donald, Juergen Hoeller
See Also:
  `DateTimeFormat`

Constructor Summary
`JodaDateTimeFormatAnnotationFormatterFactory()`

Method Summary
`Set<Class<?>>` `getFieldTypes()` The types of fields that may be annotated with the <A> annotation.
`Parser<org.joda.time.DateTime>` `getParser(DateTimeFormat annotation, Class<?> fieldType)` Get the Parser to parse a submitted value for a field of `fieldType` annotated with `annotation`.
`Printer<?>` `getPrinter(DateTimeFormat 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

### JodaDateTimeFormatAnnotationFormatterFactory

    public JodaDateTimeFormatAnnotationFormatterFactory()

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

### 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<?> getPrinter(DateTimeFormat 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<DateTimeFormat>`
  Parameters:
    `annotation` - the annotation instance
    `fieldType` - the type of field that was annotated
  Returns:
    the printer

### getParser

    public Parser<org.joda.time.DateTime> getParser(DateTimeFormat 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<DateTimeFormat>`
  Parameters:
    `annotation` - the annotation instance
    `fieldType` - the type of field that was annotated
  Returns:
    the parser