diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/query/MongoRegexCreator.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/query/MongoRegexCreator.java index a0dad3aeb..d25462f02 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/query/MongoRegexCreator.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/query/MongoRegexCreator.java @@ -103,8 +103,13 @@ public enum MongoRegexCreator { } } + /** + * @param source + * @return + * @since 2.2.14 + */ public Object toCaseInsensitiveMatch(Object source) { - return source instanceof String ? new BsonRegularExpression(Pattern.quote((String)source), "i") : source; + return source instanceof String ? new BsonRegularExpression(Pattern.quote((String) source), "i") : source; } private String prepareAndEscapeStringBeforeApplyingLikeRegex(String source, MatchMode matcherType) { diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/MongoQueryCreator.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/MongoQueryCreator.java index ab8744792..dafb6fd65 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/MongoQueryCreator.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/MongoQueryCreator.java @@ -402,12 +402,12 @@ class MongoQueryCreator extends AbstractQueryCreator { } private java.util.List nextAsList(Iterator iterator, Part part) { - + Streamable streamable = asStreamable(iterator.next()); - if(!isSimpleComparisionPossible(part)) { + if (!isSimpleComparisionPossible(part)) { streamable = streamable.map(MongoRegexCreator.INSTANCE::toCaseInsensitiveMatch); } - + return streamable.toList(); }