Skip to content

Commit 625b260

Browse files
mp911dechristophstrobl
authored andcommitted
Adopt to deprecation removals in Commons.
Closes #4837
1 parent b5c7e14 commit 625b260

File tree

42 files changed

+101
-557
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+101
-557
lines changed

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

+1-2
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@
7171
import org.springframework.data.mapping.model.PersistentEntityParameterValueProvider;
7272
import org.springframework.data.mapping.model.PropertyValueProvider;
7373
import org.springframework.data.mapping.model.SpELContext;
74-
import org.springframework.data.mapping.model.SpELExpressionParameterValueProvider;
7574
import org.springframework.data.mapping.model.ValueExpressionEvaluator;
7675
import org.springframework.data.mapping.model.ValueExpressionParameterValueProvider;
7776
import org.springframework.data.mongodb.CodecRegistryProvider;
@@ -2059,7 +2058,7 @@ public <T> T getPropertyValue(MongoPersistentProperty property) {
20592058
}
20602059

20612060
/**
2062-
* Extension of {@link SpELExpressionParameterValueProvider} to recursively trigger value conversion on the raw
2061+
* Extension of {@link ValueExpressionParameterValueProvider} to recursively trigger value conversion on the raw
20632062
* resolved SpEL value.
20642063
*
20652064
* @author Oliver Gierke

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapping/UnwrappedMongoPersistentEntity.java

-6
Original file line numberDiff line numberDiff line change
@@ -98,13 +98,7 @@ public String getName() {
9898
return delegate.getName();
9999
}
100100

101-
@Override
102101
@Nullable
103-
@Deprecated
104-
public PreferredConstructor<T, MongoPersistentProperty> getPersistenceConstructor() {
105-
return delegate.getPersistenceConstructor();
106-
}
107-
108102
@Override
109103
public InstanceCreatorMetadata<MongoPersistentProperty> getInstanceCreatorMetadata() {
110104
return delegate.getInstanceCreatorMetadata();

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java

+5-56
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,8 @@
2121
import org.bson.Document;
2222
import org.bson.codecs.configuration.CodecRegistry;
2323

24-
import org.springframework.core.env.StandardEnvironment;
2524
import org.springframework.data.expression.ValueEvaluationContextProvider;
2625
import org.springframework.data.expression.ValueExpression;
27-
import org.springframework.data.expression.ValueExpressionParser;
28-
import org.springframework.data.mapping.model.SpELExpressionEvaluator;
2926
import org.springframework.data.mapping.model.ValueExpressionEvaluator;
3027
import org.springframework.data.mongodb.core.ExecutableFindOperation.ExecutableFind;
3128
import org.springframework.data.mongodb.core.ExecutableFindOperation.FindWithQuery;
@@ -47,16 +44,10 @@
4744
import org.springframework.data.mongodb.util.json.ParameterBindingContext;
4845
import org.springframework.data.mongodb.util.json.ParameterBindingDocumentCodec;
4946
import org.springframework.data.repository.query.ParameterAccessor;
50-
import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider;
51-
import org.springframework.data.repository.query.QueryMethodValueEvaluationContextAccessor;
5247
import org.springframework.data.repository.query.RepositoryQuery;
5348
import org.springframework.data.repository.query.ResultProcessor;
5449
import org.springframework.data.repository.query.ValueExpressionDelegate;
55-
import org.springframework.data.spel.ExpressionDependencies;
5650
import org.springframework.data.util.Lazy;
57-
import org.springframework.expression.EvaluationContext;
58-
import org.springframework.expression.ExpressionParser;
59-
import org.springframework.expression.spel.standard.SpelExpressionParser;
6051
import org.springframework.lang.Nullable;
6152
import org.springframework.util.Assert;
6253
import org.springframework.util.ObjectUtils;
@@ -84,36 +75,6 @@ public abstract class AbstractMongoQuery implements RepositoryQuery {
8475
private final ValueExpressionDelegate valueExpressionDelegate;
8576
private final ValueEvaluationContextProvider valueEvaluationContextProvider;
8677

87-
/**
88-
* Creates a new {@link AbstractMongoQuery} from the given {@link MongoQueryMethod} and {@link MongoOperations}.
89-
*
90-
* @param method must not be {@literal null}.
91-
* @param operations must not be {@literal null}.
92-
* @param expressionParser must not be {@literal null}.
93-
* @param evaluationContextProvider must not be {@literal null}.
94-
* @deprecated use the constructor version with {@link ValueExpressionDelegate}
95-
*/
96-
@Deprecated(since = "4.4.0")
97-
public AbstractMongoQuery(MongoQueryMethod method, MongoOperations operations, ExpressionParser expressionParser,
98-
QueryMethodEvaluationContextProvider evaluationContextProvider) {
99-
100-
Assert.notNull(operations, "MongoOperations must not be null");
101-
Assert.notNull(method, "MongoQueryMethod must not be null");
102-
Assert.notNull(expressionParser, "SpelExpressionParser must not be null");
103-
Assert.notNull(evaluationContextProvider, "QueryMethodEvaluationContextProvider must not be null");
104-
105-
this.method = method;
106-
this.operations = operations;
107-
108-
MongoEntityMetadata<?> metadata = method.getEntityInformation();
109-
Class<?> type = metadata.getCollectionEntity().getType();
110-
111-
this.executableFind = operations.query(type);
112-
this.executableUpdate = operations.update(type);
113-
this.valueExpressionDelegate = new ValueExpressionDelegate(new QueryMethodValueEvaluationContextAccessor(new StandardEnvironment(), evaluationContextProvider.getEvaluationContextProvider()), ValueExpressionParser.create(() -> expressionParser));
114-
this.valueEvaluationContextProvider = valueExpressionDelegate.createValueContextProvider(method.getParameters());
115-
}
116-
11778
/**
11879
* Creates a new {@link AbstractMongoQuery} from the given {@link MongoQueryMethod} and {@link MongoOperations}.
11980
*
@@ -185,7 +146,8 @@ protected Object doExecute(MongoQueryMethod method, ResultProcessor processor, C
185146
}
186147

187148
/**
188-
* If present apply the {@link com.mongodb.ReadPreference} from the {@link org.springframework.data.mongodb.repository.ReadPreference} annotation.
149+
* If present apply the {@link com.mongodb.ReadPreference} from the
150+
* {@link org.springframework.data.mongodb.repository.ReadPreference} annotation.
189151
*
190152
* @param query must not be {@literal null}.
191153
* @return never {@literal null}.
@@ -396,20 +358,6 @@ protected ParameterBindingDocumentCodec getParameterBindingCodec() {
396358
return codec.get();
397359
}
398360

399-
/**
400-
* Obtain a the {@link EvaluationContext} suitable to evaluate expressions backed by the given dependencies.
401-
*
402-
* @param dependencies must not be {@literal null}.
403-
* @param accessor must not be {@literal null}.
404-
* @return the {@link SpELExpressionEvaluator}.
405-
* @since 2.4
406-
*/
407-
protected SpELExpressionEvaluator getSpELExpressionEvaluatorFor(ExpressionDependencies dependencies,
408-
ConvertingParameterAccessor accessor) {
409-
410-
return new DefaultSpELExpressionEvaluator(new SpelExpressionParser(), valueEvaluationContextProvider.getEvaluationContext(accessor.getValues(), dependencies).getEvaluationContext());
411-
}
412-
413361
/**
414362
* Obtain a {@link ValueExpressionEvaluator} suitable to evaluate expressions.
415363
*
@@ -418,8 +366,9 @@ protected SpELExpressionEvaluator getSpELExpressionEvaluatorFor(ExpressionDepend
418366
* @since 4.4.0
419367
*/
420368
protected ValueExpressionEvaluator getExpressionEvaluatorFor(MongoParameterAccessor accessor) {
421-
return new ValueExpressionDelegateValueExpressionEvaluator(valueExpressionDelegate, (ValueExpression expression) ->
422-
valueEvaluationContextProvider.getEvaluationContext(accessor.getValues(), expression.getExpressionDependencies()));
369+
return new ValueExpressionDelegateValueExpressionEvaluator(valueExpressionDelegate,
370+
(ValueExpression expression) -> valueEvaluationContextProvider.getEvaluationContext(accessor.getValues(),
371+
expression.getExpressionDependencies()));
423372
}
424373

