diff --git a/src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java b/src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java index 9aa669b48..d6780c61a 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java @@ -20,9 +20,9 @@ import static org.springframework.data.jpa.repository.query.QueryParameterSetter import javax.persistence.EntityManager; import javax.persistence.Query; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.ParameterAccessor; import org.springframework.data.repository.query.ParametersParameterAccessor; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.ResultProcessor; import org.springframework.data.repository.query.ReturnedType; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -39,7 +39,7 @@ abstract class AbstractStringBasedJpaQuery extends AbstractJpaQuery { private final DeclaredQuery query; private final DeclaredQuery countQuery; - private final EvaluationContextProvider evaluationContextProvider; + private final QueryMethodEvaluationContextProvider evaluationContextProvider; private final SpelExpressionParser parser; /** @@ -53,7 +53,7 @@ abstract class AbstractStringBasedJpaQuery extends AbstractJpaQuery { * @param parser must not be {@literal null}. */ public AbstractStringBasedJpaQuery(JpaQueryMethod method, EntityManager em, String queryString, - EvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { + QueryMethodEvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { super(method, em); diff --git a/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryFactory.java b/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryFactory.java index cbbd31cc2..f89227cfe 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryFactory.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryFactory.java @@ -20,8 +20,8 @@ import javax.persistence.EntityManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.data.jpa.repository.Query; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.QueryMethod; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.RepositoryQuery; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.lang.Nullable; @@ -50,7 +50,7 @@ enum JpaQueryFactory { */ @Nullable AbstractJpaQuery fromQueryAnnotation(JpaQueryMethod method, EntityManager em, - EvaluationContextProvider evaluationContextProvider) { + QueryMethodEvaluationContextProvider evaluationContextProvider) { LOG.debug("Looking up query for method {}", method.getName()); return fromMethodWithQueryString(method, em, method.getAnnotatedQuery(), evaluationContextProvider); @@ -67,7 +67,7 @@ enum JpaQueryFactory { */ @Nullable AbstractJpaQuery fromMethodWithQueryString(JpaQueryMethod method, EntityManager em, @Nullable String queryString, - EvaluationContextProvider evaluationContextProvider) { + QueryMethodEvaluationContextProvider evaluationContextProvider) { if (queryString == null) { return null; diff --git a/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategy.java b/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategy.java index 59258fb4b..c1e599867 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategy.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategy.java @@ -25,9 +25,9 @@ import org.springframework.data.jpa.repository.Query; import org.springframework.data.projection.ProjectionFactory; import org.springframework.data.repository.core.NamedQueries; import org.springframework.data.repository.core.RepositoryMetadata; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.QueryLookupStrategy; import org.springframework.data.repository.query.QueryLookupStrategy.Key; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.RepositoryQuery; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -113,7 +113,7 @@ public final class JpaQueryLookupStrategy { */ private static class DeclaredQueryLookupStrategy extends AbstractQueryLookupStrategy { - private final EvaluationContextProvider evaluationContextProvider; + private final QueryMethodEvaluationContextProvider evaluationContextProvider; /** * Creates a new {@link DeclaredQueryLookupStrategy}. @@ -123,7 +123,7 @@ public final class JpaQueryLookupStrategy { * @param evaluationContextProvider */ public DeclaredQueryLookupStrategy(EntityManager em, QueryExtractor extractor, - EvaluationContextProvider evaluationContextProvider) { + QueryMethodEvaluationContextProvider evaluationContextProvider) { super(em, extractor); this.evaluationContextProvider = evaluationContextProvider; @@ -220,7 +220,7 @@ public final class JpaQueryLookupStrategy { * @return */ public static QueryLookupStrategy create(EntityManager em, @Nullable Key key, QueryExtractor extractor, - EvaluationContextProvider evaluationContextProvider) { + QueryMethodEvaluationContextProvider evaluationContextProvider) { Assert.notNull(em, "EntityManager must not be null!"); Assert.notNull(extractor, "QueryExtractor must not be null!"); diff --git a/src/main/java/org/springframework/data/jpa/repository/query/NativeJpaQuery.java b/src/main/java/org/springframework/data/jpa/repository/query/NativeJpaQuery.java index 7dc6e4c3e..4a7474f46 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/NativeJpaQuery.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/NativeJpaQuery.java @@ -20,8 +20,8 @@ import javax.persistence.EntityManager; import javax.persistence.Query; import javax.persistence.Tuple; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.Parameters; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.RepositoryQuery; import org.springframework.data.repository.query.ReturnedType; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -46,7 +46,7 @@ final class NativeJpaQuery extends AbstractStringBasedJpaQuery { * @param evaluationContextProvider */ public NativeJpaQuery(JpaQueryMethod method, EntityManager em, String queryString, - EvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { + QueryMethodEvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { super(method, em, queryString, evaluationContextProvider, parser); diff --git a/src/main/java/org/springframework/data/jpa/repository/query/ParameterBinderFactory.java b/src/main/java/org/springframework/data/jpa/repository/query/ParameterBinderFactory.java index 7ce4aec7a..5699c22f2 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/ParameterBinderFactory.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/ParameterBinderFactory.java @@ -23,7 +23,7 @@ import java.util.Objects; import org.springframework.data.jpa.repository.query.JpaParameters.JpaParameter; import org.springframework.data.jpa.repository.query.ParameterMetadataProvider.ParameterMetadata; import org.springframework.data.jpa.repository.query.StringQuery.ParameterBinding; -import org.springframework.data.repository.query.EvaluationContextProvider; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.util.StreamUtils; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.util.Assert; @@ -88,7 +88,7 @@ class ParameterBinderFactory { * {@link javax.persistence.Query} while processing SpEL expressions where applicable. */ static ParameterBinder createQueryAwareBinder(JpaParameters parameters, DeclaredQuery query, - SpelExpressionParser parser, EvaluationContextProvider evaluationContextProvider) { + SpelExpressionParser parser, QueryMethodEvaluationContextProvider evaluationContextProvider) { Assert.notNull(parameters, "JpaParameters must not be null!"); Assert.notNull(query, "StringQuery must not be null!"); diff --git a/src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactory.java b/src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactory.java index 14ff20dab..a8df88b43 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactory.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactory.java @@ -25,9 +25,10 @@ import org.springframework.data.jpa.repository.query.JpaParameters.JpaParameter; import org.springframework.data.jpa.repository.query.ParameterMetadataProvider.ParameterMetadata; import org.springframework.data.jpa.repository.query.QueryParameterSetter.NamedOrIndexedQueryParameterSetter; import org.springframework.data.jpa.repository.query.StringQuery.ParameterBinding; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.Parameter; import org.springframework.data.repository.query.Parameters; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; +import org.springframework.data.spel.EvaluationContextProvider; import org.springframework.expression.EvaluationContext; import org.springframework.expression.Expression; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -88,7 +89,7 @@ abstract class QueryParameterSetterFactory { * {@link org.springframework.expression.spel.standard.SpelExpression}s. */ static QueryParameterSetterFactory parsing(SpelExpressionParser parser, - EvaluationContextProvider evaluationContextProvider, Parameters parameters) { + QueryMethodEvaluationContextProvider evaluationContextProvider, Parameters parameters) { Assert.notNull(parser, "SpelExpressionParser must not be null!"); Assert.notNull(evaluationContextProvider, "EvaluationContextProvider must not be null!"); @@ -126,7 +127,7 @@ abstract class QueryParameterSetterFactory { private static class ExpressionBasedQueryParameterSetterFactory extends QueryParameterSetterFactory { private final SpelExpressionParser parser; - private final EvaluationContextProvider evaluationContextProvider; + private final QueryMethodEvaluationContextProvider evaluationContextProvider; private final Parameters parameters; /** @@ -135,7 +136,7 @@ abstract class QueryParameterSetterFactory { * @param parameters must not be {@literal null}. */ ExpressionBasedQueryParameterSetterFactory(SpelExpressionParser parser, - EvaluationContextProvider evaluationContextProvider, Parameters parameters) { + QueryMethodEvaluationContextProvider evaluationContextProvider, Parameters parameters) { Assert.notNull(evaluationContextProvider, "EvaluationContextProvider must not be null!"); Assert.notNull(parser, "SpelExpressionParser must not be null!"); diff --git a/src/main/java/org/springframework/data/jpa/repository/query/SimpleJpaQuery.java b/src/main/java/org/springframework/data/jpa/repository/query/SimpleJpaQuery.java index c0c4f3951..186837c7f 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/SimpleJpaQuery.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/SimpleJpaQuery.java @@ -18,7 +18,7 @@ package org.springframework.data.jpa.repository.query; import javax.persistence.EntityManager; import javax.persistence.Query; -import org.springframework.data.repository.query.EvaluationContextProvider; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.RepositoryQuery; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -41,8 +41,8 @@ final class SimpleJpaQuery extends AbstractStringBasedJpaQuery { * @param evaluationContextProvider must not be {@literal null} * @param parser must not be {@literal null} */ - public SimpleJpaQuery(JpaQueryMethod method, EntityManager em, EvaluationContextProvider evaluationContextProvider, - SpelExpressionParser parser) { + public SimpleJpaQuery(JpaQueryMethod method, EntityManager em, + QueryMethodEvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { this(method, em, method.getRequiredAnnotatedQuery(), evaluationContextProvider, parser); } @@ -56,7 +56,7 @@ final class SimpleJpaQuery extends AbstractStringBasedJpaQuery { * @param parser must not be {@literal null} */ public SimpleJpaQuery(JpaQueryMethod method, EntityManager em, String queryString, - EvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { + QueryMethodEvaluationContextProvider evaluationContextProvider, SpelExpressionParser parser) { super(method, em, queryString, evaluationContextProvider, parser); diff --git a/src/main/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactory.java b/src/main/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactory.java index d270ae9d0..3d58c890d 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactory.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactory.java @@ -45,9 +45,9 @@ import org.springframework.data.repository.core.support.QueryCreationListener; import org.springframework.data.repository.core.support.RepositoryComposition; import org.springframework.data.repository.core.support.RepositoryFactorySupport; import org.springframework.data.repository.core.support.RepositoryFragment; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.QueryLookupStrategy; import org.springframework.data.repository.query.QueryLookupStrategy.Key; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.ReturnedType; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -173,7 +173,7 @@ public class JpaRepositoryFactory extends RepositoryFactorySupport { */ @Override protected Optional getQueryLookupStrategy(@Nullable Key key, - EvaluationContextProvider evaluationContextProvider) { + QueryMethodEvaluationContextProvider evaluationContextProvider) { return Optional.of(JpaQueryLookupStrategy.create(entityManager, key, extractor, evaluationContextProvider)); } diff --git a/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java b/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java index 8009a7004..16fdf9a90 100644 --- a/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java @@ -17,7 +17,6 @@ package org.springframework.data.jpa.repository; import java.io.IOException; import java.util.Collections; -import java.util.List; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; @@ -42,8 +41,9 @@ import org.springframework.data.jpa.repository.support.DefaultJpaContext; import org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean; import org.springframework.data.repository.core.NamedQueries; import org.springframework.data.repository.core.support.PropertiesBasedNamedQueries; -import org.springframework.data.repository.query.ExtensionAwareEvaluationContextProvider; -import org.springframework.data.repository.query.spi.EvaluationContextExtension; +import org.springframework.data.repository.query.ExtensionAwareQueryMethodEvaluationContextProvider; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; +import org.springframework.data.spel.spi.EvaluationContextExtension; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.support.AnnotationConfigContextLoader; @@ -62,7 +62,6 @@ public class JavaConfigUserRepositoryTests extends UserRepositoryTests { @PersistenceContext EntityManager entityManager; @Autowired ApplicationContext applicationContext; - @Autowired List extensions; @Bean public EvaluationContextExtension sampleEvaluationContextExtension() { @@ -72,9 +71,8 @@ public class JavaConfigUserRepositoryTests extends UserRepositoryTests { @Bean public UserRepository userRepository() throws Exception { - ExtensionAwareEvaluationContextProvider evaluationContextProvider = new ExtensionAwareEvaluationContextProvider( - extensions); - evaluationContextProvider.setApplicationContext(applicationContext); + QueryMethodEvaluationContextProvider evaluationContextProvider = new ExtensionAwareQueryMethodEvaluationContextProvider( + applicationContext); JpaRepositoryFactoryBean factory = new JpaRepositoryFactoryBean( UserRepository.class); @@ -110,7 +108,5 @@ public class JavaConfigUserRepositoryTests extends UserRepositoryTests { @Configuration @EnableJpaRepositories(basePackageClasses = UserRepository.class) @ImportResource("classpath:infrastructure.xml") - static class JpaRepositoryConfig { - - } + static class JpaRepositoryConfig {} } diff --git a/src/test/java/org/springframework/data/jpa/repository/config/AbstractAuditingViaJavaConfigRepositoriesTests.java b/src/test/java/org/springframework/data/jpa/repository/config/AbstractAuditingViaJavaConfigRepositoriesTests.java index 199a33e1c..1bbac324c 100644 --- a/src/test/java/org/springframework/data/jpa/repository/config/AbstractAuditingViaJavaConfigRepositoriesTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/config/AbstractAuditingViaJavaConfigRepositoriesTests.java @@ -43,7 +43,7 @@ import org.springframework.data.jpa.repository.sample.AuditableUserRepository; import org.springframework.data.jpa.repository.sample.SampleEvaluationContextExtension; import org.springframework.data.jpa.repository.sample.SampleEvaluationContextExtension.SampleSecurityContextHolder; import org.springframework.data.jpa.util.FixedDate; -import org.springframework.data.repository.query.spi.EvaluationContextExtension; +import org.springframework.data.spel.spi.EvaluationContextExtension; import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.transaction.annotation.Transactional; @@ -69,6 +69,7 @@ public abstract class AbstractAuditingViaJavaConfigRepositoriesTests { @Import(InfrastructureConfig.class) @EnableJpaRepositories(basePackageClasses = AuditableUserRepository.class) static class TestConfig { + @Bean EvaluationContextExtension sampleEvaluationContextExtension() { return new SampleEvaluationContextExtension(); diff --git a/src/test/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQueryIntegrationTests.java b/src/test/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQueryIntegrationTests.java index be2b00f47..a48bd6e3b 100644 --- a/src/test/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQueryIntegrationTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQueryIntegrationTests.java @@ -33,7 +33,7 @@ import org.springframework.data.jpa.provider.PersistenceProvider; import org.springframework.data.projection.SpelAwareProxyProjectionFactory; import org.springframework.data.repository.Repository; import org.springframework.data.repository.core.support.DefaultRepositoryMetadata; -import org.springframework.data.repository.query.DefaultEvaluationContextProvider; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -59,8 +59,8 @@ public class AbstractStringBasedJpaQueryIntegrationTests { when(mock.getMetamodel()).thenReturn(em.getMetamodel()); JpaQueryMethod method = getMethod("findRolesByEmailAddress", String.class); - AbstractStringBasedJpaQuery jpaQuery = new SimpleJpaQuery(method, mock, DefaultEvaluationContextProvider.INSTANCE, - new SpelExpressionParser()); + AbstractStringBasedJpaQuery jpaQuery = new SimpleJpaQuery(method, mock, + QueryMethodEvaluationContextProvider.DEFAULT, new SpelExpressionParser()); jpaQuery.createJpaQuery(method.getAnnotatedQuery(), method.getResultProcessor().getReturnedType()); diff --git a/src/test/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategyUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategyUnitTests.java index 4cee912ea..c86848890 100644 --- a/src/test/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategyUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/query/JpaQueryLookupStrategyUnitTests.java @@ -40,10 +40,9 @@ import org.springframework.data.repository.Repository; import org.springframework.data.repository.core.NamedQueries; import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.core.support.DefaultRepositoryMetadata; -import org.springframework.data.repository.query.DefaultEvaluationContextProvider; -import org.springframework.data.repository.query.EvaluationContextProvider; import org.springframework.data.repository.query.QueryLookupStrategy; import org.springframework.data.repository.query.QueryLookupStrategy.Key; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; /** * Unit tests for {@link JpaQueryLookupStrategy}. @@ -55,7 +54,8 @@ import org.springframework.data.repository.query.QueryLookupStrategy.Key; @RunWith(MockitoJUnitRunner.class) public class JpaQueryLookupStrategyUnitTests { - private static final EvaluationContextProvider EVALUATION_CONTEXT_PROVIDER = DefaultEvaluationContextProvider.INSTANCE; + private static final QueryMethodEvaluationContextProvider EVALUATION_CONTEXT_PROVIDER = QueryMethodEvaluationContextProvider.DEFAULT; + @Mock EntityManager em; @Mock EntityManagerFactory emf; @Mock QueryExtractor extractor; diff --git a/src/test/java/org/springframework/data/jpa/repository/query/SimpleJpaQueryUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/query/SimpleJpaQueryUnitTests.java index 4c4dc15d7..7e4c07fe4 100644 --- a/src/test/java/org/springframework/data/jpa/repository/query/SimpleJpaQueryUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/query/SimpleJpaQueryUnitTests.java @@ -16,9 +16,7 @@ package org.springframework.data.jpa.repository.query; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.anyInt; -import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.lang.reflect.Method; @@ -31,7 +29,6 @@ import javax.persistence.Tuple; import javax.persistence.TypedQuery; import javax.persistence.metamodel.Metamodel; -import org.assertj.core.api.Assertions; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -51,8 +48,7 @@ import org.springframework.data.jpa.repository.sample.UserRepository; import org.springframework.data.projection.ProjectionFactory; import org.springframework.data.projection.SpelAwareProxyProjectionFactory; import org.springframework.data.repository.core.RepositoryMetadata; -import org.springframework.data.repository.query.EvaluationContextProvider; -import org.springframework.data.repository.query.ExtensionAwareEvaluationContextProvider; +import org.springframework.data.repository.query.QueryMethodEvaluationContextProvider; import org.springframework.data.repository.query.RepositoryQuery; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -68,7 +64,7 @@ public class SimpleJpaQueryUnitTests { static final String USER_QUERY = "select u from User u"; static final SpelExpressionParser PARSER = new SpelExpressionParser(); - private static final EvaluationContextProvider EVALUATION_CONTEXT_PROVIDER = new ExtensionAwareEvaluationContextProvider(); + private static final QueryMethodEvaluationContextProvider EVALUATION_CONTEXT_PROVIDER = QueryMethodEvaluationContextProvider.DEFAULT; JpaQueryMethod method; diff --git a/src/test/java/org/springframework/data/jpa/repository/sample/SampleEvaluationContextExtension.java b/src/test/java/org/springframework/data/jpa/repository/sample/SampleEvaluationContextExtension.java index ea70ec2ff..b9dbf51fb 100644 --- a/src/test/java/org/springframework/data/jpa/repository/sample/SampleEvaluationContextExtension.java +++ b/src/test/java/org/springframework/data/jpa/repository/sample/SampleEvaluationContextExtension.java @@ -18,15 +18,14 @@ package org.springframework.data.jpa.repository.sample; import java.util.Collections; import java.util.Map; -import org.springframework.data.repository.query.spi.EvaluationContextExtension; -import org.springframework.data.repository.query.spi.EvaluationContextExtensionSupport; +import org.springframework.data.spel.spi.EvaluationContextExtension; /** * A sample implementation of a custom {@link EvaluationContextExtension}. * * @author Thomas Darimont */ -public class SampleEvaluationContextExtension extends EvaluationContextExtensionSupport { +public class SampleEvaluationContextExtension implements EvaluationContextExtension { @Override public String getExtensionId() { diff --git a/src/test/resources/application-context.xml b/src/test/resources/application-context.xml index 2584f2f05..f4278ddbc 100644 --- a/src/test/resources/application-context.xml +++ b/src/test/resources/application-context.xml @@ -42,7 +42,7 @@ - +