A FilterAtomicReader contains another AtomicReader, which it
uses as its basic source of data, possibly transforming the data along the
way or providing additional functionality. The class
FilterAtomicReader itself simply implements all abstract methods
of IndexReader with versions that pass all requests to the
contained index reader. Subclasses of FilterAtomicReader may
further override some of these methods and may also provide additional
methods and fields.

Method Detail

getLiveDocs

Returns the Bits representing live (not
deleted) docs. A set bit indicates the doc ID has not
been deleted. If this method returns null it means
there are no deleted documents (all documents are
live).
The returned instance has been safely published for
use by multiple threads without additional
synchronization.

getCombinedCoreAndDeletesKey

Expert: Returns a key for this IndexReader that also includes deletions,
so FieldCache/CachingWrapperFilter can find it again.
This key must not have equals()/hashCode() methods, so "equals" means "identical".

If the subclass of FilteredIndexReader modifies the
liveDocs, you must override this
method to provide a different key.