CachingWrapperQuery
and BooleanClause.Occur.FILTER
clauses instead@Deprecated public class CachingWrapperFilter extends Filter implements Accountable
Filter
's result and caches it. The purpose is to allow
filters to simply filter, and then wrap with this class
to add caching.Constructor and Description |
---|
CachingWrapperFilter(Filter filter)
Deprecated.
Same as
CachingWrapperFilter(Filter, FilterCachingPolicy)
but enforces the use of the
FilterCachingPolicy.CacheOnLargeSegments.DEFAULT policy. |
CachingWrapperFilter(Filter filter,
FilterCachingPolicy policy)
Deprecated.
Wraps another filter's result and caches it according to the provided policy.
|
Modifier and Type | Method and Description |
---|---|
protected DocIdSet |
cacheImpl(DocIdSetIterator iterator,
LeafReader reader)
Deprecated.
Default cache implementation: uses
RoaringDocIdSet . |
protected DocIdSet |
docIdSetToCache(DocIdSet docIdSet,
LeafReader reader)
Deprecated.
Provide the DocIdSet to be cached, using the DocIdSet provided
by the wrapped Filter.
|
boolean |
equals(Object o)
Deprecated.
|
Collection<Accountable> |
getChildResources()
Deprecated.
Returns nested resources of this class.
|
DocIdSet |
getDocIdSet(LeafReaderContext context,
Bits acceptDocs)
Deprecated.
Creates a
DocIdSet enumerating the documents that should be
permitted in search results. |
Filter |
getFilter()
Deprecated.
Gets the contained filter.
|
int |
hashCode()
Deprecated.
|
long |
ramBytesUsed()
Deprecated.
Return the memory usage of this object in bytes.
|
String |
toString(String field)
Deprecated.
Prints a query to a string, with
field assumed to be the
default field and omitted. |
createWeight
public CachingWrapperFilter(Filter filter, FilterCachingPolicy policy)
filter
- Filter to cache results ofpolicy
- policy defining which filters should be cached on which segmentspublic CachingWrapperFilter(Filter filter)
CachingWrapperFilter(Filter, FilterCachingPolicy)
but enforces the use of the
FilterCachingPolicy.CacheOnLargeSegments.DEFAULT
policy.public Filter getFilter()
protected DocIdSet docIdSetToCache(DocIdSet docIdSet, LeafReader reader) throws IOException
This implementation returns the given DocIdSet
,
if DocIdSet.isCacheable()
returns true
, else it calls
cacheImpl(DocIdSetIterator, org.apache.lucene.index.LeafReader)
Note: This method returns DocIdSet.EMPTY if the given docIdSet
is null
or if DocIdSet.iterator()
return null
. The empty
instance is use as a placeholder in the cache instead of the null
value.
IOException
protected DocIdSet cacheImpl(DocIdSetIterator iterator, LeafReader reader) throws IOException
RoaringDocIdSet
.IOException
public DocIdSet getDocIdSet(LeafReaderContext context, Bits acceptDocs) throws 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
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 String toString(String field)
Query
field
assumed to be the
default field and omitted.public long ramBytesUsed()
Accountable
ramBytesUsed
in interface Accountable
public Collection<Accountable> getChildResources()
Accountable
getChildResources
in interface Accountable
Accountables
Copyright © 2000-2015 Apache Software Foundation. All Rights Reserved.