in aliyun-sdk-opensearch/src/main/java/com/aliyun/opensearch/search/AbstractSubClausesBuilder.java [199:227]
final Optional<String> getDefaultSortClause() {
Optional<String> sortClause = Optional.absent();
if (params.isSetSort()) {
Sort sort = params.getSort();
if (sort.isSetSortFields()) {
StringBuilder sortBuilder = new StringBuilder(SortClauseKey).append("=");
List<SortField> sortFields = sort.getSortFields();
List<String> sortStrings = Lists.newArrayList();
for (SortField sortField : sortFields) {
String field = sortField.getField();
Order orderEnum = sortField.getOrder();
String order;
switch (orderEnum) {
case INCREASE:
order = SORT_CLAUSE_INCREASE;
break;
case DECREASE:
order = SORT_CLAUSE_DECREASE;
break;
default:
throw new IllegalArgumentException("unknow order: " + orderEnum);
}
sortStrings.add(order + field);
}
sortClause = Optional.of(sortBuilder.append(Joiner.on(";").join(sortStrings)).toString());
}
}
return sortClause;
}