Skip to content

Commit 9531f95

Browse files
committed
Map the request to the correct class for mapping elasticsearch queries.
Signed-off-by: Youssef Aouichaoui <[email protected]>
1 parent 90c5b4e commit 9531f95

File tree

2 files changed

+18
-13
lines changed

2 files changed

+18
-13
lines changed

src/main/java/org/springframework/data/elasticsearch/client/elc/ElasticsearchTemplate.java

+1-13
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
import java.util.Iterator;
3838
import java.util.List;
3939
import java.util.Map;
40-
import java.util.Objects;
4140
import java.util.stream.Collectors;
4241

4342
import org.apache.commons.logging.Log;
@@ -672,18 +671,7 @@ public SqlResponse search(SqlQuery query) {
672671
"The Elasticsearch Java Client only supports JSON format.");
673672

674673
try {
675-
QueryResponse response = sqlClient.query(sqb -> {
676-
sqb.query(query.getQuery()).catalog(query.getCatalog()).columnar(query.getColumnar()).cursor(query.getCursor())
677-
.fetchSize(query.getFetchSize()).fieldMultiValueLeniency(query.getFieldMultiValueLeniency())
678-
.indexUsingFrozen(query.getIndexIncludeFrozen()).keepAlive(time(query.getKeepAlive()))
679-
.keepOnCompletion(query.getKeepOnCompletion()).pageTimeout(time(query.getPageTimeout()))
680-
.requestTimeout(time(query.getRequestTimeout()))
681-
.waitForCompletionTimeout(time(query.getWaitForCompletionTimeout()))
682-
.filter(requestConverter.getQuery(query.getFilter(), null))
683-
.timeZone(Objects.toString(query.getTimeZone(), null)).format(Objects.toString(query.getFormat(), null));
684-
685-
return sqb;
686-
});
674+
QueryResponse response = sqlClient.query(requestConverter.sqlQueryRequest(query));
687675

688676
return responseConverter.sqlResponse(response);
689677
} catch (IOException e) {

src/main/java/org/springframework/data/elasticsearch/client/elc/RequestConverter.java

+17
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@
6868
import java.util.HashMap;
6969
import java.util.List;
7070
import java.util.Map;
71+
import java.util.Objects;
7172
import java.util.Set;
7273
import java.util.function.Function;
7374
import java.util.stream.Collectors;
@@ -530,6 +531,22 @@ public co.elastic.clients.elasticsearch.indices.GetTemplateRequest indicesGetTem
530531
.of(gtr -> gtr.name(getTemplateRequest.getTemplateName()).flatSettings(true));
531532
}
532533

534+
public co.elastic.clients.elasticsearch.sql.QueryRequest sqlQueryRequest(SqlQuery query) {
535+
Assert.notNull(query, "Query must not be null.");
536+
537+
return co.elastic.clients.elasticsearch.sql.QueryRequest.of(sqb -> {
538+
sqb.query(query.getQuery()).catalog(query.getCatalog()).columnar(query.getColumnar()).cursor(query.getCursor())
539+
.fetchSize(query.getFetchSize()).fieldMultiValueLeniency(query.getFieldMultiValueLeniency())
540+
.indexUsingFrozen(query.getIndexIncludeFrozen()).keepAlive(time(query.getKeepAlive()))
541+
.keepOnCompletion(query.getKeepOnCompletion()).pageTimeout(time(query.getPageTimeout()))
542+
.requestTimeout(time(query.getRequestTimeout()))
543+
.waitForCompletionTimeout(time(query.getWaitForCompletionTimeout())).filter(getQuery(query.getFilter(), null))
544+
.timeZone(Objects.toString(query.getTimeZone(), null)).format(Objects.toString(query.getFormat(), null));
545+
546+
return sqb;
547+
});
548+
}
549+
533550
// endregion
534551

535552
// region documents

0 commit comments

Comments
 (0)