java.lang.Object
org.apache.lucene.index.Fields
org.apache.lucene.codecs.FieldsProducer
org.apache.lucene.codecs.blockterms.BlockTermsReader
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Iterable<String>
Handles a terms dict, but decouples all details of doc/freqs/positions reading to an instance of
PostingsReaderBase
. This class is reusable for codecs that use a different format for
docs/freqs/positions (though codecs are also free to make their own terms dict impl).
This class also interacts with an instance of TermsIndexReaderBase
, to abstract away
the specific implementation of the terms dict index.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final long
private final TreeMap<String,
BlockTermsReader.FieldReader> private final IndexInput
private TermsIndexReaderBase
private final PostingsReaderBase
Fields inherited from class org.apache.lucene.index.Fields
EMPTY_ARRAY
-
Constructor Summary
ConstructorsConstructorDescriptionBlockTermsReader
(TermsIndexReaderBase indexReader, PostingsReaderBase postingsReader, SegmentReadState state) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Checks consistency of this reader.void
close()
iterator()
Returns an iterator that will step through all fields names.private void
seekDir
(IndexInput input) int
size()
Returns the number of fields or -1 if the number of distinct field names is unknown.Get theTerms
for this field.toString()
Methods inherited from class org.apache.lucene.codecs.FieldsProducer
getMergeInstance
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
in
-
postingsReader
-
fields
-
indexReader
-
FIELD_READER_RAM_BYTES_USED
private static final long FIELD_READER_RAM_BYTES_USED
-
-
Constructor Details
-
BlockTermsReader
public BlockTermsReader(TermsIndexReaderBase indexReader, PostingsReaderBase postingsReader, SegmentReadState state) throws IOException - Throws:
IOException
-
-
Method Details
-
seekDir
- Throws:
IOException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classFieldsProducer
- Throws:
IOException
-
iterator
Description copied from class:Fields
Returns an iterator that will step through all fields names. This will not return null. -
terms
Description copied from class:Fields
Get theTerms
for this field. This will return null if the field does not exist.- Specified by:
terms
in classFields
- Throws:
IOException
-
size
public int size()Description copied from class:Fields
Returns 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. -
toString
-
checkIntegrity
Description copied from class:FieldsProducer
Checks 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:
checkIntegrity
in classFieldsProducer
- Throws:
IOException
-