public final class PulsingPostingsWriter extends PostingsWriterBase
Wraps another postings implementation and decides (based on total number of occurrences), whether a terms postings should be inlined into the term dictionary, or passed through to the wrapped writer.
Constructor and Description |
---|
PulsingPostingsWriter(SegmentWriteState state,
int maxPositions,
PostingsWriterBase wrappedPostingsWriter)
If the total number of positions (summed across all docs
for this term) is <= maxPositions, then the postings are
inlined into terms dict
|
Modifier and Type | Method and Description |
---|---|
void |
addPosition(int position,
BytesRef payload,
int startOffset,
int endOffset) |
void |
close() |
void |
encodeTerm(long[] empty,
DataOutput out,
FieldInfo fieldInfo,
BlockTermState _state,
boolean absolute) |
void |
finishDoc() |
void |
finishTerm(BlockTermState _state)
Called when we are done adding docs to this term
|
void |
init(IndexOutput termsOut) |
BlockTermState |
newTermState() |
int |
setField(FieldInfo fieldInfo) |
void |
startDoc(int docID,
int termDocFreq) |
void |
startTerm() |
merge
public PulsingPostingsWriter(SegmentWriteState state, int maxPositions, PostingsWriterBase wrappedPostingsWriter)
public void init(IndexOutput termsOut) throws IOException
init
in class PostingsWriterBase
IOException
public BlockTermState newTermState() throws IOException
newTermState
in class PostingsWriterBase
IOException
public void startTerm()
startTerm
in class PostingsWriterBase
public int setField(FieldInfo fieldInfo)
setField
in class PostingsWriterBase
public void startDoc(int docID, int termDocFreq) throws IOException
startDoc
in class PostingsConsumer
IOException
public void addPosition(int position, BytesRef payload, int startOffset, int endOffset) throws IOException
addPosition
in class PostingsConsumer
IOException
public void finishDoc() throws IOException
finishDoc
in class PostingsConsumer
IOException
public void finishTerm(BlockTermState _state) throws IOException
finishTerm
in class PostingsWriterBase
IOException
public void encodeTerm(long[] empty, DataOutput out, FieldInfo fieldInfo, BlockTermState _state, boolean absolute) throws IOException
encodeTerm
in class PostingsWriterBase
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class PostingsWriterBase
IOException
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.