add sort with Order enum

This commit is contained in:
kimchy 2010-04-11 10:25:17 +03:00
parent f10a2d428d
commit 442e0e87b0
1 changed files with 26 additions and 1 deletions

View File

@ -33,7 +33,7 @@ import static com.google.common.collect.Lists.*;
import static org.elasticsearch.util.json.JsonBuilder.*;
/**
* A search source builder allowing to easily build search source. Simple consruction
* A search source builder allowing to easily build search source. Simple construction
* using {@link org.elasticsearch.search.builder.SearchSourceBuilder#searchSource()}.
*
* @author kimchy (shay.banon)
@ -41,6 +41,11 @@ import static org.elasticsearch.util.json.JsonBuilder.*;
*/
public class SearchSourceBuilder {
public static enum Order {
ASC,
DESC
}
/**
* A static factory method to construct a new search source.
*/
@ -132,6 +137,26 @@ public class SearchSourceBuilder {
return this;
}
/**
* Adds a sort against the given field name and the sort ordering.
*
* @param name The name of the field
* @param order The sort ordering
*/
public SearchSourceBuilder sort(String name, Order order) {
boolean reverse = false;
if (name.equals("score")) {
if (order == Order.ASC) {
reverse = true;
}
} else {
if (order == Order.DESC) {
reverse = true;
}
}
return sort(name, null, reverse);
}
/**
* Add a sort against the given field name and if it should be revered or not.
*