Class IDVersionPostingsWriter
- java.lang.Object
-
- org.apache.lucene.codecs.PostingsWriterBase
-
- org.apache.lucene.codecs.PushPostingsWriterBase
-
- org.apache.lucene.codecs.idversion.IDVersionPostingsWriter
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
final class IDVersionPostingsWriter extends PushPostingsWriterBase
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static IDVersionTermStateemptyState(package private) intlastDocIDprivate longlastEncodedVersionprivate intlastPosition(package private) IDVersionTermStatelastStateprivate longlastVersionprivate BitsliveDocs(package private) static java.lang.StringTERMS_CODEC(package private) static intVERSION_CURRENT(package private) static intVERSION_START-
Fields inherited from class org.apache.lucene.codecs.PushPostingsWriterBase
fieldInfo, indexOptions, writeFreqs, writeOffsets, writePayloads, writePositions
-
-
Constructor Summary
Constructors Constructor Description IDVersionPostingsWriter(Bits liveDocs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddPosition(int position, BytesRef payload, int startOffset, int endOffset)Add a new position and payload, and start/end offset.voidclose()voidencodeTerm(DataOutput out, FieldInfo fieldInfo, BlockTermState _state, boolean absolute)Encode metadata as long[] and byte[].voidfinishDoc()Called when we are done adding positions and payloads for each doc.voidfinishTerm(BlockTermState _state)Called when we are done adding docs to this termvoidinit(IndexOutput termsOut, SegmentWriteState state)Called once after startup, before any terms have been added.BlockTermStatenewTermState()Return a newly created empty TermStatevoidsetField(FieldInfo fieldInfo)Sets the current field for writing, and returns the fixed length of long[] metadata (which is fixed per field), called when the writing switches to another field.voidstartDoc(int docID, int termDocFreq)Adds a new doc in this term.voidstartTerm(NumericDocValues norms)Start a new term.-
Methods inherited from class org.apache.lucene.codecs.PushPostingsWriterBase
writeTerm
-
-
-
-
Field Detail
-
TERMS_CODEC
static final java.lang.String TERMS_CODEC
- See Also:
- Constant Field Values
-
VERSION_START
static final int VERSION_START
- See Also:
- Constant Field Values
-
VERSION_CURRENT
static final int VERSION_CURRENT
- See Also:
- Constant Field Values
-
emptyState
static final IDVersionTermState emptyState
-
lastState
IDVersionTermState lastState
-
lastDocID
int lastDocID
-
lastPosition
private int lastPosition
-
lastVersion
private long lastVersion
-
liveDocs
private final Bits liveDocs
-
lastEncodedVersion
private long lastEncodedVersion
-
-
Constructor Detail
-
IDVersionPostingsWriter
public IDVersionPostingsWriter(Bits liveDocs)
-
-
Method Detail
-
newTermState
public BlockTermState newTermState()
Description copied from class:PushPostingsWriterBaseReturn a newly created empty TermState- Specified by:
newTermStatein classPushPostingsWriterBase
-
init
public void init(IndexOutput termsOut, SegmentWriteState state) throws java.io.IOException
Description copied from class:PostingsWriterBaseCalled once after startup, before any terms have been added. Implementations typically write a header to the providedtermsOut.- Specified by:
initin classPostingsWriterBase- Throws:
java.io.IOException
-
setField
public void setField(FieldInfo fieldInfo)
Description copied from class:PushPostingsWriterBaseSets the current field for writing, and returns the fixed length of long[] metadata (which is fixed per field), called when the writing switches to another field.- Overrides:
setFieldin classPushPostingsWriterBase
-
startTerm
public void startTerm(NumericDocValues norms)
Description copied from class:PushPostingsWriterBaseStart a new term. Note that a matching call toPushPostingsWriterBase.finishTerm(BlockTermState)is done, only if the term has at least one document.- Specified by:
startTermin classPushPostingsWriterBase
-
startDoc
public void startDoc(int docID, int termDocFreq) throws java.io.IOExceptionDescription copied from class:PushPostingsWriterBaseAdds a new doc in this term.freqwill be -1 when term frequencies are omitted for the field.- Specified by:
startDocin classPushPostingsWriterBase- Throws:
java.io.IOException
-
addPosition
public void addPosition(int position, BytesRef payload, int startOffset, int endOffset) throws java.io.IOExceptionDescription copied from class:PushPostingsWriterBaseAdd a new position and payload, and start/end offset. A null payload means no payload; a non-null payload with zero length also means no payload. Caller may reuse theBytesReffor the payload between calls (method must fully consume the payload).startOffsetandendOffsetwill be -1 when offsets are not indexed.- Specified by:
addPositionin classPushPostingsWriterBase- Throws:
java.io.IOException
-
finishDoc
public void finishDoc() throws java.io.IOExceptionDescription copied from class:PushPostingsWriterBaseCalled when we are done adding positions and payloads for each doc.- Specified by:
finishDocin classPushPostingsWriterBase- Throws:
java.io.IOException
-
finishTerm
public void finishTerm(BlockTermState _state) throws java.io.IOException
Called when we are done adding docs to this term- Specified by:
finishTermin classPushPostingsWriterBase- Throws:
java.io.IOException
-
encodeTerm
public void encodeTerm(DataOutput out, FieldInfo fieldInfo, BlockTermState _state, boolean absolute) throws java.io.IOException
Description copied from class:PostingsWriterBaseEncode metadata as long[] and byte[].absolutecontrols whether current term is delta encoded according to latest term. Usually elements inlongsare file pointers, so each one always increases when a new term is consumed.outis used to write generic bytes, which are not monotonic.- Specified by:
encodeTermin classPostingsWriterBase- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classPostingsWriterBase- Throws:
java.io.IOException
-
-