Skip to content

Commit c8e594f

Browse files
DATAREDIS-425 - Adapted to changes in Spring Data KeyValue APIs.
Default query initialization changed to new, so we can delete some code here. nice!
1 parent a669540 commit c8e594f

File tree

1 file changed

+2
-73
lines changed

1 file changed

+2
-73
lines changed

src/main/java/org/springframework/data/redis/repository/support/RedisRepositoryFactory.java

Lines changed: 2 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,15 @@
1616
package org.springframework.data.redis.repository.support;
1717

1818
import java.io.Serializable;
19-
import java.lang.reflect.Method;
2019

2120
import org.springframework.data.keyvalue.core.KeyValueOperations;
22-
import org.springframework.data.keyvalue.repository.query.KeyValuePartTreeQuery;
23-
import org.springframework.data.keyvalue.repository.query.KeyValuePartTreeQuery.QueryInitialization;
2421
import org.springframework.data.keyvalue.repository.support.KeyValueRepositoryFactory;
25-
import org.springframework.data.projection.ProjectionFactory;
2622
import org.springframework.data.redis.core.mapping.RedisPersistentEntity;
2723
import org.springframework.data.redis.repository.core.MappingRedisEntityInformation;
24+
import org.springframework.data.redis.repository.query.RedisQueryCreator;
2825
import org.springframework.data.repository.core.EntityInformation;
29-
import org.springframework.data.repository.core.NamedQueries;
30-
import org.springframework.data.repository.core.RepositoryMetadata;
3126
import org.springframework.data.repository.core.support.RepositoryFactorySupport;
32-
import org.springframework.data.repository.query.EvaluationContextProvider;
33-
import org.springframework.data.repository.query.QueryLookupStrategy;
34-
import org.springframework.data.repository.query.QueryLookupStrategy.Key;
35-
import org.springframework.data.repository.query.QueryMethod;
36-
import org.springframework.data.repository.query.RepositoryQuery;
3727
import org.springframework.data.repository.query.parser.AbstractQueryCreator;
38-
import org.springframework.util.Assert;
3928

4029
/**
4130
* {@link RepositoryFactorySupport} specific of handing Redis
@@ -48,14 +37,13 @@
4837
public class RedisRepositoryFactory extends KeyValueRepositoryFactory {
4938

5039
private final KeyValueOperations operations;
51-
private final Class<? extends AbstractQueryCreator<?, ?>> queryCreator;
5240

5341
/**
5442
* @param keyValueOperations
5543
* @see KeyValueRepositoryFactory#KeyValueRepositoryFactory(KeyValueOperations)
5644
*/
5745
public RedisRepositoryFactory(KeyValueOperations keyValueOperations) {
58-
this(keyValueOperations, DEFAULT_QUERY_CREATOR);
46+
this(keyValueOperations, RedisQueryCreator.class);
5947
}
6048

6149
/**
@@ -68,16 +56,6 @@ public RedisRepositoryFactory(KeyValueOperations keyValueOperations,
6856
super(keyValueOperations, queryCreator);
6957

7058
this.operations = keyValueOperations;
71-
this.queryCreator = queryCreator;
72-
}
73-
74-
/*
75-
* (non-Javadoc)
76-
* @see org.springframework.data.keyvalue.repository.support.KeyValueRepositoryFactory#getQueryLookupStrategy(org.springframework.data.repository.query.QueryLookupStrategy.Key, org.springframework.data.repository.query.EvaluationContextProvider)
77-
*/
78-
@Override
79-
protected QueryLookupStrategy getQueryLookupStrategy(Key key, EvaluationContextProvider evaluationContextProvider) {
80-
return new RedisQueryLookupStrategy(key, evaluationContextProvider, operations, queryCreator);
8159
}
8260

8361
/*
@@ -95,53 +73,4 @@ public <T, ID extends Serializable> EntityInformation<T, ID> getEntityInformatio
9573

9674
return entityInformation;
9775
}
98-
99-
/**
100-
* @author Christoph Strobl
101-
* @since 1.7
102-
*/
103-
private static class RedisQueryLookupStrategy implements QueryLookupStrategy {
104-
105-
private EvaluationContextProvider evaluationContextProvider;
106-
private KeyValueOperations keyValueOperations;
107-
108-
private Class<? extends AbstractQueryCreator<?, ?>> queryCreator;
109-
110-
/**
111-
* Creates a new {@link RedisQueryLookupStrategy} for the given {@link Key}, {@link EvaluationContextProvider},
112-
* {@link KeyValueOperations} and query creator type.
113-
* <p>
114-
*
115-
* @param key
116-
* @param evaluationContextProvider must not be {@literal null}.
117-
* @param keyValueOperations must not be {@literal null}.
118-
* @param queryCreator must not be {@literal null}.
119-
*/
120-
public RedisQueryLookupStrategy(Key key, EvaluationContextProvider evaluationContextProvider,
121-
KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) {
122-
123-
Assert.notNull(evaluationContextProvider, "EvaluationContextProvider must not be null!");
124-
Assert.notNull(keyValueOperations, "KeyValueOperations must not be null!");
125-
Assert.notNull(queryCreator, "Query creator type must not be null!");
126-
127-
this.evaluationContextProvider = evaluationContextProvider;
128-
this.keyValueOperations = keyValueOperations;
129-
this.queryCreator = queryCreator;
130-
}
131-
132-
/*
133-
* (non-Javadoc)
134-
* @see org.springframework.data.repository.query.QueryLookupStrategy#resolveQuery(java.lang.reflect.Method, org.springframework.data.repository.core.RepositoryMetadata, org.springframework.data.repository.core.NamedQueries)
135-
*/
136-
@Override
137-
public RepositoryQuery resolveQuery(Method method, RepositoryMetadata metadata, ProjectionFactory factory,
138-
NamedQueries namedQueries) {
139-
140-
QueryMethod queryMethod = new QueryMethod(method, metadata, factory);
141-
KeyValuePartTreeQuery partTreeQuery = new KeyValuePartTreeQuery(queryMethod, evaluationContextProvider,
142-
this.keyValueOperations, this.queryCreator);
143-
partTreeQuery.setQueryIntialization(QueryInitialization.NEW);
144-
return partTreeQuery;
145-
}
146-
}
14776
}

0 commit comments

Comments
 (0)