redis.clients.jedis.search.schemafields.NumericField Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jedis Show documentation
Show all versions of jedis Show documentation
Jedis is a blazingly small and sane Redis java client.
The newest version!
package redis.clients.jedis.search.schemafields;
import static redis.clients.jedis.search.SearchProtocol.SearchKeyword.*;
import redis.clients.jedis.CommandArguments;
import redis.clients.jedis.search.FieldName;
public class NumericField extends SchemaField {
private boolean indexMissing;
private boolean sortable;
private boolean noIndex;
public NumericField(String fieldName) {
super(fieldName);
}
public NumericField(FieldName fieldName) {
super(fieldName);
}
public static NumericField of(String fieldName) {
return new NumericField(fieldName);
}
public static NumericField of(FieldName fieldName) {
return new NumericField(fieldName);
}
@Override
public NumericField as(String attribute) {
super.as(attribute);
return this;
}
public NumericField indexMissing() {
this.indexMissing = true;
return this;
}
/**
* Sorts the results by the value of this field.
*/
public NumericField sortable() {
this.sortable = true;
return this;
}
/**
* Avoid indexing.
*/
public NumericField noIndex() {
this.noIndex = true;
return this;
}
@Override
public void addParams(CommandArguments args) {
args.addParams(fieldName);
args.add(NUMERIC);
if (indexMissing) {
args.add(INDEXMISSING);
}
if (sortable) {
args.add(SORTABLE);
}
if (noIndex) {
args.add(NOINDEX);
}
}
}