Package org.apache.lucene.codecs
Class PostingsReaderBase
- java.lang.Object
-
- org.apache.lucene.codecs.PostingsReaderBase
-
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
Lucene912PostingsReader
public abstract class PostingsReaderBase extends Object implements Closeable
The core terms dictionaries (BlockTermsReader, BlockTreeTermsReader) interact with a single instance of this class to manage creation ofPostingsEnumandPostingsEnuminstances. It provides an IndexInput (termsIn) where this class may read any previously stored data that it had written in its correspondingPostingsWriterBaseat indexing time.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedPostingsReaderBase()Sole constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract voidcheckIntegrity()Checks consistency of this reader.abstract voidclose()abstract voiddecodeTerm(DataInput in, FieldInfo fieldInfo, BlockTermState state, boolean absolute)Actually decode metadata for next termabstract ImpactsEnumimpacts(FieldInfo fieldInfo, BlockTermState state, int flags)Return aImpactsEnumthat computes impacts withscorer.abstract voidinit(IndexInput termsIn, SegmentReadState state)Performs any initialization, such as reading and verifying the header from the provided terms dictionaryIndexInput.abstract BlockTermStatenewTermState()Return a newly created empty TermStateabstract PostingsEnumpostings(FieldInfo fieldInfo, BlockTermState state, PostingsEnum reuse, int flags)Must fully consume state, since after this call that TermState may be reused.
-
-
-
Method Detail
-
init
public abstract void init(IndexInput termsIn, SegmentReadState state) throws IOException
Performs any initialization, such as reading and verifying the header from the provided terms dictionaryIndexInput.- Throws:
IOException
-
newTermState
public abstract BlockTermState newTermState() throws IOException
Return a newly created empty TermState- Throws:
IOException
-
decodeTerm
public abstract void decodeTerm(DataInput in, FieldInfo fieldInfo, BlockTermState state, boolean absolute) throws IOException
Actually decode metadata for next term
-
postings
public abstract PostingsEnum postings(FieldInfo fieldInfo, BlockTermState state, PostingsEnum reuse, int flags) throws IOException
Must fully consume state, since after this call that TermState may be reused.- Throws:
IOException
-
impacts
public abstract ImpactsEnum impacts(FieldInfo fieldInfo, BlockTermState state, int flags) throws IOException
Return aImpactsEnumthat computes impacts withscorer.- Throws:
IOException- See Also:
postings(FieldInfo, BlockTermState, PostingsEnum, int)
-
checkIntegrity
public abstract void checkIntegrity() throws IOExceptionChecks consistency of this reader.Note that this may be costly in terms of I/O, e.g. may involve computing a checksum value against large data files.
- Throws:
IOException- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
close
public abstract void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
-