From 655dbc9783d3b4db166943a97088cff5680556e2 Mon Sep 17 00:00:00 2001 From: Christoph Strobl Date: Tue, 23 Aug 2022 10:39:53 +0200 Subject: [PATCH] Favor relaxed type mapping over strict one for aggregateStream. Align aggregation context usage of aggregate and aggregate stream methods. Closes #4132 Original pull request: #4147. --- .../springframework/data/mongodb/core/MongoTemplate.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoTemplate.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoTemplate.java index debe4b996..81522287a 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoTemplate.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoTemplate.java @@ -68,7 +68,6 @@ import org.springframework.data.mongodb.core.aggregation.Aggregation; import org.springframework.data.mongodb.core.aggregation.AggregationOperationContext; import org.springframework.data.mongodb.core.aggregation.AggregationOptions; import org.springframework.data.mongodb.core.aggregation.AggregationResults; -import org.springframework.data.mongodb.core.aggregation.TypeBasedAggregationOperationContext; import org.springframework.data.mongodb.core.aggregation.TypedAggregation; import org.springframework.data.mongodb.core.convert.DbRefResolver; import org.springframework.data.mongodb.core.convert.DefaultDbRefResolver; @@ -1900,10 +1899,7 @@ public class MongoTemplate implements MongoOperations, ApplicationContextAware, Class outputType) { Assert.notNull(aggregation, "Aggregation pipeline must not be null"); - - AggregationOperationContext context = new TypeBasedAggregationOperationContext(aggregation.getInputType(), - mappingContext, queryMapper); - return aggregateStream(aggregation, inputCollectionName, outputType, context); + return aggregateStream(aggregation, inputCollectionName, outputType, null); } @Override @@ -1915,7 +1911,7 @@ public class MongoTemplate implements MongoOperations, ApplicationContextAware, public Stream aggregateStream(Aggregation aggregation, Class inputType, Class outputType) { return aggregateStream(aggregation, getCollectionName(inputType), outputType, - new TypeBasedAggregationOperationContext(inputType, mappingContext, queryMapper)); + queryOperations.createAggregation(aggregation, inputType).getAggregationOperationContext()); } @Override