Class DocTermsIndexDocValues
- java.lang.Object
-
- org.apache.lucene.queries.function.FunctionValues
-
- org.apache.lucene.queries.function.docvalues.DocTermsIndexDocValues
-
public abstract class DocTermsIndexDocValues extends FunctionValues
Serves as base class for FunctionValues based on DocTermsIndex.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DocTermsIndexDocValues.DocTermsIndexException
Custom Exception to be thrown when the DocTermsIndex for a field cannot be generated-
Nested classes/interfaces inherited from class org.apache.lucene.queries.function.FunctionValues
FunctionValues.ValueFiller
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
field
private int
lastDocID
protected CharsRefBuilder
spareChars
protected SortedDocValues
termsIndex
protected MutableValueStr
val
protected ValueSource
vs
-
Constructor Summary
Constructors Modifier Constructor Description protected
DocTermsIndexDocValues(java.lang.String field, ValueSource vs, SortedDocValues termsIndex)
DocTermsIndexDocValues(ValueSource vs, LeafReaderContext context, java.lang.String field)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
boolVal(int doc)
boolean
bytesVal(int doc, BytesRefBuilder target)
returns the bytes representation of the string val - TODO: should this return the indexed raw bytes not?boolean
exists(int doc)
Returns true if there is a value for this documentprotected int
getOrdForDoc(int doc)
ValueSourceScorer
getRangeScorer(Weight weight, LeafReaderContext readerContext, java.lang.String lowerVal, java.lang.String upperVal, boolean includeLower, boolean includeUpper)
Yields aScorer
that matches documents with values between the specified range, and that which produces scores equal toFunctionValues.floatVal(int)
.FunctionValues.ValueFiller
getValueFiller()
int
numOrd()
abstract java.lang.Object
objectVal(int doc)
Native Java Object representation of the value(package private) static SortedDocValues
open(LeafReaderContext context, java.lang.String field)
int
ordVal(int doc)
java.lang.String
strVal(int doc)
java.lang.String
toString(int doc)
protected abstract java.lang.String
toTerm(java.lang.String readableValue)
-
-
-
Field Detail
-
termsIndex
protected final SortedDocValues termsIndex
-
vs
protected final ValueSource vs
-
val
protected final MutableValueStr val
-
spareChars
protected final CharsRefBuilder spareChars
-
field
private final java.lang.String field
-
lastDocID
private int lastDocID
-
-
Constructor Detail
-
DocTermsIndexDocValues
public DocTermsIndexDocValues(ValueSource vs, LeafReaderContext context, java.lang.String field) throws java.io.IOException
- Throws:
java.io.IOException
-
DocTermsIndexDocValues
protected DocTermsIndexDocValues(java.lang.String field, ValueSource vs, SortedDocValues termsIndex)
-
-
Method Detail
-
getOrdForDoc
protected int getOrdForDoc(int doc) throws java.io.IOException
- Throws:
java.io.IOException
-
toTerm
protected abstract java.lang.String toTerm(java.lang.String readableValue)
-
exists
public boolean exists(int doc) throws java.io.IOException
Description copied from class:FunctionValues
Returns true if there is a value for this document- Overrides:
exists
in classFunctionValues
- Throws:
java.io.IOException
-
ordVal
public int ordVal(int doc) throws java.io.IOException
- Overrides:
ordVal
in classFunctionValues
- Parameters:
doc
- The doc to retrieve to sort ordinal for- Returns:
- the sort ordinal for the specified doc TODO: Maybe we can just use intVal for this...
- Throws:
java.io.IOException
-
numOrd
public int numOrd()
- Overrides:
numOrd
in classFunctionValues
- Returns:
- the number of unique sort ordinals this instance has
-
bytesVal
public boolean bytesVal(int doc, BytesRefBuilder target) throws java.io.IOException
Description copied from class:FunctionValues
returns the bytes representation of the string val - TODO: should this return the indexed raw bytes not?- Overrides:
bytesVal
in classFunctionValues
- Throws:
java.io.IOException
-
strVal
public java.lang.String strVal(int doc) throws java.io.IOException
- Overrides:
strVal
in classFunctionValues
- Throws:
java.io.IOException
-
boolVal
public boolean boolVal(int doc) throws java.io.IOException
- Overrides:
boolVal
in classFunctionValues
- Throws:
java.io.IOException
-
objectVal
public abstract java.lang.Object objectVal(int doc) throws java.io.IOException
Description copied from class:FunctionValues
Native Java Object representation of the value- Overrides:
objectVal
in classFunctionValues
- Throws:
java.io.IOException
-
getRangeScorer
public ValueSourceScorer getRangeScorer(Weight weight, LeafReaderContext readerContext, java.lang.String lowerVal, java.lang.String upperVal, boolean includeLower, boolean includeUpper) throws java.io.IOException
Description copied from class:FunctionValues
Yields aScorer
that matches documents with values between the specified range, and that which produces scores equal toFunctionValues.floatVal(int)
.- Overrides:
getRangeScorer
in classFunctionValues
- Throws:
java.io.IOException
-
toString
public java.lang.String toString(int doc) throws java.io.IOException
- Specified by:
toString
in classFunctionValues
- Throws:
java.io.IOException
-
getValueFiller
public FunctionValues.ValueFiller getValueFiller()
- Overrides:
getValueFiller
in classFunctionValues
-
open
static SortedDocValues open(LeafReaderContext context, java.lang.String field) throws java.io.IOException
- Throws:
java.io.IOException
-
-