Skip to content

Commit 9663a22

Browse files
committed
Adapt to API changes in PropertyValueConverters.
Closes #4040.
1 parent b134e19 commit 9663a22

File tree

3 files changed

+12
-9
lines changed

3 files changed

+12
-9
lines changed

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/MappingMongoConverter.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -936,9 +936,10 @@ protected void writePropertyInternal(@Nullable Object obj, DocumentAccessor acce
936936
TypeInformation<?> valueType = ClassTypeInformation.from(obj.getClass());
937937
TypeInformation<?> type = prop.getTypeInformation();
938938

939-
if (conversions.hasPropertyValueConverter(prop)) {
939+
if (conversions.hasValueConverter(prop)) {
940940
accessor.put(prop,
941-
conversions.getPropertyValueConverter(prop).write(obj, new MongoConversionContext(prop, this)));
941+
conversions.getPropertyValueConversions().getValueConverter(prop)
942+
.write(obj, new MongoConversionContext(prop, this)));
942943
return;
943944
}
944945

@@ -1272,9 +1273,10 @@ private void writeSimpleInternal(@Nullable Object value, Bson bson, String key)
12721273
private void writeSimpleInternal(@Nullable Object value, Bson bson, MongoPersistentProperty property) {
12731274
DocumentAccessor accessor = new DocumentAccessor(bson);
12741275

1275-
if (conversions.hasPropertyValueConverter(property)) {
1276+
if (conversions.hasValueConverter(property)) {
12761277
accessor.put(property,
1277-
conversions.getPropertyValueConverter(property).write(value, new MongoConversionContext(property, this)));
1278+
conversions.getPropertyValueConversions().getValueConverter(property)
1279+
.write(value, new MongoConversionContext(property, this)));
12781280
return;
12791281
}
12801282

@@ -1919,8 +1921,8 @@ public <T> T getPropertyValue(MongoPersistentProperty property) {
19191921
return null;
19201922
}
19211923

1922-
if (context.conversions.hasPropertyValueConverter(property)) {
1923-
return (T) context.conversions.getPropertyValueConverter(property).read(value,
1924+
if (context.conversions.hasValueConverter(property)) {
1925+
return (T) context.conversions.getPropertyValueConversions().getValueConverter(property).read(value,
19241926
new MongoConversionContext(property, context.sourceConverter));
19251927
}
19261928

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/QueryMapper.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -432,8 +432,9 @@ protected Object getMappedValue(Field documentField, Object sourceValue) {
432432

433433
Object value = applyFieldTargetTypeHintToValue(documentField, sourceValue);
434434

435-
if(documentField.getProperty() != null && converter.getCustomConversions().hasPropertyValueConverter(documentField.getProperty())) {
436-
return converter.getCustomConversions().getPropertyValueConverter(documentField.getProperty()).write(value, new MongoConversionContext(documentField.getProperty(), converter));
435+
if(documentField.getProperty() != null && converter.getCustomConversions().hasValueConverter(documentField.getProperty())) {
436+
return converter.getCustomConversions().getPropertyValueConversions().getValueConverter(documentField.getProperty())
437+
.write(value, new MongoConversionContext(documentField.getProperty(), converter));
437438
}
438439

439440
if (documentField.isIdField() && !documentField.isAssociation()) {

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/MongoCustomConversionsUnitTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ void propertyValueConverterRegistrationWorksAsExpected() {
6161
registry -> registry.registerConverter(Foo.class, "name", mock(PropertyValueConverter.class)));
6262
});
6363

64-
assertThat(conversions.hasPropertyValueConverter(persistentProperty)).isTrue();
64+
assertThat(conversions.getPropertyValueConversions().hasValueConverter(persistentProperty)).isTrue();
6565
}
6666

6767
static class DateToZonedDateTimeConverter implements Converter<Date, ZonedDateTime> {

0 commit comments

Comments
 (0)