CavalliumDBEngine/src/main/java/it/cavallium/dbengine/client/Sort.java
Andrea Cavalli d861e26a57 Rename sort
2021-10-28 17:18:23 +02:00

42 lines
1.1 KiB
Java

package it.cavallium.dbengine.client;
import it.cavallium.dbengine.client.query.BasicType;
import it.cavallium.dbengine.client.query.current.data.DocSort;
import it.cavallium.dbengine.client.query.current.data.NoSort;
import it.cavallium.dbengine.client.query.current.data.NumericSort;
import it.cavallium.dbengine.client.query.current.data.RandomSort;
import it.cavallium.dbengine.client.query.current.data.ScoreSort;
import org.jetbrains.annotations.NotNull;
public record Sort(@NotNull it.cavallium.dbengine.client.query.current.data.Sort querySort) {
public boolean isSorted() {
return querySort.getBasicType$() != BasicType.NoSort;
}
public static Sort random() {
return new Sort(RandomSort.of());
}
public static Sort score() {
return new Sort(ScoreSort.of());
}
public static Sort no() {
return new Sort(NoSort.of());
}
public static Sort doc() {
return new Sort(DocSort.of());
}
public static Sort numeric(String field, boolean reverse) {
return new Sort(NumericSort.of(field, reverse));
}
@Override
public String toString() {
return querySort.toString();
}
}