Package org.apache.lucene.search
Class LongValuesSource
- java.lang.Object
-
- org.apache.lucene.search.LongValuesSource
-
- All Implemented Interfaces:
SegmentCacheable
public abstract class LongValuesSource extends Object implements SegmentCacheable
Base class for producingLongValuesTo obtain aLongValuesobject for a leaf reader, clients should callrewrite(IndexSearcher)against the top-level searcher, and thengetValues(LeafReaderContext, DoubleValues). LongValuesSource objects for long and int-valued NumericDocValues fields can be obtained by callingfromLongField(String)andfromIntField(String). To obtain a LongValuesSource from a float or double-valued NumericDocValues field, useDoubleValuesSource.fromFloatField(String)orDoubleValuesSource.fromDoubleField(String)and then callDoubleValuesSource.toLongValuesSource().
-
-
Constructor Summary
Constructors Constructor Description LongValuesSource()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static LongValuesSourceconstant(long value)Creates a LongValuesSource that always returns a constant valueabstract booleanequals(Object obj)static LongValuesSourcefromIntField(String field)Creates a LongValuesSource that wraps an int-valued fieldstatic LongValuesSourcefromLongField(String field)Creates a LongValuesSource that wraps a long-valued fieldSortFieldgetSortField(boolean reverse)Create a sort field based on the value of this producerabstract LongValuesgetValues(LeafReaderContext ctx, DoubleValues scores)Returns aLongValuesinstance for the passed-in LeafReaderContext and scores If scores are not needed to calculate the values (iereturns false, callers may safely passnullfor thescoresparameter.abstract inthashCode()abstract booleanneedsScores()Return true if document scores are needed to calculate valuesabstract LongValuesSourcerewrite(IndexSearcher searcher)Return a LongValuesSource specialised for the given IndexSearcher Implementations should assume that this will only be called once.DoubleValuesSourcetoDoubleValuesSource()Convert to a DoubleValuesSource by casting long values to doublesabstract StringtoString()-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.search.SegmentCacheable
isCacheable
-
-
-
-
Method Detail
-
getValues
public abstract LongValues getValues(LeafReaderContext ctx, DoubleValues scores) throws IOException
Returns aLongValuesinstance for the passed-in LeafReaderContext and scores If scores are not needed to calculate the values (iereturns false, callers may safely passnullfor thescoresparameter.- Throws:
IOException
-
needsScores
public abstract boolean needsScores()
Return true if document scores are needed to calculate values
-
rewrite
public abstract LongValuesSource rewrite(IndexSearcher searcher) throws IOException
Return a LongValuesSource specialised for the given IndexSearcher Implementations should assume that this will only be called once. IndexSearcher-independent implementations can just returnthis- Throws:
IOException
-
getSortField
public SortField getSortField(boolean reverse)
Create a sort field based on the value of this producer- Parameters:
reverse- true if the sort should be decreasing
-
toDoubleValuesSource
public DoubleValuesSource toDoubleValuesSource()
Convert to a DoubleValuesSource by casting long values to doubles
-
fromLongField
public static LongValuesSource fromLongField(String field)
Creates a LongValuesSource that wraps a long-valued field
-
fromIntField
public static LongValuesSource fromIntField(String field)
Creates a LongValuesSource that wraps an int-valued field
-
constant
public static LongValuesSource constant(long value)
Creates a LongValuesSource that always returns a constant value
-
-