DATAJPA-1344 - Adapt to SpEL extension API changes in Spring Data Commons.
Related tickets: DATACMNS-1260.
This commit is contained in:
@@ -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);
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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!");
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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!");
|
||||
|
||||
@@ -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!");
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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<QueryLookupStrategy> getQueryLookupStrategy(@Nullable Key key,
|
||||
EvaluationContextProvider evaluationContextProvider) {
|
||||
QueryMethodEvaluationContextProvider evaluationContextProvider) {
|
||||
return Optional.of(JpaQueryLookupStrategy.create(entityManager, key, extractor, evaluationContextProvider));
|
||||
}
|
||||
|
||||
|
||||
@@ -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<EvaluationContextExtension> 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<UserRepository, User, Integer> factory = new JpaRepositoryFactoryBean<UserRepository, User, Integer>(
|
||||
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 {}
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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());
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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() {
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
<!-- Adds dependency checks for setters annotated with @Required -->
|
||||
<bean class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor" />
|
||||
|
||||
<bean id="expressionEvaluationContextProvider" class="org.springframework.data.repository.query.ExtensionAwareEvaluationContextProvider" />
|
||||
<bean id="expressionEvaluationContextProvider" class="org.springframework.data.repository.query.ExtensionAwareQueryMethodEvaluationContextProvider" autowire="constructor" />
|
||||
|
||||
<bean class="org.springframework.data.jpa.repository.support.EntityManagerBeanDefinitionRegistrarPostProcessor" />
|
||||
|
||||
|
||||
Reference in New Issue
Block a user