Class ReactiveWrapperConverters
java.lang.Object
org.springframework.data.repository.util.ReactiveWrapperConverters
Conversion support for reactive wrapper types. This class is a reactive extension to
QueryExecutionConverters
.
This class discovers reactive wrapper availability and their conversion support based on the class path. Reactive wrapper types might be supported/on the class path but conversion may require additional dependencies.
- Since:
- 2.0
- Author:
- Mark Paluch, Oliver Gierke, Christoph Strobl, Hantsy Bai
- See Also:
-
ReactiveWrappers
ReactiveAdapterRegistry
-
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
canConvert
(Class<?> sourceType, Class<?> targetType) Return true if objects ofsourceType
can be converted to thetargetType
.static <T> T
Maps elements of a reactive element stream to other elements.static boolean
Returns whether the given type is supported for wrapper type conversion.static <T> T
Casts or adopts the given wrapper type to a target wrapper type.static TypeInformation<?>
unwrapWrapperTypes
(TypeInformation<?> type) Recursively unwraps well known wrapper types from the givenTypeInformation
.
-
Method Details
-
supports
Returns whether the given type is supported for wrapper type conversion.NOTE: A reactive wrapper type might be supported in general by
ReactiveWrappers.supports(Class)
but not necessarily for conversion using this method.- Parameters:
type
- must not be null.- Returns:
- true if the
type
is a supported reactive wrapper type.
-
unwrapWrapperTypes
Recursively unwraps well known wrapper types from the givenTypeInformation
.- Parameters:
type
- must not be null.- Returns:
- will never be null.
- Since:
- 2.4
-
toWrapper
@Nullable public static <T> T toWrapper(Object reactiveObject, Class<? extends T> targetWrapperType) Casts or adopts the given wrapper type to a target wrapper type.- Parameters:
reactiveObject
- the stream, must not be null.targetWrapperType
- must not be null.- Returns:
-
map
Maps elements of a reactive element stream to other elements.- Parameters:
reactiveObject
- must not be null.converter
- must not be null.- Returns:
-
canConvert
Return true if objects ofsourceType
can be converted to thetargetType
.- Parameters:
sourceType
- must not be null.targetType
- must not be null.- Returns:
- true if a conversion can be performed.
-