2727import org .reactivestreams .Publisher ;
2828
2929import org .springframework .core .convert .converter .Converter ;
30- import org .springframework .core .env .StandardEnvironment ;
3130import org .springframework .data .expression .ReactiveValueEvaluationContextProvider ;
3231import org .springframework .data .expression .ValueEvaluationContext ;
3332import org .springframework .data .expression .ValueEvaluationContextProvider ;
3433import org .springframework .data .expression .ValueExpression ;
35- import org .springframework .data .expression .ValueExpressionParser ;
3634import org .springframework .data .mapping .model .EntityInstantiators ;
37- import org .springframework .data .mapping .model .SpELExpressionEvaluator ;
3835import org .springframework .data .mapping .model .ValueExpressionEvaluator ;
3936import org .springframework .data .mongodb .core .MongoOperations ;
4037import org .springframework .data .mongodb .core .ReactiveFindOperation .FindWithProjection ;
5653import org .springframework .data .mongodb .util .json .ParameterBindingContext ;
5754import org .springframework .data .mongodb .util .json .ParameterBindingDocumentCodec ;
5855import org .springframework .data .repository .query .ParameterAccessor ;
59- import org .springframework .data .repository .query .QueryMethodValueEvaluationContextAccessor ;
60- import org .springframework .data .repository .query .ReactiveQueryMethodEvaluationContextProvider ;
6156import org .springframework .data .repository .query .RepositoryQuery ;
6257import org .springframework .data .repository .query .ResultProcessor ;
6358import org .springframework .data .repository .query .ValueExpressionDelegate ;
6459import org .springframework .data .spel .ExpressionDependencies ;
65- import org .springframework .expression .ExpressionParser ;
66- import org .springframework .expression .spel .standard .SpelExpressionParser ;
6760import org .springframework .lang .Nullable ;
6861import org .springframework .util .Assert ;
6962import org .springframework .util .ObjectUtils ;
@@ -89,45 +82,6 @@ public abstract class AbstractReactiveMongoQuery implements RepositoryQuery {
8982 private final ValueExpressionDelegate valueExpressionDelegate ;
9083 private final ReactiveValueEvaluationContextProvider valueEvaluationContextProvider ;
9184
92- /**
93- * Creates a new {@link AbstractReactiveMongoQuery} from the given {@link MongoQueryMethod} and
94- * {@link MongoOperations}.
95- *
96- * @param method must not be {@literal null}.
97- * @param operations must not be {@literal null}.
98- * @param expressionParser must not be {@literal null}.
99- * @param evaluationContextProvider must not be {@literal null}.
100- * @deprecated use the constructor version with {@link ValueExpressionDelegate}
101- */
102- @ Deprecated (since = "4.4.0" )
103- public AbstractReactiveMongoQuery (ReactiveMongoQueryMethod method , ReactiveMongoOperations operations ,
104- ExpressionParser expressionParser , ReactiveQueryMethodEvaluationContextProvider evaluationContextProvider ) {
105-
106- Assert .notNull (method , "MongoQueryMethod must not be null" );
107- Assert .notNull (operations , "ReactiveMongoOperations must not be null" );
108- Assert .notNull (expressionParser , "SpelExpressionParser must not be null" );
109- Assert .notNull (evaluationContextProvider , "ReactiveEvaluationContextExtension must not be null" );
110-
111- this .method = method ;
112- this .operations = operations ;
113- this .instantiators = new EntityInstantiators ();
114- this .valueExpressionDelegate = new ValueExpressionDelegate (
115- new QueryMethodValueEvaluationContextAccessor (new StandardEnvironment (),
116- evaluationContextProvider .getEvaluationContextProvider ()),
117- ValueExpressionParser .create (() -> expressionParser ));
118-
119- MongoEntityMetadata <?> metadata = method .getEntityInformation ();
120- Class <?> type = metadata .getCollectionEntity ().getType ();
121-
122- this .findOperationWithProjection = operations .query (type );
123- this .updateOps = operations .update (type );
124- ValueEvaluationContextProvider valueContextProvider = valueExpressionDelegate
125- .createValueContextProvider (method .getParameters ());
126- Assert .isInstanceOf (ReactiveValueEvaluationContextProvider .class , valueContextProvider ,
127- "ValueEvaluationContextProvider must be reactive" );
128- this .valueEvaluationContextProvider = (ReactiveValueEvaluationContextProvider ) valueContextProvider ;
129- }
130-
13185 /**
13286 * Creates a new {@link AbstractReactiveMongoQuery} from the given {@link MongoQueryMethod} and
13387 * {@link MongoOperations}.
@@ -460,26 +414,6 @@ protected Mono<ParameterBindingDocumentCodec> getParameterBindingCodec() {
460414 return getCodecRegistry ().map (ParameterBindingDocumentCodec ::new );
461415 }
462416
463- /**
464- * Obtain a {@link Mono publisher} emitting the {@link SpELExpressionEvaluator} suitable to evaluate expressions
465- * backed by the given dependencies.
466- *
467- * @param dependencies must not be {@literal null}.
468- * @param accessor must not be {@literal null}.
469- * @return a {@link Mono} emitting the {@link SpELExpressionEvaluator} when ready.
470- * @since 3.4
471- * @deprecated since 4.4.0, use
472- * {@link #getValueExpressionEvaluatorLater(ExpressionDependencies, MongoParameterAccessor)} instead
473- */
474- @ Deprecated (since = "4.4.0" )
475- protected Mono <SpELExpressionEvaluator > getSpelEvaluatorFor (ExpressionDependencies dependencies ,
476- MongoParameterAccessor accessor ) {
477- return valueEvaluationContextProvider .getEvaluationContextLater (accessor .getValues (), dependencies )
478- .map (evaluationContext -> (SpELExpressionEvaluator ) new DefaultSpELExpressionEvaluator (
479- new SpelExpressionParser (), evaluationContext .getEvaluationContext ()))
480- .defaultIfEmpty (DefaultSpELExpressionEvaluator .unsupported ());
481- }
482-
483417 /**
484418 * Obtain a {@link ValueExpressionEvaluator} suitable to evaluate expressions.
485419 *
0 commit comments