From f6db089f6f84b77651a3e21b841ae97bb075c242 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Wed, 9 Jun 2021 12:06:43 +0200 Subject: [PATCH] Polishing. Add nullability annotation. Return early on null value conversion. See #3633 Original pull request: #3643. --- .../data/mongodb/core/convert/QueryMapper.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/QueryMapper.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/QueryMapper.java index 586489718..7f2645bc3 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/QueryMapper.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/QueryMapper.java @@ -444,6 +444,10 @@ public class QueryMapper { } } + if (value == null) { + return null; + } + if (isNestedKeyword(value)) { return getMappedKeyword(new Keyword((Bson) value), documentField.getPropertyEntity()); } @@ -706,7 +710,7 @@ public class QueryMapper { * @param candidate * @return */ - protected boolean isNestedKeyword(Object candidate) { + protected boolean isNestedKeyword(@Nullable Object candidate) { if (!(candidate instanceof Document)) { return false; @@ -754,6 +758,7 @@ public class QueryMapper { * @param value the actual value. Can be {@literal null}. * @return the potentially converted target value. */ + @Nullable private Object applyFieldTargetTypeHintToValue(Field documentField, @Nullable Object value) { if (value == null || documentField.getProperty() == null || !documentField.getProperty().hasExplicitWriteTarget()) {