Package org.apache.lucene.index

# Class ExitableDirectoryReader.ExitableFilterAtomicReader

java.lang.Object
org.apache.lucene.index.IndexReader
org.apache.lucene.index.LeafReader
org.apache.lucene.index.FilterLeafReader
org.apache.lucene.index.ExitableDirectoryReader.ExitableFilterAtomicReader

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`

Enclosing class:
  `ExitableDirectoryReader`

public static class ExitableDirectoryReader.ExitableFilterAtomicReader extends FilterLeafReader
Wrapper class for another FilterAtomicReader. This is used by ExitableSubReaderWrapper.

## Nested Class Summary

## Nested classes/interfaces inherited from class org.apache.lucene.index.FilterLeafReader

`FilterLeafReader.FilterFields, FilterLeafReader.FilterPostingsEnum, FilterLeafReader.FilterTerms, FilterLeafReader.FilterTermsEnum`

## Nested classes/interfaces inherited from class org.apache.lucene.index.IndexReader

`IndexReader.CacheHelper, IndexReader.CacheKey, IndexReader.ClosedListener`

## Field Summary

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

`in`

## Constructor Summary

Constructors
Constructor
Description
`ExitableFilterAtomicReader(LeafReader in, QueryTimeout queryTimeout)`
Constructor *

## Method Summary

Modifier and Type
Method
Description
`BinaryDocValues`
`getBinaryDocValues(String field)`
Returns `BinaryDocValues` for this field, or null if no binary doc values were indexed for this field.
`ByteVectorValues`
`getByteVectorValues(String field)`
Returns `ByteVectorValues` for this field, or null if no `ByteVectorValues` were indexed.
`IndexReader.CacheHelper`
`getCoreCacheHelper()`
Optional method: Return a `IndexReader.CacheHelper` that can be used to cache based on the content of this leaf regardless of deletions.
`FloatVectorValues`
`getFloatVectorValues(String field)`
Returns `FloatVectorValues` for this field, or null if no `FloatVectorValues` were indexed.
`NumericDocValues`
`getNumericDocValues(String field)`
Returns `NumericDocValues` for this field, or null if no numeric doc values were indexed for this field.
`PointValues`
`getPointValues(String field)`
Returns the `PointValues` used for numeric or spatial searches for the given field, or null if there are no point fields.
`IndexReader.CacheHelper`
`getReaderCacheHelper()`
Optional method: Return a `IndexReader.CacheHelper` that can be used to cache based on the content of this reader.
`SortedDocValues`
`getSortedDocValues(String field)`
Returns `SortedDocValues` for this field, or null if no `SortedDocValues` were indexed for this field.
`SortedNumericDocValues`
`getSortedNumericDocValues(String field)`
Returns `SortedNumericDocValues` for this field, or null if no `SortedNumericDocValues` were indexed for this field.
`SortedSetDocValues`
`getSortedSetDocValues(String field)`
Returns `SortedSetDocValues` for this field, or null if no `SortedSetDocValues` were indexed for this field.
`void`
`searchNearestVectors(String field, byte[] target, KnnCollector knnCollector, Bits acceptDocs)`
Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function.
`void`
`searchNearestVectors(String field, float[] target, KnnCollector knnCollector, Bits acceptDocs)`
Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function.
`Terms`
`terms(String field)`
Returns the `Terms` index for this field, or null if it has none.

### Methods inherited from class org.apache.lucene.index.FilterLeafReader

`checkIntegrity, doClose, getDelegate, getDocValuesSkipper, getFieldInfos, getLiveDocs, getMetaData, getNormValues, maxDoc, numDocs, storedFields, termVectors, toString, unwrap`

### Methods inherited from class org.apache.lucene.index.LeafReader

`docFreq, getContext, getDocCount, getSumDocFreq, getSumTotalTermFreq, postings, postings, searchNearestVectors, searchNearestVectors, totalTermFreq`

### Methods inherited from class org.apache.lucene.index.IndexReader

`close, decRef, ensureOpen, equals, getRefCount, hasDeletions, hashCode, incRef, leaves, notifyReaderClosedListeners, numDeletedDocs, registerParentReader, tryIncRef`

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

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Constructor Details

### ExitableFilterAtomicReader

public ExitableFilterAtomicReader(LeafReader in, QueryTimeout queryTimeout)
Constructor *

## Method Details

### getPointValues

public PointValues getPointValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns the `PointValues` used for numeric or spatial searches for the given field, or null if there are no point fields.

Overrides:
  `getPointValues` in class `FilterLeafReader`
Throws:
  `IOException`

### terms

public Terms terms(String field) throws IOException
Description copied from class: `LeafReader`
Returns the `Terms` index for this field, or null if it has none.

Overrides:
  `terms` in class `FilterLeafReader`
Throws:
  `IOException`

### getReaderCacheHelper

public IndexReader.CacheHelper getReaderCacheHelper()
Description copied from class: `IndexReader`
Optional method: Return a `IndexReader.CacheHelper` that can be used to cache based on the content of this reader. Two readers that have different data or different sets of deleted documents will be considered different.

A return value of `null` indicates that this reader is not suited for caching, which is typically the case for short-lived wrappers that alter the content of the wrapped reader.

Specified by:
  `getReaderCacheHelper` in class `IndexReader`

### getCoreCacheHelper

public IndexReader.CacheHelper getCoreCacheHelper()
Description copied from class: `LeafReader`
Optional method: Return a `IndexReader.CacheHelper` that can be used to cache based on the content of this leaf regardless of deletions. Two readers that have the same data but different sets of deleted documents or doc values updates may be considered equal. Consider using `IndexReader.getReaderCacheHelper()` if you need deletions or dv updates to be taken into account.

A return value of `null` indicates that this reader is not suited for caching, which is typically the case for short-lived wrappers that alter the content of the wrapped leaf reader.

Specified by:
  `getCoreCacheHelper` in class `LeafReader`

### getNumericDocValues

public NumericDocValues getNumericDocValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `NumericDocValues` for this field, or null if no numeric doc values were indexed for this field. The returned instance should only be used by a single thread.

Overrides:
  `getNumericDocValues` in class `FilterLeafReader`
Throws:
  `IOException`

### getBinaryDocValues

public BinaryDocValues getBinaryDocValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `BinaryDocValues` for this field, or null if no binary doc values were indexed for this field. The returned instance should only be used by a single thread.

Overrides:
  `getBinaryDocValues` in class `FilterLeafReader`
Throws:
  `IOException`

### getSortedDocValues

public SortedDocValues getSortedDocValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `SortedDocValues` for this field, or null if no `SortedDocValues` were indexed for this field. The returned instance should only be used by a single thread.

Overrides:
  `getSortedDocValues` in class `FilterLeafReader`
Throws:
  `IOException`

### getSortedNumericDocValues

public SortedNumericDocValues getSortedNumericDocValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `SortedNumericDocValues` for this field, or null if no `SortedNumericDocValues` were indexed for this field. The returned instance should only be used by a single thread.

Overrides:
  `getSortedNumericDocValues` in class `FilterLeafReader`
Throws:
  `IOException`

### getSortedSetDocValues

public SortedSetDocValues getSortedSetDocValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `SortedSetDocValues` for this field, or null if no `SortedSetDocValues` were indexed for this field. The returned instance should only be used by a single thread.

Overrides:
  `getSortedSetDocValues` in class `FilterLeafReader`
Throws:
  `IOException`

### getFloatVectorValues

public FloatVectorValues getFloatVectorValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `FloatVectorValues` for this field, or null if no `FloatVectorValues` were indexed. The returned instance should only be used by a single thread.

Overrides:
  `getFloatVectorValues` in class `FilterLeafReader`
Throws:
  `IOException`

### getByteVectorValues

public ByteVectorValues getByteVectorValues(String field) throws IOException
Description copied from class: `LeafReader`
Returns `ByteVectorValues` for this field, or null if no `ByteVectorValues` were indexed. The returned instance should only be used by a single thread.

Overrides:
  `getByteVectorValues` in class `FilterLeafReader`
Throws:
  `IOException`

### searchNearestVectors

public void searchNearestVectors(String field, float[] target, KnnCollector knnCollector, Bits acceptDocs) throws IOException
Description copied from class: `LeafReader`
Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function. The score of each document is derived from the vector similarity in a way that ensures scores are positive and that a larger score corresponds to a higher ranking.

The search is allowed to be approximate, meaning the results are not guaranteed to be the true k closest neighbors. For large values of k (for example when k is close to the total number of documents), the search may also retrieve fewer than k documents.

The returned `TopDocs` will contain a `ScoreDoc` for each nearest neighbor, in order of their similarity to the query vector (decreasing scores). The `TotalHits` contains the number of documents visited during the search. If the search stopped early because it hit `visitedLimit`, it is indicated through the relation `TotalHits.Relation.GREATER_THAN_OR_EQUAL_TO`.

The behavior is undefined if the given field doesn't have KNN vectors enabled on its `FieldInfo`. The return value is never `null`.

Overrides:
  `searchNearestVectors` in class `FilterLeafReader`
Parameters:
  `field` - the vector field to search
  `target` - the vector-valued query
  `knnCollector` - collector with settings for gathering the vector results.
  `acceptDocs` - `Bits` that represents the allowed documents to match, or `null` if they are all allowed to match.
Throws:
  `IOException`

### searchNearestVectors

public void searchNearestVectors(String field, byte[] target, KnnCollector knnCollector, Bits acceptDocs) throws IOException
Description copied from class: `LeafReader`
Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function. The score of each document is derived from the vector similarity in a way that ensures scores are positive and that a larger score corresponds to a higher ranking.

The search is allowed to be approximate, meaning the results are not guaranteed to be the true k closest neighbors. For large values of k (for example when k is close to the total number of documents), the search may also retrieve fewer than k documents.

The returned `TopDocs` will contain a `ScoreDoc` for each nearest neighbor, in order of their similarity to the query vector (decreasing scores). The `TotalHits` contains the number of documents visited during the search. If the search stopped early because it hit `visitedLimit`, it is indicated through the relation `TotalHits.Relation.GREATER_THAN_OR_EQUAL_TO`.

The behavior is undefined if the given field doesn't have KNN vectors enabled on its `FieldInfo`. The return value is never `null`.

Overrides:
  `searchNearestVectors` in class `FilterLeafReader`
Parameters:
  `field` - the vector field to search
  `target` - the vector-valued query
  `knnCollector` - collector with settings for gathering the vector results.
  `acceptDocs` - `Bits` that represents the allowed documents to match, or `null` if they are all allowed to match.
Throws:
  `IOException`