Class MappingR2dbcConverter
java.lang.Object
org.springframework.data.relational.core.conversion.AbstractRelationalConverter
org.springframework.data.relational.core.conversion.MappingRelationalConverter
org.springframework.data.r2dbc.convert.MappingR2dbcConverter
- All Implemented Interfaces:
Aware, ApplicationContextAware, EnvironmentCapable, EntityReader<Object,Row>, EntityWriter<Object, OutboundRow>, R2dbcConverter, org.springframework.data.relational.core.conversion.RelationalConverter
public class MappingR2dbcConverter
extends org.springframework.data.relational.core.conversion.MappingRelationalConverter
implements R2dbcConverter
Converter for R2DBC.
- Author:
- Mark Paluch, Oliver Drotbohm, Jens Schauder
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.data.relational.core.conversion.MappingRelationalConverter
org.springframework.data.relational.core.conversion.MappingRelationalConverter.AggregatePathValueProvider, org.springframework.data.relational.core.conversion.MappingRelationalConverter.ConversionContext, org.springframework.data.relational.core.conversion.MappingRelationalConverter.DefaultConversionContext, org.springframework.data.relational.core.conversion.MappingRelationalConverter.DocumentValueProvider, org.springframework.data.relational.core.conversion.MappingRelationalConverter.ProjectingConversionContext, org.springframework.data.relational.core.conversion.MappingRelationalConverter.RelationalPropertyValueProvider -
Constructor Summary
ConstructorsConstructorDescriptionMappingR2dbcConverter(MappingContext<? extends org.springframework.data.relational.core.mapping.RelationalPersistentEntity<?>, ? extends org.springframework.data.relational.core.mapping.RelationalPersistentProperty> context) Creates a newMappingR2dbcConvertergivenMappingContext.MappingR2dbcConverter(MappingContext<? extends org.springframework.data.relational.core.mapping.RelationalPersistentEntity<?>, ? extends org.springframework.data.relational.core.mapping.RelationalPersistentProperty> context, CustomConversions conversions) -
Method Summary
Modifier and TypeMethodDescriptioncreateCollection(Collection<?> collection, org.springframework.data.relational.core.mapping.RelationalPersistentProperty property) Writes the givenCollectionusing the givenRelationalPersistentPropertyinformation.getArrayValue(org.springframework.data.relational.core.dialect.ArrayColumns arrayColumns, org.springframework.data.relational.core.mapping.RelationalPersistentProperty property, Object value) Convert avalueinto an array representation according toArrayColumns.Class<?> getTargetType(Class<?> valueType) Return the target type for a value considering registered converters.booleanisSimpleType(Class<?> type) Return whether thetypeis a simple type.<T> BiFunction<Row, RowMetadata, T> populateIdIfNecessary(T object) <R> R<R> Rread(Class<R> type, Row row, @Nullable RowMetadata metadata) Reads the given source into the given type.org.springframework.data.relational.domain.RowDocumenttoRowDocument(Class<?> type, Readable row, @Nullable Iterable<? extends ReadableMetadata> metadata) Create a flatRowDocumentfrom a singleRow or Stored Procedure output.voidwrite(Object source, OutboundRow sink) Methods inherited from class org.springframework.data.relational.core.conversion.MappingRelationalConverter
doReadProjection, getConversionContext, getEnvironment, getPotentiallyConvertedSimpleRead, getPotentiallyConvertedSimpleWrite, getPropertyAccessor, introspectProjection, newProjectingConversionContext, newValueProvider, project, read, read, readAggregate, readAggregate, readCollectionOrArray, readMap, readValue, setApplicationContext, unwrap, writeValueMethods inherited from class org.springframework.data.relational.core.conversion.AbstractRelationalConverter
getConversions, getConversionService, getEntityInstantiators, getMappingContextMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface R2dbcConverter
getConversionServiceMethods inherited from interface org.springframework.data.relational.core.conversion.RelationalConverter
getEntityInstantiators, getMappingContext, getPropertyAccessor, introspectProjection, project, read, readValue, writeValue
-
Constructor Details
-
MappingR2dbcConverter
public MappingR2dbcConverter(MappingContext<? extends org.springframework.data.relational.core.mapping.RelationalPersistentEntity<?>, ? extends org.springframework.data.relational.core.mapping.RelationalPersistentProperty> context) Creates a newMappingR2dbcConvertergivenMappingContext.- Parameters:
context- must not be null.
-
MappingR2dbcConverter
public MappingR2dbcConverter(MappingContext<? extends org.springframework.data.relational.core.mapping.RelationalPersistentEntity<?>, ? extends org.springframework.data.relational.core.mapping.RelationalPersistentProperty> context, CustomConversions conversions) - Parameters:
context- must not be null.
-
-
Method Details
-
read
-
read
Description copied from interface:R2dbcConverterReads the given source into the given type.- Specified by:
readin 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:
-
toRowDocument
public org.springframework.data.relational.domain.RowDocument toRowDocument(Class<?> type, Readable row, @Nullable Iterable<? extends ReadableMetadata> metadata) Description copied from interface:R2dbcConverterCreate a flatRowDocumentfrom a singleRow or Stored Procedure output.- Specified by:
toRowDocumentin interfaceR2dbcConverter- Parameters:
type- the underlying entity type.row- the row or stored procedure output to retrieve data from.metadata- readable metadata.- Returns:
- the
RowDocumentcontaining the data.
-
write
- Specified by:
writein interfaceEntityWriter<Object, OutboundRow>
-
createCollection
protected List<Object> createCollection(Collection<?> collection, org.springframework.data.relational.core.mapping.RelationalPersistentProperty property) Writes the givenCollectionusing the givenRelationalPersistentPropertyinformation.- Parameters:
collection- must not be null.property- must not be null.- Returns:
-
getArrayValue
public Object getArrayValue(org.springframework.data.relational.core.dialect.ArrayColumns arrayColumns, org.springframework.data.relational.core.mapping.RelationalPersistentProperty property, Object value) Description copied from interface:R2dbcConverterConvert avalueinto an array representation according toArrayColumns.- Specified by:
getArrayValuein interfaceR2dbcConverter- Parameters:
arrayColumns- dialect-specific array handling configuration.property-value-- Returns:
-
getTargetType
Description copied from interface:R2dbcConverterReturn the target type for a value considering registered converters.- Specified by:
getTargetTypein interfaceR2dbcConverter- Parameters:
valueType- must not be null.- Returns:
-
isSimpleType
Description copied from interface:R2dbcConverterReturn whether thetypeis a simple type. Simple types are database primitives or types with a custom mapping strategy.- Specified by:
isSimpleTypein 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:
populateIdIfNecessaryin interfaceR2dbcConverter- Parameters:
object- must not be null.- Returns:
-