public class CachingWrapperFilter extends Filter
Modifier and Type | Class and Description |
---|---|
static class |
CachingWrapperFilter.DeletesMode
Expert: Specifies how new deletions against a reopened
reader should be handled.
|
Modifier and Type | Field and Description |
---|---|
protected org.apache.lucene.search.CachingWrapperFilter.FilterCache |
cache |
protected Filter |
filter |
Constructor and Description |
---|
CachingWrapperFilter(Filter filter)
New deletes are ignored by default, which gives higher
cache hit rate on reopened readers.
|
CachingWrapperFilter(Filter filter,
CachingWrapperFilter.DeletesMode deletesMode)
Expert: by default, the cached filter will be shared
across reopened segments that only had changes to their
deletions.
|
Modifier and Type | Method and Description |
---|---|
java.util.BitSet |
bits(IndexReader reader)
Deprecated.
Use
getDocIdSet(IndexReader) instead. |
protected DocIdSet |
docIdSetToCache(DocIdSet docIdSet,
IndexReader reader)
Provide the DocIdSet to be cached, using the DocIdSet provided
by the wrapped Filter.
|
boolean |
equals(java.lang.Object o) |
DocIdSet |
getDocIdSet(IndexReader reader)
Creates a
DocIdSet enumerating the documents that should be
permitted in search results. |
int |
hashCode() |
java.lang.String |
toString() |
protected Filter filter
protected final org.apache.lucene.search.CachingWrapperFilter.FilterCache cache
public CachingWrapperFilter(Filter filter)
CachingWrapperFilter.DeletesMode.RECACHE
or CachingWrapperFilter.DeletesMode.DYNAMIC
.filter
- Filter to cache results ofpublic CachingWrapperFilter(Filter filter, CachingWrapperFilter.DeletesMode deletesMode)
filter
- Filter to cache results ofdeletesMode
- See CachingWrapperFilter.DeletesMode
public java.util.BitSet bits(IndexReader reader) throws java.io.IOException
getDocIdSet(IndexReader)
instead.bits
in class Filter
NOTE: See Filter.getDocIdSet(IndexReader)
for
handling of multi-segment indexes (which applies to
this method as well).
java.io.IOException
protected DocIdSet docIdSetToCache(DocIdSet docIdSet, IndexReader reader) throws java.io.IOException
This implementation returns the given DocIdSet
, if DocIdSet.isCacheable()
returns true
, else it copies the DocIdSetIterator
into
an OpenBitSetDISI
.
java.io.IOException
public DocIdSet getDocIdSet(IndexReader reader) throws java.io.IOException
Filter
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.
getDocIdSet
in class Filter
reader
- a IndexReader
instance opened on the index currently
searched on. Note, it is likely that the provided reader 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.java.io.IOException
DocIdBitSet
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.