Class IndexFieldData.XFieldComparatorSource

java.lang.Object
org.apache.lucene.search.FieldComparatorSource
org.elasticsearch.index.fielddata.IndexFieldData.XFieldComparatorSource
Direct Known Subclasses:
BytesRefFieldComparatorSource, DoubleValuesComparatorSource, FloatValuesComparatorSource, LongValuesComparatorSource
Enclosing interface:
IndexFieldData<FD extends AtomicFieldData>

public abstract static class IndexFieldData.XFieldComparatorSource
extends org.apache.lucene.search.FieldComparatorSource
  • Field Details

  • Constructor Details

  • Method Details

    • sortMode

      public MultiValueMode sortMode()
    • nested

    • sortMissingFirst

      public final boolean sortMissingFirst​(java.lang.Object missingValue)
      Whether missing values should be sorted first.
    • sortMissingLast

      public final boolean sortMissingLast​(java.lang.Object missingValue)
      Whether missing values should be sorted last, this is the default.
    • missingObject

      public final java.lang.Object missingObject​(java.lang.Object missingValue, boolean reversed)
      Return the missing object value according to the reduced type of the comparator.
    • reducedType

      public abstract org.apache.lucene.search.SortField.Type reducedType()
    • missingValue

      public java.lang.Object missingValue​(boolean reversed)
      Return a missing value that is understandable by SortField.setMissingValue(Object). Most implementations return null because they already replace the value at the fielddata level. However this can't work in case of strings since there is no such thing as a string which compares greater than any other string, so in that case we need to return SortField.STRING_FIRST or SortField.STRING_LAST so that the coordinating node knows how to deal with null values.