Package org.apache.lucene.codecs.memory
Class FSTTermsReader
- java.lang.Object
-
- org.apache.lucene.index.Fields
-
- org.apache.lucene.codecs.FieldsProducer
-
- org.apache.lucene.codecs.memory.FSTTermsReader
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,java.lang.Iterable<java.lang.String>,Accountable
public class FSTTermsReader extends FieldsProducer
FST-based terms dictionary reader. The FST directly maps each term and its metadata, it is memory resident.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classFSTTermsReader.TermsReader
-
Field Summary
Fields Modifier and Type Field Description private static longBASE_RAM_BYTES_USED(package private) java.util.TreeMap<java.lang.String,FSTTermsReader.TermsReader>fields(package private) PostingsReaderBasepostingsReader-
Fields inherited from class org.apache.lucene.index.Fields
EMPTY_ARRAY
-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Constructor Summary
Constructors Constructor Description FSTTermsReader(SegmentReadState state, PostingsReaderBase postingsReader)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidcheckFieldSummary(SegmentInfo info, IndexInput in, FSTTermsReader.TermsReader field, FSTTermsReader.TermsReader previous)voidcheckIntegrity()Checks consistency of this reader.voidclose()java.util.Collection<Accountable>getChildResources()Returns nested resources of this class.java.util.Iterator<java.lang.String>iterator()Returns an iterator that will step through all fields names.longramBytesUsed()Return the memory usage of this object in bytes.private voidseekDir(IndexInput in)intsize()Returns the number of fields or -1 if the number of distinct field names is unknown.Termsterms(java.lang.String field)Get theTermsfor this field.java.lang.StringtoString()(package private) static <T> voidwalk(FST<T> fst)-
Methods inherited from class org.apache.lucene.codecs.FieldsProducer
getMergeInstance
-
-
-
-
Field Detail
-
fields
final java.util.TreeMap<java.lang.String,FSTTermsReader.TermsReader> fields
-
postingsReader
final PostingsReaderBase postingsReader
-
BASE_RAM_BYTES_USED
private static final long BASE_RAM_BYTES_USED
-
-
Constructor Detail
-
FSTTermsReader
public FSTTermsReader(SegmentReadState state, PostingsReaderBase postingsReader) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
seekDir
private void seekDir(IndexInput in) throws java.io.IOException
- Throws:
java.io.IOException
-
checkFieldSummary
private void checkFieldSummary(SegmentInfo info, IndexInput in, FSTTermsReader.TermsReader field, FSTTermsReader.TermsReader previous) throws java.io.IOException
- Throws:
java.io.IOException
-
iterator
public java.util.Iterator<java.lang.String> iterator()
Description copied from class:FieldsReturns an iterator that will step through all fields names. This will not return null.
-
terms
public Terms terms(java.lang.String field) throws java.io.IOException
Description copied from class:FieldsGet theTermsfor this field. This will return null if the field does not exist.
-
size
public int size()
Description copied from class:FieldsReturns the number of fields or -1 if the number of distinct field names is unknown. If >= 0,Fields.iterator()will return as many field names.
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classFieldsProducer- Throws:
java.io.IOException
-
walk
static <T> void walk(FST<T> fst) throws java.io.IOException
- Throws:
java.io.IOException
-
ramBytesUsed
public long ramBytesUsed()
Description copied from interface:AccountableReturn the memory usage of this object in bytes. Negative values are illegal.
-
getChildResources
public java.util.Collection<Accountable> getChildResources()
Description copied from interface:AccountableReturns nested resources of this class. The result should be a point-in-time snapshot (to avoid race conditions).- See Also:
Accountables
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
checkIntegrity
public void checkIntegrity() throws java.io.IOExceptionDescription copied from class:FieldsProducerChecks consistency of this reader.Note that this may be costly in terms of I/O, e.g. may involve computing a checksum value against large data files.
- Specified by:
checkIntegrityin classFieldsProducer- Throws:
java.io.IOException
-
-