org.apache.lucene.queries.function.valuesource
Class OrdFieldSource
java.lang.Object
org.apache.lucene.queries.function.ValueSource
org.apache.lucene.queries.function.valuesource.OrdFieldSource
public class OrdFieldSource
- extends ValueSource
Obtains the ordinal of the field value from the default Lucene FieldCache
using getStringIndex().
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:
If there were only three field values: "apple","banana","pear"
then ord("apple")=1, ord("banana")=2, ord("pear")=3
WARNING: ord() depends on the position in an index and can thus change when other documents are inserted or deleted,
or if a MultiSearcher is used.
WARNING: as of Solr 1.4, ord() and rord() can cause excess memory use since they must use a FieldCache entry
at the top level reader, while sorting and function queries now use entries at the segment level. Hence sorting
or using a different function query, in addition to ord()/rord() will double memory use.
field
protected final String field
OrdFieldSource
public OrdFieldSource(String field)
description
public String description()
- Description copied from class:
ValueSource
- description of field, used in explain()
- Specified by:
description
in class ValueSource
getValues
public FunctionValues getValues(Map context,
AtomicReaderContext readerContext)
throws IOException
- Description copied from class:
ValueSource
- Gets the values for this reader and the context that was previously
passed to createWeight()
- Specified by:
getValues
in class ValueSource
- Throws:
IOException
equals
public boolean equals(Object o)
- Specified by:
equals
in class ValueSource
hashCode
public int hashCode()
- Specified by:
hashCode
in class ValueSource
Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.