425374
/**

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractReactiveMongoQuery.java

-66
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,11 @@
2727
import org.reactivestreams.Publisher;
2828

2929
import org.springframework.core.convert.converter.Converter;
30-
import org.springframework.core.env.StandardEnvironment;
3130
import org.springframework.data.expression.ReactiveValueEvaluationContextProvider;
3231
import org.springframework.data.expression.ValueEvaluationContext;
3332
import org.springframework.data.expression.ValueEvaluationContextProvider;
3433
import org.springframework.data.expression.ValueExpression;
35-
import org.springframework.data.expression.ValueExpressionParser;
3634
import org.springframework.data.mapping.model.EntityInstantiators;
37-
import org.springframework.data.mapping.model.SpELExpressionEvaluator;
3835
import org.springframework.data.mapping.model.ValueExpressionEvaluator;
3936
import org.springframework.data.mongodb.core.MongoOperations;
4037
import org.springframework.data.mongodb.core.ReactiveFindOperation.FindWithProjection;
@@ -56,14 +53,10 @@
5653
import org.springframework.data.mongodb.util.json.ParameterBindingContext;
5754
import org.springframework.data.mongodb.util.json.ParameterBindingDocumentCodec;
5855
import org.springframework.data.repository.query.ParameterAccessor;
59-
import org.springframework.data.repository.query.QueryMethodValueEvaluationContextAccessor;
60-
import org.springframework.data.repository.query.ReactiveQueryMethodEvaluationContextProvider;
6156
import org.springframework.data.repository.query.RepositoryQuery;
6257
import org.springframework.data.repository.query.ResultProcessor;
6358
import org.springframework.data.repository.query.ValueExpressionDelegate;
6459
import org.springframework.data.spel.ExpressionDependencies;
65-
import org.springframework.expression.ExpressionParser;
66-
import org.springframework.expression.spel.standard.SpelExpressionParser;
6760
import org.springframework.lang.Nullable;
6861
import org.springframework.util.Assert;
6962
import 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
*

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/DefaultSpELExpressionEvaluator.java

-69
This file was deleted.

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/PartTreeMongoQuery.java

-25
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818
import org.bson.Document;
1919
import org.bson.json.JsonParseException;
2020

21-
import org.springframework.core.env.StandardEnvironment;
22-
import org.springframework.data.expression.ValueExpressionParser;
2321
import org.springframework.data.mapping.context.MappingContext;
2422
import org.springframework.data.mongodb.core.MongoOperations;
2523
import org.springframework.data.mongodb.core.MongoTemplate;
@@ -29,14 +27,11 @@
2927
import org.springframework.data.mongodb.core.query.Query;
3028
import org.springframework.data.mongodb.core.query.TextCriteria;
3129
import org.springframework.data.repository.query.QueryMethod;
32-
import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider;
33-
import org.springframework.data.repository.query.QueryMethodValueEvaluationContextAccessor;
3430
import org.springframework.data.repository.query.RepositoryQuery;
3531
import org.springframework.data.repository.query.ResultProcessor;
3632
import org.springframework.data.repository.query.ReturnedType;
3733
import org.springframework.data.repository.query.ValueExpressionDelegate;
3834
import org.springframework.data.repository.query.parser.PartTree;
39-
import org.springframework.expression.ExpressionParser;
4035
import org.springframework.util.StringUtils;
4136

4237
/**
@@ -54,26 +49,6 @@ public class PartTreeMongoQuery extends AbstractMongoQuery {
5449
private final MappingContext<?, MongoPersistentProperty> context;
5550
private final ResultProcessor processor;
5651

57-
/**
58-
* Creates a new {@link PartTreeMongoQuery} from the given {@link QueryMethod} and {@link MongoTemplate}.
59-
*
60-
* @param method must not be {@literal null}.
61-
* @param mongoOperations must not be {@literal null}.
62-
* @param expressionParser must not be {@literal null}.
63-
* @param evaluationContextProvider must not be {@literal null}.
64-
* @deprecated since 4.4, use the constructors accepting {@link QueryMethodValueEvaluationContextAccessor} instead.
65-
*/
66-
@Deprecated(since = "4.4.0")
67-
public PartTreeMongoQuery(MongoQueryMethod method, MongoOperations mongoOperations, ExpressionParser expressionParser,
68-
QueryMethodEvaluationContextProvider evaluationContextProvider) {
69-
super(method, mongoOperations, expressionParser, evaluationContextProvider);
70-
71-
this.processor = method.getResultProcessor();
72-
this.tree = new PartTree(method.getName(), processor.getReturnedType().getDomainType());
73-
this.isGeoNearQuery = method.isGeoNearQuery();
74-
this.context = mongoOperations.getConverter().getMappingContext();
75-
}
76-
7752
/**
7853
* Creates a new {@link PartTreeMongoQuery} from the given {@link QueryMethod} and {@link MongoTemplate}.
7954
*

0 commit comments

Comments
 (0)