Module org.apache.lucene.sandbox
Class IDVersionPostingsWriter
java.lang.Object
org.apache.lucene.codecs.PostingsWriterBase
org.apache.lucene.codecs.PushPostingsWriterBase
org.apache.lucene.sandbox.codecs.idversion.IDVersionPostingsWriter
- All Implemented Interfaces:
Closeable,AutoCloseable
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final IDVersionTermState(package private) intprivate longprivate int(package private) IDVersionTermStateprivate longprivate final Bits(package private) static final String(package private) static final int(package private) static final intFields inherited from class org.apache.lucene.codecs.PushPostingsWriterBase
fieldInfo, indexOptions, writeFreqs, writeOffsets, writePayloads, writePositions -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddPosition(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[].voidCalled 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.Return a newly created empty TermStatevoidSets 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 Details
-
TERMS_CODEC
- See Also:
-
VERSION_START
static final int VERSION_START- See Also:
-
VERSION_CURRENT
static final int VERSION_CURRENT- See Also:
-
emptyState
-
lastState
IDVersionTermState lastState -
lastDocID
int lastDocID -
lastPosition
private int lastPosition -
lastVersion
private long lastVersion -
liveDocs
-
lastEncodedVersion
private long lastEncodedVersion
-
-
Constructor Details
-
IDVersionPostingsWriter
-
-
Method Details
-
newTermState
Description copied from class:PushPostingsWriterBaseReturn a newly created empty TermState- Specified by:
newTermStatein classPushPostingsWriterBase
-
init
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:
IOException
-
setField
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
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
Description 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:
IOException
-
addPosition
public void addPosition(int position, BytesRef payload, int startOffset, int endOffset) throws IOException Description 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:
IOException
-
finishDoc
Description copied from class:PushPostingsWriterBaseCalled when we are done adding positions and payloads for each doc.- Specified by:
finishDocin classPushPostingsWriterBase- Throws:
IOException
-
finishTerm
Called when we are done adding docs to this term- Specified by:
finishTermin classPushPostingsWriterBase- Throws:
IOException
-
encodeTerm
public void encodeTerm(DataOutput out, FieldInfo fieldInfo, BlockTermState _state, boolean absolute) throws 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:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classPostingsWriterBase- Throws:
IOException
-