public abstract class Filter extends Query
Modifier | Constructor and Description |
---|---|
protected |
Filter()
Default Filter constructor that will use the
doc id set iterator when consumed through
the Query API. |
protected |
Filter(boolean applyLazily)
Filter constructor.
|
Modifier and Type | Method and Description |
---|---|
Weight |
createWeight(IndexSearcher searcher,
boolean needsScores) |
abstract DocIdSet |
getDocIdSet(LeafReaderContext context,
Bits acceptDocs)
Creates a
DocIdSet enumerating the documents that should be
permitted in search results. |
protected Filter(boolean applyLazily)
applyLazily
is true and the produced
DocIdSet
s support random-access
, Lucene
will only apply this filter after other clauses.protected Filter()
doc id set iterator
when consumed through
the Query
API.public abstract DocIdSet getDocIdSet(LeafReaderContext context, Bits acceptDocs) throws IOException
DocIdSet
enumerating the documents that should be
permitted in search results. NOTE: null can be
returned if no documents are accepted by this Filter.
Note: This method will be called once per segment in
the index during searching. The returned DocIdSet
must refer to document IDs for that segment, not for
the top-level reader.
context
- a LeafReaderContext
instance opened on the index currently
searched on. Note, it is likely that the provided reader info does not
represent the whole underlying index i.e. if the index has more than
one segment the given reader only represents a single segment.
The provided context is always an atomic context, so you can call
LeafReader.fields()
on the context's reader, for example.acceptDocs
- Bits that represent the allowable docs to match (typically deleted docs
but possibly filtering other documents)null
should be returned if
the filter doesn't accept any documents otherwise internal optimization might not apply
in the case an empty DocIdSet
is returned.IOException
public Weight createWeight(IndexSearcher searcher, boolean needsScores) throws IOException
createWeight
in class Query
IOException
Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.