final class CompletionFieldsProducer extends FieldsProducer
Completion index (.cmp) is opened and read at instantiation to read in SuggestField
numbers and their FST offsets in the Completion dictionary (.lkp).
Completion dictionary (.lkp) is opened at instantiation and a field's FST is loaded
into memory the first time it is requested via terms(String).
NOTE: Only the footer is validated for Completion dictionary (.lkp) and not the checksum due to random access pattern and checksum validation being too costly at instantiation
| Modifier and Type | Field and Description |
|---|---|
private FieldsProducer |
delegateFieldsProducer |
private IndexInput |
dictIn |
private java.util.Map<java.lang.String,CompletionsTermsReader> |
readers |
EMPTY_ARRAY| Modifier | Constructor and Description |
|---|---|
private |
CompletionFieldsProducer(FieldsProducer delegateFieldsProducer,
java.util.Map<java.lang.String,CompletionsTermsReader> readers) |
(package private) |
CompletionFieldsProducer(java.lang.String codecName,
SegmentReadState state,
CompletionPostingsFormat.FSTLoadMode fstLoadMode) |
| Modifier and Type | Method and Description |
|---|---|
void |
checkIntegrity()
Checks consistency of this reader.
|
void |
close() |
java.util.Collection<Accountable> |
getChildResources()
Returns nested resources of this class.
|
FieldsProducer |
getMergeInstance()
Returns an instance optimized for merging.
|
java.util.Iterator<java.lang.String> |
iterator()
Returns an iterator that will step through all fields
names.
|
long |
ramBytesUsed()
Return the memory usage of this object in bytes.
|
int |
size()
Returns the number of fields or -1 if the number of
distinct field names is unknown.
|
Terms |
terms(java.lang.String field)
Get the
Terms for this field. |
private FieldsProducer delegateFieldsProducer
private java.util.Map<java.lang.String,CompletionsTermsReader> readers
private IndexInput dictIn
private CompletionFieldsProducer(FieldsProducer delegateFieldsProducer, java.util.Map<java.lang.String,CompletionsTermsReader> readers)
CompletionFieldsProducer(java.lang.String codecName,
SegmentReadState state,
CompletionPostingsFormat.FSTLoadMode fstLoadMode)
throws java.io.IOException
java.io.IOExceptionpublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class FieldsProducerjava.io.IOExceptionpublic void checkIntegrity()
throws java.io.IOException
FieldsProducerNote that this may be costly in terms of I/O, e.g. may involve computing a checksum value against large data files.
checkIntegrity in class FieldsProducerjava.io.IOExceptionpublic FieldsProducer getMergeInstance()
FieldsProducerFieldsProducer.getMergeInstance().
The default implementation returns this
getMergeInstance in class FieldsProducerpublic long ramBytesUsed()
Accountablepublic java.util.Collection<Accountable> getChildResources()
AccountableAccountablespublic java.util.Iterator<java.lang.String> iterator()
Fieldspublic Terms terms(java.lang.String field) throws java.io.IOException
FieldsTerms for this field. This will return
null if the field does not exist.public int size()
FieldsFields.iterator() will return as many field names.