Package org.apache.lucene.codecs.uniformsplit.sharedterms

# Class STUniformSplitTermsReader

java.lang.Object
org.apache.lucene.index.Fields
org.apache.lucene.codecs.FieldsProducer
org.apache.lucene.codecs.uniformsplit.UniformSplitTermsReader
org.apache.lucene.codecs.uniformsplit.sharedterms.STUniformSplitTermsReader

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`, `Iterable<String>`

public class STUniformSplitTermsReader extends UniformSplitTermsReader
A block-based terms index and dictionary based on the Uniform Split technique, and sharing all the fields terms in the same dictionary, with all the fields of a term in the same block line.

See Also:
  - `STUniformSplitTermsWriter`
WARNING: This API is experimental and might change in incompatible ways in the next release.

## Field Summary

### Fields inherited from class org.apache.lucene.codecs.uniformsplit.UniformSplitTermsReader

`blockInput, dictionaryInput, fieldToTermsMap, postingsReader, sortedFieldNames, version`

### Fields inherited from class org.apache.lucene.index.Fields

`EMPTY_ARRAY`

## Constructor Summary

Constructors
Modifier
Constructor
Description
``
`STUniformSplitTermsReader(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder, boolean dictionaryOnHeap)`
`protected`
`STUniformSplitTermsReader(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder, boolean dictionaryOnHeap, FieldMetadata.Serializer fieldMetadataReader, String codecName, int versionStart, int versionCurrent, String termsBlocksExtension, String dictionaryExtension)`

## Method Summary

Modifier and Type
Method
Description
`protected FieldMetadata`
`createUnionFieldMetadata(Iterable<FieldMetadata> fieldMetadataIterable)`
Creates a virtual `FieldMetadata` that is the union of the given `FieldMetadata`s.
`protected void`
`fillFieldMap(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder, boolean dictionaryOnHeap, IndexInput dictionaryInput, IndexInput blockInput, Collection<FieldMetadata> fieldMetadataCollection, FieldInfos fieldInfos)`

### Methods inherited from class org.apache.lucene.codecs.uniformsplit.UniformSplitTermsReader

`checkIntegrity, close, createDictionaryBrowserSupplier, iterator, readEncodedFieldsMetadata, readFieldsMetadata, readUnencodedFieldsMetadata, seekFieldsMetadata, size, terms`

### Methods inherited from class org.apache.lucene.codecs.FieldsProducer

`getMergeInstance`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

## Constructor Details

### STUniformSplitTermsReader

public STUniformSplitTermsReader(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder, boolean dictionaryOnHeap) throws IOException

Throws:
  `IOException`
See Also:
  - `UniformSplitTermsReader(PostingsReaderBase, SegmentReadState, BlockDecoder, boolean)`

### STUniformSplitTermsReader

protected STUniformSplitTermsReader(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder, boolean dictionaryOnHeap, FieldMetadata.Serializer fieldMetadataReader, String codecName, int versionStart, int versionCurrent, String termsBlocksExtension, String dictionaryExtension) throws IOException

Throws:
  `IOException`
See Also:
  - `UniformSplitTermsReader(PostingsReaderBase, SegmentReadState, BlockDecoder, boolean)`

## Method Details

### fillFieldMap

protected void fillFieldMap(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder, boolean dictionaryOnHeap, IndexInput dictionaryInput, IndexInput blockInput, Collection<FieldMetadata> fieldMetadataCollection, FieldInfos fieldInfos) throws IOException

Overrides:
  `fillFieldMap` in class `UniformSplitTermsReader`
Throws:
  `IOException`

### createUnionFieldMetadata

protected FieldMetadata createUnionFieldMetadata(Iterable<FieldMetadata> fieldMetadataIterable)
Creates a virtual `FieldMetadata` that is the union of the given `FieldMetadata`s. Its `FieldMetadata.getFirstBlockStartFP()`, `FieldMetadata.getLastBlockStartFP()` and `FieldMetadata.getLastTerm()` are respectively the min and max among the `FieldMetadata`s provided as parameter.