org.apache.lucene.index

Class BaseCompositeReader<R extends IndexReader>

  • All Implemented Interfaces:
    Closeable, AutoCloseable
    Direct Known Subclasses:
    DirectoryReader, MultiReader, ParallelCompositeReader


    public abstract class BaseCompositeReader<R extends IndexReader>
    extends CompositeReader
    Base class for implementing CompositeReaders based on an array of sub-readers. The implementing class has to add code for correctly refcounting and closing the sub-readers.

    User code will most likely use MultiReader to build a composite reader on a set of sub-readers (like several DirectoryReaders).

    For efficiency, in this API documents are often referred to via document numbers, non-negative integers which each name a unique document in the index. These document numbers are ephemeral -- they may change as documents are added to and deleted from an index. Clients should thus not rely on a given document having the same number between sessions.

    NOTE: IndexReader instances are completely thread safe, meaning multiple threads can call any of its methods, concurrently. If your application requires external synchronization, you should not synchronize on the IndexReader instance; use your own (non-Lucene) objects instead.

    See Also:
    MultiReader