Package org.elasticsearch.index
Class IndexSortConfig
java.lang.Object
org.elasticsearch.index.IndexSortConfig
public final class IndexSortConfig
extends java.lang.Object
Holds all the information that is used to build the sort order of an index.
The index sort settings are final and can be defined only at index creation.
These settings are divided in four lists that are merged during the initialization of this class:
- `index.sort.field`: the field or a list of field to use for the sort
- `index.sort.order` the
SortOrder
to use for the field or a list ofSortOrder
for each field defined in `index.sort.field`. - `index.sort.mode`: the
MultiValueMode
to use for the field or a list of orders for each field defined in `index.sort.field`. - `index.sort.missing`: the missing value to use for the field or a list of missing values for each field defined in `index.sort.field`
-
Field Summary
Fields Modifier and Type Field Description static Setting<java.util.List<java.lang.String>>
INDEX_SORT_FIELD_SETTING
The list of field namesstatic Setting<java.util.List<java.lang.String>>
INDEX_SORT_MISSING_SETTING
The missing value for each specified sort field (ie.static Setting<java.util.List<MultiValueMode>>
INDEX_SORT_MODE_SETTING
TheMultiValueMode
for each specified sort field (ie.static Setting<java.util.List<SortOrder>>
INDEX_SORT_ORDER_SETTING
TheSortOrder
for each specified sort field (ie. -
Constructor Summary
Constructors Constructor Description IndexSortConfig(IndexSettings indexSettings)
-
Method Summary
Modifier and Type Method Description org.apache.lucene.search.Sort
buildIndexSort(java.util.function.Function<java.lang.String,MappedFieldType> fieldTypeLookup, java.util.function.BiFunction<MappedFieldType,java.util.function.Supplier<SearchLookup>,IndexFieldData<?>> fieldDataLookup)
Builds theSort
order from the settings for this index or returns null if this index has no sort.static org.apache.lucene.search.SortField.Type
getSortFieldType(org.apache.lucene.search.SortField sortField)
boolean
hasIndexSort()
Returns true if the index should be sortedboolean
hasPrimarySortOnField(java.lang.String field)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
INDEX_SORT_FIELD_SETTING
The list of field names -
INDEX_SORT_ORDER_SETTING
TheSortOrder
for each specified sort field (ie. asc or desc). -
INDEX_SORT_MODE_SETTING
TheMultiValueMode
for each specified sort field (ie. max or min). -
INDEX_SORT_MISSING_SETTING
The missing value for each specified sort field (ie. _first or _last)
-
-
Constructor Details
-
IndexSortConfig
-
-
Method Details
-
hasIndexSort
public boolean hasIndexSort()Returns true if the index should be sorted -
hasPrimarySortOnField
public boolean hasPrimarySortOnField(java.lang.String field) -
buildIndexSort
public org.apache.lucene.search.Sort buildIndexSort(java.util.function.Function<java.lang.String,MappedFieldType> fieldTypeLookup, java.util.function.BiFunction<MappedFieldType,java.util.function.Supplier<SearchLookup>,IndexFieldData<?>> fieldDataLookup)Builds theSort
order from the settings for this index or returns null if this index has no sort. -
getSortFieldType
public static org.apache.lucene.search.SortField.Type getSortFieldType(org.apache.lucene.search.SortField sortField)
-