Package org.apache.lucene.index
Class TermStates
java.lang.Object
org.apache.lucene.index.TermStates
Maintains a
IndexReader
TermState
view over IndexReader
instances
containing a single term. The TermStates
doesn't track if the given TermState
objects are valid, neither if the TermState
instances refer to the same terms in the
associated readers.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
Constructor Summary
ConstructorDescriptionTermStates
(IndexReaderContext context) Creates an emptyTermStates
from aIndexReaderContext
TermStates
(IndexReaderContext context, TermState state, int ord, int docFreq, long totalTermFreq) -
Method Summary
Modifier and TypeMethodDescriptionvoid
accumulateStatistics
(int docFreq, long totalTermFreq) Expert: Accumulate term statistics.static TermStates
build
(IndexReaderContext context, Term term, boolean needsStats) void
clear()
Clears theTermStates
internal state and removes all registeredTermState
sint
docFreq()
Returns the accumulated document frequency of allTermState
instances passed toregister(TermState, int, int, long)
.get
(LeafReaderContext ctx) void
Expert: Registers and associates aTermState
with an leaf ordinal.void
Registers and associates aTermState
with an leaf ordinal.toString()
long
Returns the accumulated term frequency of allTermState
instances passed toregister(TermState, int, int, long)
.boolean
wasBuiltFor
(IndexReaderContext context) Expert: Return whether thisTermStates
was built for the givenIndexReaderContext
.
-
Constructor Details
-
TermStates
Creates an emptyTermStates
from aIndexReaderContext
-
TermStates
public TermStates(IndexReaderContext context, TermState state, int ord, int docFreq, long totalTermFreq)
-
-
Method Details
-
wasBuiltFor
Expert: Return whether thisTermStates
was built for the givenIndexReaderContext
. This is typically used for assertions.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
build
public static TermStates build(IndexReaderContext context, Term term, boolean needsStats) throws IOException Creates aTermStates
from a top-levelIndexReaderContext
and the givenTerm
. This method will lookup the given term in all context's leaf readers and register each of the readers containing the term in the returnedTermStates
using the leaf reader's ordinal.Note: the given context must be a top-level context.
- Parameters:
needsStats
- iftrue
then all leaf contexts will be visited up-front to collect term statistics. Otherwise, theTermState
objects will be built only when requested- Throws:
IOException
-
clear
public void clear()Clears theTermStates
internal state and removes all registeredTermState
s -
register
Registers and associates aTermState
with an leaf ordinal. The leaf ordinal should be derived from aIndexReaderContext
's leaf ord. -
register
Expert: Registers and associates aTermState
with an leaf ordinal. The leaf ordinal should be derived from aIndexReaderContext
's leaf ord. On the contrary toregister(TermState, int, int, long)
this method does NOT update term statistics. -
accumulateStatistics
public void accumulateStatistics(int docFreq, long totalTermFreq) Expert: Accumulate term statistics. -
get
Returns theTermState
for a leaf reader context ornull
if noTermState
for the context was registered.- Parameters:
ctx
- theLeafReaderContext
to get theTermState
for.- Returns:
- the
TermState
for the given readers ord ornull
if noTermState
for the reader was registered - Throws:
IOException
-
docFreq
public int docFreq()Returns the accumulated document frequency of allTermState
instances passed toregister(TermState, int, int, long)
.- Returns:
- the accumulated document frequency of all
TermState
instances passed toregister(TermState, int, int, long)
.
-
totalTermFreq
public long totalTermFreq()Returns the accumulated term frequency of allTermState
instances passed toregister(TermState, int, int, long)
.- Returns:
- the accumulated term frequency of all
TermState
instances passed toregister(TermState, int, int, long)
.
-
toString
-