Package org.apache.lucene.codecs
Class PostingsReaderBase
java.lang.Object
org.apache.lucene.codecs.PostingsReaderBase
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
Lucene40PostingsReader,Lucene41PostingsReader
The core terms dictionaries (BlockTermsReader,
BlockTreeTermsReader) interact with a single instance
of this class to manage creation of
DocsEnum and
DocsAndPositionsEnum instances. It provides an
IndexInput (termsIn) where this class may read any
previously stored data that it had written in its
corresponding PostingsWriterBase at indexing
time.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract voidclose()abstract voiddecodeTerm(long[] longs, DataInput in, FieldInfo fieldInfo, BlockTermState state, boolean absolute) Actually decode metadata for next termabstract DocsEnumdocs(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsEnum reuse, int flags) Must fully consume state, since after this call that TermState may be reused.abstract DocsAndPositionsEnumdocsAndPositions(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsAndPositionsEnum reuse, int flags) Must fully consume state, since after this call that TermState may be reused.abstract voidinit(IndexInput termsIn) Performs any initialization, such as reading and verifying the header from the provided terms dictionaryIndexInput.abstract BlockTermStateReturn a newly created empty TermStateabstract longReturns approximate RAM bytes used
-
Constructor Details
-
PostingsReaderBase
protected PostingsReaderBase()Sole constructor. (For invocation by subclass constructors, typically implicit.)
-
-
Method Details
-
init
Performs any initialization, such as reading and verifying the header from the provided terms dictionaryIndexInput.- Throws:
IOException
-
newTermState
Return a newly created empty TermState- Throws:
IOException
-
decodeTerm
public abstract void decodeTerm(long[] longs, DataInput in, FieldInfo fieldInfo, BlockTermState state, boolean absolute) throws IOException Actually decode metadata for next term -
docs
public abstract DocsEnum docs(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsEnum reuse, int flags) throws IOException Must fully consume state, since after this call that TermState may be reused.- Throws:
IOException
-
docsAndPositions
public abstract DocsAndPositionsEnum docsAndPositions(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsAndPositionsEnum reuse, int flags) throws IOException Must fully consume state, since after this call that TermState may be reused.- Throws:
IOException
-
ramBytesUsed
public abstract long ramBytesUsed()Returns approximate RAM bytes used -
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-