Class DeltaBaseTermStateSerializer
- java.lang.Object
-
- org.apache.lucene.codecs.uniformsplit.DeltaBaseTermStateSerializer
-
- All Implemented Interfaces:
Accountable
public class DeltaBaseTermStateSerializer extends java.lang.Object implements Accountable
TermStateserializer which encodes each file pointer as a delta relative to a base file pointer. It differs fromLucene84PostingsWriter.encodeTerm(org.apache.lucene.store.DataOutput, org.apache.lucene.index.FieldInfo, org.apache.lucene.codecs.BlockTermState, boolean)which encodes each file pointer as a delta relative to the previous file pointer.It automatically sets the base file pointer to the first valid file pointer for doc start FP, pos start FP, pay start FP. These base file pointers have to be
resetby the caller before starting to write a new block.
-
-
Field Summary
Fields Modifier and Type Field Description protected longbaseDocStartFPprotected longbasePayStartFPprotected longbasePosStartFPprivate static longINT_BLOCK_TERM_STATE_RAM_USAGEprivate static longRAM_USAGE-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Constructor Summary
Constructors Constructor Description DeltaBaseTermStateSerializer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description longgetBaseDocStartFP()longgetBasePayStartFP()longgetBasePosStartFP()longramBytesUsed()Return the memory usage of this object in bytes.static longramBytesUsed(TermState termState)BlockTermStatereadTermState(long baseDocStartFP, long basePosStartFP, long basePayStartFP, DataInput termStatesInput, FieldInfo fieldInfo, BlockTermState reuse)Reads aBlockTermStatefrom the providedDataInput.protected Lucene84PostingsFormat.IntBlockTermStatereset(Lucene84PostingsFormat.IntBlockTermState termState)voidresetBaseStartFP()Resets the base file pointers to 0.voidwriteTermState(DataOutput termStatesOutput, FieldInfo fieldInfo, BlockTermState termState)Writes aBlockTermStateto the providedDataOutput.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
-
-
-
Method Detail
-
resetBaseStartFP
public void resetBaseStartFP()
Resets the base file pointers to 0. This method has to be called before starting to write a new block.
-
getBaseDocStartFP
public long getBaseDocStartFP()
- Returns:
- The base doc start file pointer. It is the file pointer of the first
TermStatewritten afterresetBaseStartFP()is called.
-
getBasePosStartFP
public long getBasePosStartFP()
- Returns:
- The base position start file pointer. It is the file pointer of the first
TermStatewritten afterresetBaseStartFP()is called.
-
getBasePayStartFP
public long getBasePayStartFP()
- Returns:
- The base payload start file pointer. It is the file pointer of the first
TermStatewritten afterresetBaseStartFP()is called.
-
writeTermState
public void writeTermState(DataOutput termStatesOutput, FieldInfo fieldInfo, BlockTermState termState) throws java.io.IOException
Writes aBlockTermStateto the providedDataOutput.Simpler variant of
Lucene84PostingsWriter.encodeTerm(DataOutput, FieldInfo, BlockTermState, boolean).- Throws:
java.io.IOException
-
readTermState
public BlockTermState readTermState(long baseDocStartFP, long basePosStartFP, long basePayStartFP, DataInput termStatesInput, FieldInfo fieldInfo, BlockTermState reuse) throws java.io.IOException
Reads aBlockTermStatefrom the providedDataInput.Simpler variant of
Lucene84PostingsReader.decodeTerm(DataInput, FieldInfo, BlockTermState, boolean).- Parameters:
reuse-BlockTermStateto reuse; or null to create a new one.- Throws:
java.io.IOException
-
reset
protected Lucene84PostingsFormat.IntBlockTermState reset(Lucene84PostingsFormat.IntBlockTermState termState)
-
ramBytesUsed
public long ramBytesUsed()
Description copied from interface:AccountableReturn the memory usage of this object in bytes. Negative values are illegal.- Specified by:
ramBytesUsedin interfaceAccountable
-
-