Class ReverseOrdFieldSource
- java.lang.Object
-
- org.apache.lucene.search.function.ValueSource
-
- org.apache.lucene.search.function.ReverseOrdFieldSource
-
- All Implemented Interfaces:
Serializable
public class ReverseOrdFieldSource extends ValueSource
Expert: obtains the ordinal of the field value from the default LuceneFieldCacheusing getStringIndex() and reverses the order.The native lucene index order is used to assign an ordinal value for each field value.
Field values (terms) are lexicographically ordered by unicode value, and numbered starting at 1.
Example of reverse ordinal (rord):
If there were only three field values: "apple","banana","pear"
then rord("apple")=3, rord("banana")=2, ord("pear")=1WARNING: rord() depends on the position in an index and can thus change when other documents are inserted or deleted, or if a MultiSearcher is used.
- See Also:
- Serialized Form
- WARNING: This API is experimental and might change in incompatible ways in the next release.
NOTE: with the switch in 2.9 to segment-based searching, if
getValues(org.apache.lucene.index.IndexReader)is invoked with a composite (multi-segment) reader, this can easily cause double RAM usage for the values in the FieldCache. It's best to switch your application to pass only atomic (single segment) readers to this API.
-
-
Constructor Summary
Constructors Constructor Description ReverseOrdFieldSource(String field)Contructor for a certain field.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Stringdescription()description of field, used in explain()booleanequals(Object o)Needed for possible caching of query results - used byValueSourceQuery.equals(Object).DocValuesgetValues(IndexReader reader)Return the DocValues used by the function query.inthashCode()Needed for possible caching of query results - used byValueSourceQuery.hashCode().-
Methods inherited from class org.apache.lucene.search.function.ValueSource
toString
-
-
-
-
Field Detail
-
field
public String field
-
-
Constructor Detail
-
ReverseOrdFieldSource
public ReverseOrdFieldSource(String field)
Contructor for a certain field.- Parameters:
field- field whose values reverse order is used.
-
-
Method Detail
-
description
public String description()
Description copied from class:ValueSourcedescription of field, used in explain()- Specified by:
descriptionin classValueSource
-
getValues
public DocValues getValues(IndexReader reader) throws IOException
Description copied from class:ValueSourceReturn the DocValues used by the function query.- Specified by:
getValuesin classValueSource- Parameters:
reader- the IndexReader used to read these values. If any caching is involved, that caching would also be IndexReader based.- Throws:
IOException- for any error.
-
equals
public boolean equals(Object o)
Description copied from class:ValueSourceNeeded for possible caching of query results - used byValueSourceQuery.equals(Object).- Specified by:
equalsin classValueSource- See Also:
Object.equals(Object)
-
hashCode
public int hashCode()
Description copied from class:ValueSourceNeeded for possible caching of query results - used byValueSourceQuery.hashCode().- Specified by:
hashCodein classValueSource- See Also:
Object.hashCode()
-
-