Skip to content

Commit 7d645ac

Browse files
committed
DATAES-200 Set persistent entity index and type in query when no indices/types are set.
1 parent 4350234 commit 7d645ac

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -335,6 +335,7 @@ public <T> FacetedPage<T> queryForPage(StringQuery query, Class<T> clazz, Search
335335
@Override
336336
public <T> CloseableIterator<T> stream(CriteriaQuery query, Class<T> clazz) {
337337
final long scrollTimeInMillis = TimeValue.timeValueMinutes(1).millis();
338+
setPersistentEntityIndexAndType(query, clazz);
338339
final String initScrollId = scan(query, scrollTimeInMillis, false);
339340
return doStream(initScrollId, scrollTimeInMillis, clazz, resultsMapper);
340341
}
@@ -347,6 +348,7 @@ public <T> CloseableIterator<T> stream(SearchQuery query, Class<T> clazz) {
347348
@Override
348349
public <T> CloseableIterator<T> stream(SearchQuery query, final Class<T> clazz, final SearchResultMapper mapper) {
349350
final long scrollTimeInMillis = TimeValue.timeValueMinutes(1).millis();
351+
setPersistentEntityIndexAndType(query, clazz);
350352
final String initScrollId = scan(query, scrollTimeInMillis, false);
351353
return doStream(initScrollId, scrollTimeInMillis, clazz, mapper);
352354
}
@@ -896,12 +898,7 @@ public Map getSetting(String indexName) {
896898
}
897899

898900
private <T> SearchRequestBuilder prepareSearch(Query query, Class<T> clazz) {
899-
if (query.getIndices().isEmpty()) {
900-
query.addIndices(retrieveIndexNameFromPersistentEntity(clazz));
901-
}
902-
if (query.getTypes().isEmpty()) {
903-
query.addTypes(retrieveTypeFromPersistentEntity(clazz));
904-
}
901+
setPersistentEntityIndexAndType(query, clazz);
905902
return prepareSearch(query);
906903
}
907904

@@ -1063,6 +1060,15 @@ private void setPersistentEntityId(Object entity, String id) {
10631060
}
10641061
}
10651062

1063+
private void setPersistentEntityIndexAndType(Query query, Class clazz) {
1064+
if (query.getIndices().isEmpty()) {
1065+
query.addIndices(retrieveIndexNameFromPersistentEntity(clazz));
1066+
}
1067+
if (query.getTypes().isEmpty()) {
1068+
query.addTypes(retrieveTypeFromPersistentEntity(clazz));
1069+
}
1070+
}
1071+
10661072
private String[] retrieveIndexNameFromPersistentEntity(Class clazz) {
10671073
if (clazz != null) {
10681074
return new String[]{getPersistentEntityFor(clazz).getIndexName()};

0 commit comments

Comments
 (0)