Interface ConversionService
- All Known Subinterfaces:
ConfigurableConversionService
- All Known Implementing Classes:
DefaultConversionService
,DefaultFormattingConversionService
,FormattingConversionService
,GenericConversionService
convert(Object, Class)
to perform a thread-safe type conversion using this system.- Since:
- 3.0
- Author:
- Keith Donald, Phillip Webb
-
Method Summary
Modifier and TypeMethodDescriptionboolean
canConvert
(Class<?> sourceType, Class<?> targetType) Returntrue
if objects ofsourceType
can be converted to thetargetType
.boolean
canConvert
(TypeDescriptor sourceType, TypeDescriptor targetType) Returntrue
if objects ofsourceType
can be converted to thetargetType
.<T> T
Convert the givensource
to the specifiedtargetType
.default Object
convert
(Object source, TypeDescriptor targetType) Convert the givensource
to the specifiedtargetType
.convert
(Object source, TypeDescriptor sourceType, TypeDescriptor targetType) Convert the givensource
to the specifiedtargetType
.
-
Method Details
-
canConvert
Returntrue
if objects ofsourceType
can be converted to thetargetType
.If this method returns
true
, it meansconvert(Object, Class)
is capable of converting an instance ofsourceType
totargetType
.Special note on collections, arrays, and maps types: For conversion between collection, array, and map types, this method will return
true
even though a convert invocation may still generate aConversionException
if the underlying elements are not convertible. Callers are expected to handle this exceptional case when working with collections and maps.- Parameters:
sourceType
- the source type to convert from (may benull
if source isnull
)targetType
- the target type to convert to (required)- Returns:
true
if a conversion can be performed,false
if not- Throws:
IllegalArgumentException
- iftargetType
isnull
-
canConvert
Returntrue
if objects ofsourceType
can be converted to thetargetType
. The TypeDescriptors provide additional context about the source and target locations where conversion would occur, often object fields or property locations.If this method returns
true
, it meansconvert(Object, TypeDescriptor, TypeDescriptor)
is capable of converting an instance ofsourceType
totargetType
.Special note on collections, arrays, and maps types: For conversion between collection, array, and map types, this method will return
true
even though a convert invocation may still generate aConversionException
if the underlying elements are not convertible. Callers are expected to handle this exceptional case when working with collections and maps.- Parameters:
sourceType
- context about the source type to convert from (may benull
if source isnull
)targetType
- context about the target type to convert to (required)- Returns:
true
if a conversion can be performed between the source and target types,false
if not- Throws:
IllegalArgumentException
- iftargetType
isnull
-
convert
Convert the givensource
to the specifiedtargetType
.- Parameters:
source
- the source object to convert (may benull
)targetType
- the target type to convert to (required)- Returns:
- the converted object, an instance of targetType
- Throws:
ConversionException
- if a conversion exception occurredIllegalArgumentException
- if targetType isnull
-
convert
Convert the givensource
to the specifiedtargetType
.Delegates to
convert(Object, TypeDescriptor, TypeDescriptor)
and encapsulates the construction of the source type descriptor usingTypeDescriptor.forObject(Object)
.- Parameters:
source
- the source objecttargetType
- the target type- Returns:
- the converted value
- Throws:
ConversionException
- if a conversion exception occurredIllegalArgumentException
- if targetType isnull
- Since:
- 6.1
-
convert
@Nullable Object convert(@Nullable Object source, @Nullable TypeDescriptor sourceType, TypeDescriptor targetType) Convert the givensource
to the specifiedtargetType
. The TypeDescriptors provide additional context about the source and target locations where conversion will occur, often object fields or property locations.- Parameters:
source
- the source object to convert (may benull
)sourceType
- context about the source type to convert from (may benull
if source isnull
)targetType
- context about the target type to convert to (required)- Returns:
- the converted object, an instance of
targetType
- Throws:
ConversionException
- if a conversion exception occurredIllegalArgumentException
- if targetType isnull
, orsourceType
isnull
but source is notnull
-