Module org.apache.lucene.core
Package org.apache.lucene.index
Class SoftDeletesDirectoryReaderWrapper
java.lang.Object
org.apache.lucene.index.IndexReader
org.apache.lucene.index.CompositeReader
org.apache.lucene.index.BaseCompositeReader<LeafReader>
org.apache.lucene.index.DirectoryReader
org.apache.lucene.index.FilterDirectoryReader
org.apache.lucene.index.SoftDeletesDirectoryReaderWrapper
- All Implemented Interfaces:
Closeable,AutoCloseable
This reader filters out documents that have a doc values value in the given field and treat these
documents as soft deleted. Hard deleted documents will also be filtered out in the life docs of
this reader.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class(package private) static final classprivate static classNested classes/interfaces inherited from class org.apache.lucene.index.FilterDirectoryReader
FilterDirectoryReader.DelegatingCacheHelper, FilterDirectoryReader.SubReaderWrapperNested classes/interfaces inherited from class org.apache.lucene.index.IndexReader
IndexReader.CacheHelper, IndexReader.CacheKey, IndexReader.ClosedListener -
Field Summary
FieldsFields inherited from class org.apache.lucene.index.FilterDirectoryReader
inFields inherited from class org.apache.lucene.index.DirectoryReader
directoryFields inherited from class org.apache.lucene.index.BaseCompositeReader
subReadersSorter -
Constructor Summary
ConstructorsModifierConstructorDescriptionCreates a new soft deletes wrapper.privateSoftDeletesDirectoryReaderWrapper(DirectoryReader in, SoftDeletesDirectoryReaderWrapper.SoftDeletesSubReaderWrapper wrapper) -
Method Summary
Modifier and TypeMethodDescriptionprivate static booleanassertDocCounts(int expectedNumDocs, int numSoftDeletes, LeafReader reader) protected DirectoryReaderCalled by the doOpenIfChanged() methods to return a new wrapped DirectoryReader.Optional method: Return aIndexReader.CacheHelperthat can be used to cache based on the content of this reader.(package private) static LeafReaderwrap(LeafReader reader, String field) Methods inherited from class org.apache.lucene.index.FilterDirectoryReader
doClose, doOpenIfChanged, doOpenIfChanged, doOpenIfChanged, getDelegate, getIndexCommit, getVersion, isCurrent, unwrapMethods inherited from class org.apache.lucene.index.DirectoryReader
directory, indexExists, listCommits, open, open, open, open, open, open, openIfChanged, openIfChanged, openIfChanged, openIfChangedMethods inherited from class org.apache.lucene.index.BaseCompositeReader
docFreq, document, getDocCount, getSequentialSubReaders, getSumDocFreq, getSumTotalTermFreq, getTermVectors, maxDoc, numDocs, readerBase, readerIndex, storedFields, termVectors, totalTermFreqMethods inherited from class org.apache.lucene.index.CompositeReader
getContext, toStringMethods inherited from class org.apache.lucene.index.IndexReader
close, decRef, document, document, ensureOpen, equals, getRefCount, getTermVector, hasDeletions, hashCode, incRef, leaves, notifyReaderClosedListeners, numDeletedDocs, registerParentReader, tryIncRef
-
Field Details
-
field
-
readerCacheHelper
-
-
Constructor Details
-
SoftDeletesDirectoryReaderWrapper
Creates a new soft deletes wrapper.- Parameters:
in- the incoming directory readerfield- the soft deletes field- Throws:
IOException
-
SoftDeletesDirectoryReaderWrapper
private SoftDeletesDirectoryReaderWrapper(DirectoryReader in, SoftDeletesDirectoryReaderWrapper.SoftDeletesSubReaderWrapper wrapper) throws IOException - Throws:
IOException
-
-
Method Details
-
doWrapDirectoryReader
Description copied from class:FilterDirectoryReaderCalled by the doOpenIfChanged() methods to return a new wrapped DirectoryReader.Implementations should just return an instantiation of themselves, wrapping the passed in DirectoryReader.
- Specified by:
doWrapDirectoryReaderin classFilterDirectoryReader- Parameters:
in- the DirectoryReader to wrap- Returns:
- the wrapped DirectoryReader
- Throws:
IOException
-
getReaderCacheHelper
Description copied from class:IndexReaderOptional method: Return aIndexReader.CacheHelperthat can be used to cache based on the content of this reader. Two readers that have different data or different sets of deleted documents will be considered different.A return value of
nullindicates that this reader is not suited for caching, which is typically the case for short-lived wrappers that alter the content of the wrapped reader.- Specified by:
getReaderCacheHelperin classIndexReader
-
wrap
- Throws:
IOException
-
assertDocCounts
-