Class STBlockReader
java.lang.Object
org.apache.lucene.index.TermsEnum
org.apache.lucene.index.BaseTermsEnum
org.apache.lucene.codecs.uniformsplit.BlockReader
org.apache.lucene.codecs.uniformsplit.sharedterms.STBlockReader
- All Implemented Interfaces:
Accountable
,BytesRefIterator
- Direct Known Subclasses:
STMergingBlockReader
Reads terms blocks with the Shared Terms format.
- See Also:
- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.index.TermsEnum
TermsEnum.SeekStatus
-
Field Summary
Fields inherited from class org.apache.lucene.codecs.uniformsplit.BlockReader
blockDecoder, blockFirstLineStart, blockHeader, blockHeaderReader, blockInput, blockLine, blockLineReader, blockReadBuffer, blockStartFP, dictionaryBrowser, dictionaryBrowserSupplier, fieldMetadata, forcedTerm, lineIndexInBlock, postingsReader, scratchBlockBytes, scratchBlockLine, scratchTermState, termState, termStateForced, termStateSerializer, termStatesReadBuffer
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
Constructor Summary
ConstructorDescriptionSTBlockReader
(IndexDictionary.BrowserSupplier dictionaryBrowserSupplier, IndexInput blockInput, PostingsReaderBase postingsReader, FieldMetadata fieldMetadata, BlockDecoder blockDecoder, FieldInfos fieldInfos) -
Method Summary
Modifier and TypeMethodDescriptionprotected STBlockLine.Serializer
protected boolean
isBeyondLastTerm
(BytesRef searchedTerm, long blockStartFP) Indicates whether the searched term is beyond the last term of the field.next()
protected BytesRef
nextTerm()
Moves to the next term line and reads it, whichever are the corresponding fields.protected BlockTermState
Reads theBlockTermState
on the current line for this reader's field.boolean
Methods inherited from class org.apache.lucene.codecs.uniformsplit.BlockReader
clearTermState, compareToMiddleAndJump, createBlockHeaderSerializer, createDeltaBaseTermStateSerializer, decodeBlockBytesIfNeeded, docFreq, getOrCreateDictionaryBrowser, impacts, initializeBlockReadLazily, initializeHeader, isCurrentTerm, newCorruptIndexException, ord, postings, ramBytesUsed, readHeader, readLineInBlock, readTermStateIfNotRead, seekExact, seekExact, seekInBlock, seekInBlock, term, termState, totalTermFreq
Methods inherited from class org.apache.lucene.index.BaseTermsEnum
attributes
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
Field Details
-
fieldInfos
-
-
Constructor Details
-
STBlockReader
public STBlockReader(IndexDictionary.BrowserSupplier dictionaryBrowserSupplier, IndexInput blockInput, PostingsReaderBase postingsReader, FieldMetadata fieldMetadata, BlockDecoder blockDecoder, FieldInfos fieldInfos) throws IOException - Throws:
IOException
-
-
Method Details
-
next
- Specified by:
next
in interfaceBytesRefIterator
- Overrides:
next
in classBlockReader
- Throws:
IOException
-
nextTerm
Moves to the next term line and reads it, whichever are the corresponding fields. The term details are not read yet. They will be read only when needed withBlockReader.readTermStateIfNotRead()
.- Overrides:
nextTerm
in classBlockReader
- Returns:
- The read term bytes.
- Throws:
IOException
-
seekCeil
- Overrides:
seekCeil
in classBlockReader
- Throws:
IOException
-
seekExact
- Overrides:
seekExact
in classBlockReader
- Throws:
IOException
-
isBeyondLastTerm
Description copied from class:BlockReader
Indicates whether the searched term is beyond the last term of the field.- Overrides:
isBeyondLastTerm
in classBlockReader
blockStartFP
- The current block start file pointer.
-
createBlockLineSerializer
- Overrides:
createBlockLineSerializer
in classBlockReader
-
readTermState
Reads theBlockTermState
on the current line for this reader's field.- Overrides:
readTermState
in classBlockReader
- Returns:
- The
BlockTermState
; or null if the term does not occur for the field. - Throws:
IOException
-