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 LuceneFieldCache
using 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 String
description()
description of field, used in explain()boolean
equals(Object o)
Needed for possible caching of query results - used byValueSourceQuery.equals(Object)
.DocValues
getValues(IndexReader reader)
Return the DocValues used by the function query.int
hashCode()
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:ValueSource
description of field, used in explain()- Specified by:
description
in classValueSource
-
getValues
public DocValues getValues(IndexReader reader) throws IOException
Description copied from class:ValueSource
Return the DocValues used by the function query.- Specified by:
getValues
in 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:ValueSource
Needed for possible caching of query results - used byValueSourceQuery.equals(Object)
.- Specified by:
equals
in classValueSource
- See Also:
Object.equals(Object)
-
hashCode
public int hashCode()
Description copied from class:ValueSource
Needed for possible caching of query results - used byValueSourceQuery.hashCode()
.- Specified by:
hashCode
in classValueSource
- See Also:
Object.hashCode()
-
-