19
19
import static org .elasticsearch .index .VersionType .*;
20
20
import static org .elasticsearch .index .query .QueryBuilders .*;
21
21
import static org .springframework .data .elasticsearch .core .MappingBuilder .*;
22
- import static org .springframework .util .CollectionUtils .isEmpty ;
22
+ import static org .springframework .util .CollectionUtils .* ;
23
23
24
24
import java .io .BufferedReader ;
25
25
import java .io .IOException ;
51
51
import org .elasticsearch .action .index .IndexRequestBuilder ;
52
52
import org .elasticsearch .action .search .SearchRequestBuilder ;
53
53
import org .elasticsearch .action .search .SearchResponse ;
54
+ import org .elasticsearch .action .search .SearchScrollRequestBuilder ;
54
55
import org .elasticsearch .action .update .UpdateRequestBuilder ;
55
56
import org .elasticsearch .action .update .UpdateResponse ;
56
57
import org .elasticsearch .client .Client ;
131
132
*/
132
133
public class ElasticsearchTemplate implements ElasticsearchOperations , ApplicationContextAware {
133
134
134
- private static final Logger logger = LoggerFactory .getLogger (ElasticsearchTemplate .class );
135
+ private static final Logger QUERY_LOGGER = LoggerFactory .getLogger ("org.springframework.data.elasticsearch.core.QUERY" );
136
+ private static final Logger LOGGER = LoggerFactory .getLogger (ElasticsearchTemplate .class );
135
137
private static final String FIELD_SCORE = "_score" ;
136
138
137
139
private Client client ;
@@ -203,7 +205,7 @@ public <T> boolean putMapping(Class<T> clazz) {
203
205
return putMapping (clazz , mappings );
204
206
}
205
207
} else {
206
- logger .info ("mappingPath in @Mapping has to be defined. Building mappings using @Field" );
208
+ LOGGER .info ("mappingPath in @Mapping has to be defined. Building mappings using @Field" );
207
209
}
208
210
}
209
211
ElasticsearchPersistentEntity <T > persistentEntity = getPersistentEntityFor (clazz );
@@ -334,7 +336,7 @@ public <T> List<String> queryForIds(SearchQuery query) {
334
336
if (query .getFilter () != null ) {
335
337
request .setPostFilter (query .getFilter ());
336
338
}
337
- SearchResponse response = getSearchResponse (request . execute () );
339
+ SearchResponse response = getSearchResponse (request );
338
340
return extractIds (response );
339
341
}
340
342
@@ -357,11 +359,8 @@ public <T> Page<T> queryForPage(CriteriaQuery criteriaQuery, Class<T> clazz) {
357
359
358
360
if (elasticsearchFilter != null )
359
361
searchRequestBuilder .setPostFilter (elasticsearchFilter );
360
- if (logger .isDebugEnabled ()) {
361
- logger .debug ("doSearch query:\n " + searchRequestBuilder .toString ());
362
- }
363
362
364
- SearchResponse response = getSearchResponse (searchRequestBuilder . execute () );
363
+ SearchResponse response = getSearchResponse (searchRequestBuilder );
365
364
return resultsMapper .mapResults (response , clazz , criteriaQuery .getPageable ());
366
365
}
367
366
@@ -372,7 +371,7 @@ public <T> Page<T> queryForPage(StringQuery query, Class<T> clazz) {
372
371
373
372
@ Override
374
373
public <T > Page <T > queryForPage (StringQuery query , Class <T > clazz , SearchResultMapper mapper ) {
375
- SearchResponse response = getSearchResponse (prepareSearch (query , clazz ).setQuery (wrapperQuery (query .getSource ())). execute () );
374
+ SearchResponse response = getSearchResponse (prepareSearch (query , clazz ).setQuery (wrapperQuery (query .getSource ())));
376
375
return mapper .mapResults (response , clazz , query .getPageable ());
377
376
}
378
377
@@ -788,7 +787,7 @@ private SearchResponse doScroll(SearchRequestBuilder requestBuilder, CriteriaQue
788
787
requestBuilder .setPostFilter (elasticsearchFilter );
789
788
}
790
789
791
- return getSearchResponse (requestBuilder . execute () );
790
+ return getSearchResponse (requestBuilder );
792
791
}
793
792
794
793
private SearchResponse doScroll (SearchRequestBuilder requestBuilder , SearchQuery searchQuery ) {
@@ -800,7 +799,7 @@ private SearchResponse doScroll(SearchRequestBuilder requestBuilder, SearchQuery
800
799
requestBuilder .setPostFilter (searchQuery .getFilter ());
801
800
}
802
801
803
- return getSearchResponse (requestBuilder .setQuery (searchQuery .getQuery ()). execute () );
802
+ return getSearchResponse (requestBuilder .setQuery (searchQuery .getQuery ()));
804
803
}
805
804
806
805
public <T > Page <T > startScroll (long scrollTimeInMillis , SearchQuery searchQuery , Class <T > clazz ) {
@@ -926,7 +925,16 @@ private SearchResponse doSearch(SearchRequestBuilder searchRequest, SearchQuery
926
925
searchRequest .addAggregation (aggregatedFacet .getFacet ());
927
926
}
928
927
}
929
- return getSearchResponse (searchRequest .setQuery (searchQuery .getQuery ()).execute ());
928
+ return getSearchResponse (searchRequest .setQuery (searchQuery .getQuery ()));
929
+ }
930
+
931
+ private SearchResponse getSearchResponse (SearchRequestBuilder requestBuilder ) {
932
+
933
+ if (QUERY_LOGGER .isDebugEnabled ()) {
934
+ QUERY_LOGGER .debug (requestBuilder .toString ());
935
+ }
936
+
937
+ return getSearchResponse (requestBuilder .execute ());
930
938
}
931
939
932
940
private SearchResponse getSearchResponse (ListenableActionFuture <SearchResponse > response ) {
@@ -946,7 +954,7 @@ private <T> boolean createIndexWithSettings(Class<T> clazz) {
946
954
return createIndex (getPersistentEntityFor (clazz ).getIndexName (), settings );
947
955
}
948
956
} else {
949
- logger .info ("settingPath in @Setting has to be defined. Using default instead." );
957
+ LOGGER .info ("settingPath in @Setting has to be defined. Using default instead." );
950
958
}
951
959
}
952
960
return createIndex (getPersistentEntityFor (clazz ).getIndexName (), getDefaultSettings (getPersistentEntityFor (clazz )));
@@ -1239,14 +1247,14 @@ public static String readFileFromClasspath(String url) {
1239
1247
stringBuilder .append (line ).append (lineSeparator );
1240
1248
}
1241
1249
} catch (Exception e ) {
1242
- logger .debug (String .format ("Failed to load file from url: %s: %s" , url , e .getMessage ()));
1250
+ LOGGER .debug (String .format ("Failed to load file from url: %s: %s" , url , e .getMessage ()));
1243
1251
return null ;
1244
1252
} finally {
1245
1253
if (bufferedReader != null )
1246
1254
try {
1247
1255
bufferedReader .close ();
1248
1256
} catch (IOException e ) {
1249
- logger .debug (String .format ("Unable to close buffered reader.. %s" , e .getMessage ()));
1257
+ LOGGER .debug (String .format ("Unable to close buffered reader.. %s" , e .getMessage ()));
1250
1258
}
1251
1259
}
1252
1260
0 commit comments