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(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)
Add a new position & payload, and start/end offset.
|
void |
close() |
void |
finishDoc()
Called when we are done adding positions & payloads
for each doc.
|
void |
finishTerm(TermStats stats)
Called when we are done adding docs to this term
|
void |
flushTermsBlock(int start,
int count)
Flush count terms starting at start "backwards", as a
block.
|
void |
setField(FieldInfo fieldInfo) |
void |
start(IndexOutput termsOut) |
void |
startDoc(int docID,
int termDocFreq)
Adds a new doc in this term.
|
void |
startTerm() |
mergepublic PulsingPostingsWriter(int maxPositions,
PostingsWriterBase wrappedPostingsWriter)
public void start(IndexOutput termsOut) throws IOException
start in class PostingsWriterBaseIOExceptionpublic void startTerm()
startTerm in class PostingsWriterBasepublic void setField(FieldInfo fieldInfo)
setField in class PostingsWriterBasepublic void startDoc(int docID,
int termDocFreq)
throws IOException
PostingsConsumerfreq will be -1 when term frequencies are omitted
for the field.startDoc in class PostingsConsumerIOExceptionpublic void addPosition(int position,
BytesRef payload,
int startOffset,
int endOffset)
throws IOException
PostingsConsumerBytesRef for the payload between calls
(method must fully consume the payload). startOffset
and endOffset will be -1 when offsets are not indexed.addPosition in class PostingsConsumerIOExceptionpublic void finishDoc()
throws IOException
PostingsConsumerfinishDoc in class PostingsConsumerIOExceptionpublic void finishTerm(TermStats stats) throws IOException
finishTerm in class PostingsWriterBaseIOExceptionpublic void close()
throws IOException
close in interface Closeableclose in class PostingsWriterBaseIOExceptionpublic void flushTermsBlock(int start,
int count)
throws IOException
PostingsWriterBaseflushTermsBlock in class PostingsWriterBaseIOExceptionCopyright © 2000-2012 Apache Software Foundation. All Rights Reserved.