Class MappingR2dbcConverter
java.lang.Object
org.springframework.data.relational.core.conversion.BasicRelationalConverter
org.springframework.data.r2dbc.convert.MappingR2dbcConverter
- All Implemented Interfaces:
EntityReader<Object,
,io.r2dbc.spi.Row> EntityWriter<Object,
,OutboundRow> R2dbcConverter
,RelationalConverter
Converter for R2DBC.
- Author:
- Mark Paluch, Oliver Drotbohm
-
Constructor Summary
ConstructorDescriptionMappingR2dbcConverter
(MappingContext<? extends RelationalPersistentEntity<?>, ? extends RelationalPersistentProperty> context) Creates a newMappingR2dbcConverter
givenMappingContext
.MappingR2dbcConverter
(MappingContext<? extends RelationalPersistentEntity<?>, ? extends RelationalPersistentProperty> context, CustomConversions conversions) -
Method Summary
Modifier and TypeMethodDescriptioncreateCollection
(Collection<?> collection, RelationalPersistentProperty property) Writes the givenCollection
using the givenRelationalPersistentProperty
information.getArrayValue
(ArrayColumns arrayColumns, RelationalPersistentProperty property, Object value) Convert avalue
into an array representation according toArrayColumns
.Class<?>
getTargetType
(Class<?> valueType) Return the target type for a value considering registered converters.boolean
isSimpleType
(Class<?> type) Return whether thetype
is a simple type.<T> BiFunction<io.r2dbc.spi.Row,
io.r2dbc.spi.RowMetadata, T> populateIdIfNecessary
(T object) <R> R
<R> R
Reads the given source into the given type.readValue
(Object value, TypeInformation<?> type) Read a relational value into the desireddestination type
.void
write
(Object source, OutboundRow sink) Methods inherited from class org.springframework.data.relational.core.conversion.BasicRelationalConverter
createInstance, getConversions, getConversionService, getEntityInstantiators, getMappingContext, getPropertyAccessor, writeValue
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.data.r2dbc.convert.R2dbcConverter
getConversionService, getMappingContext
Methods inherited from interface org.springframework.data.relational.core.conversion.RelationalConverter
createInstance, getEntityInstantiators, getPropertyAccessor, writeValue
-
Constructor Details
-
MappingR2dbcConverter
public MappingR2dbcConverter(MappingContext<? extends RelationalPersistentEntity<?>, ? extends RelationalPersistentProperty> context) Creates a newMappingR2dbcConverter
givenMappingContext
.- Parameters:
context
- must not be null.
-
MappingR2dbcConverter
public MappingR2dbcConverter(MappingContext<? extends RelationalPersistentEntity<?>, ? extends RelationalPersistentProperty> context, CustomConversions conversions) - Parameters:
context
- must not be null.
-
-
Method Details
-
read
- Specified by:
read
in interfaceEntityReader<Object,
io.r2dbc.spi.Row>
-
read
Description copied from interface:R2dbcConverter
Reads the given source into the given type.- Specified by:
read
in interfaceR2dbcConverter
- Parameters:
type
- they type to convert the given source to.row
- the source to create an object of the given type from.metadata
- theRowMetadata
.- Returns:
-
readValue
Description copied from interface:RelationalConverter
Read a relational value into the desireddestination type
.- Specified by:
readValue
in interfaceRelationalConverter
- Overrides:
readValue
in classBasicRelationalConverter
- Parameters:
value
- a value as it is returned by the driver accessing the persistence store. May benull
.type
-TypeInformation
into which the value is to be converted. Must not benull
.- Returns:
- The converted value. May be
null
.
-
write
- Specified by:
write
in interfaceEntityWriter<Object,
OutboundRow>
-
createCollection
protected List<Object> createCollection(Collection<?> collection, RelationalPersistentProperty property) Writes the givenCollection
using the givenRelationalPersistentProperty
information.- Parameters:
collection
- must not be null.property
- must not be null.- Returns:
-
getArrayValue
public Object getArrayValue(ArrayColumns arrayColumns, RelationalPersistentProperty property, Object value) Description copied from interface:R2dbcConverter
Convert avalue
into an array representation according toArrayColumns
.- Specified by:
getArrayValue
in interfaceR2dbcConverter
- Parameters:
arrayColumns
- dialect-specific array handling configuration.- Returns:
-
getTargetType
Description copied from interface:R2dbcConverter
Return the target type for a value considering registered converters.- Specified by:
getTargetType
in interfaceR2dbcConverter
- Parameters:
valueType
- must not be null.- Returns:
-
isSimpleType
Description copied from interface:R2dbcConverter
Return whether thetype
is a simple type. Simple types are database primitives or types with a custom mapping strategy.- Specified by:
isSimpleType
in interfaceR2dbcConverter
- Parameters:
type
- the type to inspect, must not be null.- Returns:
- true if the type is a simple one.
- See Also:
-
populateIdIfNecessary
- Specified by:
populateIdIfNecessary
in interfaceR2dbcConverter
- Parameters:
object
- must not be null.- Returns:
-