Class SoftDeletesDirectoryReaderWrapper

    • Field Detail

      • field

        private final java.lang.String field
    • Constructor Detail

      • SoftDeletesDirectoryReaderWrapper

        public SoftDeletesDirectoryReaderWrapper​(DirectoryReader in,
                                                 java.lang.String field)
                                          throws java.io.IOException
        Creates a new soft deletes wrapper.
        Parameters:
        in - the incoming directory reader
        field - the soft deletes field
        Throws:
        java.io.IOException
    • Method Detail

      • doWrapDirectoryReader

        protected DirectoryReader doWrapDirectoryReader​(DirectoryReader in)
                                                 throws java.io.IOException
        Description copied from class: FilterDirectoryReader
        Called 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:
        doWrapDirectoryReader in class FilterDirectoryReader
        Parameters:
        in - the DirectoryReader to wrap
        Returns:
        the wrapped DirectoryReader
        Throws:
        java.io.IOException
      • getReaderCacheHelper

        public IndexReader.CacheHelper getReaderCacheHelper()
        Description copied from class: IndexReader
        Optional method: Return a IndexReader.CacheHelper that 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 null indicates 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:
        getReaderCacheHelper in class IndexReader
      • wrap

        static LeafReader wrap​(LeafReader reader,
                               java.lang.String field)
                        throws java.io.IOException
        Throws:
        java.io.IOException
      • assertDocCounts

        private static boolean assertDocCounts​(int expectedNumDocs,
                                               int numSoftDeletes,
                                               LeafReader reader)