|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.lucene.codecs.PostingsConsumer
org.apache.lucene.codecs.PostingsWriterBase
org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter
public final class Lucene41PostingsWriter
Concrete class that writes docId(maybe frq,pos,offset,payloads) list with postings format. Postings list for each term will be stored separately.
for details about skipping setting and postings layout.| Constructor Summary | |
|---|---|
Lucene41PostingsWriter(SegmentWriteState state)
Creates a postings writer with PackedInts.COMPACT |
|
Lucene41PostingsWriter(SegmentWriteState state,
float acceptableOverheadRatio)
Creates a postings writer with the specified PackedInts overhead ratio |
|
| Method Summary | |
|---|---|
void |
addPosition(int position,
BytesRef payload,
int startOffset,
int endOffset)
Add a new position & payload |
void |
close()
|
void |
encodeTerm(long[] longs,
DataOutput out,
FieldInfo fieldInfo,
BlockTermState _state,
boolean absolute)
Encode metadata as long[] and byte[]. |
void |
finishDoc()
Called when we are done adding positions & payloads for each doc. |
void |
finishTerm(BlockTermState _state)
Called when we are done adding docs to this term |
void |
init(IndexOutput termsOut)
Called once after startup, before any terms have been added. |
org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter.IntBlockTermState |
newTermState()
Return a newly created empty TermState |
int |
setField(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. |
void |
startDoc(int docID,
int termDocFreq)
Adds a new doc in this term. |
void |
startTerm()
Start a new term. |
| Methods inherited from class org.apache.lucene.codecs.PostingsConsumer |
|---|
merge |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public Lucene41PostingsWriter(SegmentWriteState state,
float acceptableOverheadRatio)
throws IOException
IOException
public Lucene41PostingsWriter(SegmentWriteState state)
throws IOException
PackedInts.COMPACT
IOException| Method Detail |
|---|
public org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter.IntBlockTermState newTermState()
PostingsWriterBase
newTermState in class PostingsWriterBase
public void init(IndexOutput termsOut)
throws IOException
PostingsWriterBasetermsOut.
init in class PostingsWriterBaseIOExceptionpublic int setField(FieldInfo fieldInfo)
PostingsWriterBase
setField in class PostingsWriterBasepublic void startTerm()
PostingsWriterBasePostingsWriterBase.finishTerm(BlockTermState) is done, only if the term has at least one
document.
startTerm in class PostingsWriterBase
public void startDoc(int docID,
int termDocFreq)
throws IOException
PostingsConsumerfreq will be -1 when term frequencies are omitted
for the field.
startDoc in class PostingsConsumerIOException
public void addPosition(int position,
BytesRef payload,
int startOffset,
int endOffset)
throws IOException
addPosition in class PostingsConsumerIOException
public void finishDoc()
throws IOException
PostingsConsumer
finishDoc in class PostingsConsumerIOException
public void finishTerm(BlockTermState _state)
throws IOException
finishTerm in class PostingsWriterBaseIOException
public void encodeTerm(long[] longs,
DataOutput out,
FieldInfo fieldInfo,
BlockTermState _state,
boolean absolute)
throws IOException
PostingsWriterBaseabsolute controls whether
current term is delta encoded according to latest term.
Usually elements in longs are file pointers, so each one always
increases when a new term is consumed. out is used to write generic
bytes, which are not monotonic.
NOTE: sometimes long[] might contain "don't care" values that are unused, e.g.
the pointer to postings list may not be defined for some terms but is defined
for others, if it is designed to inline some postings data in term dictionary.
In this case, the postings writer should always use the last value, so that each
element in metadata long[] remains monotonic.
encodeTerm in class PostingsWriterBaseIOException
public void close()
throws IOException
close in interface Closeableclose in class PostingsWriterBaseIOException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||