Class CachingWrapperFilter
Wraps another Filter's result and caches it. The purpose is to allow filters to simply filter, and then wrap with this class to add caching.
Inherited Members
Namespace: Lucene.Net.Search
Assembly: Lucene.Net.dll
Syntax
public class CachingWrapperFilter : Filter
Constructors
CachingWrapperFilter(Filter)
Wraps another filter's result and caches it.
Declaration
public CachingWrapperFilter(Filter filter)
Parameters
| Type | Name | Description |
|---|---|---|
| Filter | filter | Filter to cache results of |
Fields
EMPTY_DOCIDSET
An empty DocIdSet instance
Declaration
protected static readonly DocIdSet EMPTY_DOCIDSET
Field Value
| Type | Description |
|---|---|
| DocIdSet |
Properties
Filter
Gets the contained filter.
Declaration
public virtual Filter Filter { get; }
Property Value
| Type | Description |
|---|---|
| Filter | the contained filter. |
Methods
CacheImpl(DocIdSetIterator, AtomicReader)
Default cache implementation: uses WAH8DocIdSet.
Declaration
protected virtual DocIdSet CacheImpl(DocIdSetIterator iterator, AtomicReader reader)
Parameters
| Type | Name | Description |
|---|---|---|
| DocIdSetIterator | iterator | |
| AtomicReader | reader |
Returns
| Type | Description |
|---|---|
| DocIdSet |
DocIdSetToCache(DocIdSet, AtomicReader)
Provide the DocIdSet to be cached, using the DocIdSet provided by the wrapped Filter.
This implementation returns the given DocIdSet, if IsCacheable returnstrue, else it calls
CacheImpl(DocIdSetIterator, AtomicReader)Note: this method returns EMPTY_DOCIDSET if the given docIdSet
is null or if GetIterator() return null. The empty
instance is use as a placeholder in the cache instead of the null value.
Declaration
protected virtual DocIdSet DocIdSetToCache(DocIdSet docIdSet, AtomicReader reader)
Parameters
| Type | Name | Description |
|---|---|---|
| DocIdSet | docIdSet | |
| AtomicReader | reader |
Returns
| Type | Description |
|---|---|
| DocIdSet |
Equals(object)
Determines whether the specified object is equal to the current object.
Declaration
public override bool Equals(object o)
Parameters
| Type | Name | Description |
|---|---|---|
| object | o |
Returns
| Type | Description |
|---|---|
| bool | true if the specified object is equal to the current object; otherwise, false. |
Overrides
GetDocIdSet(AtomicReaderContext, IBits)
Creates a DocIdSet enumerating the documents that should be
permitted in search results. NOTE:null can be
returned if no documents are accepted by this Filter.
Declaration
public override DocIdSet GetDocIdSet(AtomicReaderContext context, IBits acceptDocs)
Parameters
| Type | Name | Description |
|---|---|---|
| AtomicReaderContext | context | a AtomicReaderContext 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 Fields on the context's reader, for example. |
| IBits | acceptDocs | IBits that represent the allowable docs to match (typically deleted docs but possibly filtering other documents) |
Returns
| Type | Description |
|---|---|
| DocIdSet | A DocIdSet that provides the documents which should be permitted or
prohibited in search results. NOTE: |
Overrides
GetHashCode()
Serves as the default hash function.
Declaration
public override int GetHashCode()
Returns
| Type | Description |
|---|---|
| int | A hash code for the current object. |
Overrides
GetSizeInBytes()
Returns total byte size used by cached filters.
Declaration
public virtual long GetSizeInBytes()
Returns
| Type | Description |
|---|---|
| long |
ToString()
Returns a string that represents the current object.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string | A string that represents the current object. |