diff --git a/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryAbstract.java b/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryAbstract.java index aaa855ba..9f24157e 100644 --- a/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryAbstract.java +++ b/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryAbstract.java @@ -73,6 +73,22 @@ public static enum OperatorEnum { public Boolean enableLog; public List customLogs; + public static enum BatchAction { + + /** + * The batch is stopped if the request found documents. IF not document + * was found, the batch execute the next request. + */ + STOP_IF_FOUND, + + /** + * Go to the next request even if the request found documents. + */ + CONTINUE + } + + public BatchAction batchAction; + public SearchQueryAbstract() { query = null; start = null; @@ -93,6 +109,7 @@ public SearchQueryAbstract() { enableLog = null; customLogs = null; emptyReturnsAll = null; + batchAction = null; } /** @@ -377,4 +394,12 @@ public SearchQueryAbstract setCustomLogs(List customLogs) { return this; } + /** + * @param batchAction + * the batchAction to set + */ + public SearchQueryAbstract setBatchAction(BatchAction batchAction) { + this.batchAction = batchAction; + return this; + } } diff --git a/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryBatch.java b/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryBatch.java index 56b6f2b0..be3a3c0c 100644 --- a/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryBatch.java +++ b/src/main/java/com/opensearchserver/client/common/search/query/SearchQueryBatch.java @@ -36,7 +36,20 @@ public class SearchQueryBatch { public static enum QueryModeEnum { - all, first + /** + * All queries are executed + */ + all, + + /** + * The batch is stopped when a query found a result + */ + first, + + /** + * The behavior is managed by the batchAction parameter for each query + */ + manual } public QueryModeEnum mode; @@ -73,7 +86,7 @@ public SearchQueryBatch addQuery(List queries) { return this; } - public SearchQueryBatch seMode(QueryModeEnum mode) { + public SearchQueryBatch setMode(QueryModeEnum mode) { this.mode = mode; return this; }