public interface GenericConverter
This is the most flexible of the Converter SPI interfaces, but also the most complex.
It is flexible in that a GenericConverter may support converting between multiple source/target
type pairs (see
getConvertibleTypes()). In addition, GenericConverter implementations
have access to source/target
field context during the type conversion
process. This allows for resolving source and target field metadata such as annotations and
generics information, which can be used to influence the conversion logic.
Implementations may additionally implement
|Modifier and Type||Interface and Description|
Holder for a source-to-target class pair.
|Modifier and Type||Method and Description|
Convert the source object to the targetType described by the
Return the source and target types that this converter can convert between.
@Nullable Set<GenericConverter.ConvertiblePair> getConvertibleTypes()
Each entry is a convertible source-to-target type pair.
conditional converters this method may return
null to indicate all source-to-target pairs should be considered.
@Nullable Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType)
source- the source object to convert (may be
sourceType- the type descriptor of the field we are converting from
targetType- the type descriptor of the field we are converting to