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 void
close()
abstract void
decodeTerm
(long[] longs, DataInput in, FieldInfo fieldInfo, BlockTermState state, boolean absolute) Actually decode metadata for next termabstract DocsEnum
docs
(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsEnum reuse, int flags) Must fully consume state, since after this call that TermState may be reused.abstract DocsAndPositionsEnum
docsAndPositions
(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsAndPositionsEnum reuse, int flags) Must fully consume state, since after this call that TermState may be reused.abstract void
init
(IndexInput termsIn) Performs any initialization, such as reading and verifying the header from the provided terms dictionaryIndexInput
.abstract BlockTermState
Return a newly created empty TermStateabstract long
Returns 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:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-