org.apache.lucene.index

## Class CodecReader

- java.lang.Object
- - org.apache.lucene.index.IndexReader
  - - org.apache.lucene.index.LeafReader
    - - org.apache.lucene.index.CodecReader

All Implemented Interfaces:
  Closeable, AutoCloseable, Accountable

Direct Known Subclasses:
  FilterCodecReader, SegmentReader

    public abstract class CodecReader
    extends LeafReader
    implements Accountable

LeafReader implemented by codec APIs.

### Nested Class Summary

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

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

### Constructor Summary

Constructors
`protected` `CodecReader()` Sole constructor.

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`void` `checkIntegrity()` Checks consistency of this reader.
`protected void` `doClose()` Implements close.
`void` `document(int docID, StoredFieldVisitor visitor)` Expert: visits the fields of a stored document, for custom processing/loading of each field.
`BinaryDocValues` `getBinaryDocValues(String field)` Returns `BinaryDocValues` for this field, or null if no binary doc values were indexed for this field.
`Collection<Accountable>` `getChildResources()` Returns nested resources of this class.
`abstract DocValuesProducer` `getDocValuesReader()` Expert: retrieve underlying DocValuesProducer
`abstract StoredFieldsReader` `getFieldsReader()` Expert: retrieve thread-private StoredFieldsReader
`abstract NormsProducer` `getNormsReader()` Expert: retrieve underlying NormsProducer
`NumericDocValues` `getNormValues(String field)` Returns `NumericDocValues` representing norms for this field, or null if no `NumericDocValues` were indexed.
`NumericDocValues` `getNumericDocValues(String field)` Returns `NumericDocValues` for this field, or null if no numeric doc values were indexed for this field.
`abstract PointsReader` `getPointsReader()` Expert: retrieve underlying PointsReader
`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.
`abstract FieldsProducer` `getPostingsReader()` Expert: retrieve underlying FieldsProducer
`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.
`Fields` `getTermVectors(int docID)` Retrieve term vectors for this document, or null if term vectors were not indexed.
`abstract TermVectorsReader` `getTermVectorsReader()` Expert: retrieve thread-private TermVectorsReader
`long` `ramBytesUsed()` Return the memory usage of this object in bytes.
`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.LeafReader

`docFreq, getContext, getCoreCacheHelper, getDocCount, getFieldInfos, getLiveDocs, getMetaData, getSumDocFreq, getSumTotalTermFreq, postings, postings, totalTermFreq`

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

`close, decRef, document, document, ensureOpen, equals, getReaderCacheHelper, getRefCount, getTermVector, hasDeletions, hashCode, incRef, leaves, maxDoc, numDeletedDocs, numDocs, registerParentReader, tryIncRef`

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

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

### Constructor Detail

#### CodecReader

    protected CodecReader()

Sole constructor. (For invocation by subclass constructors, typically implicit.)

### Method Detail

#### getFieldsReader

    public abstract StoredFieldsReader getFieldsReader()

Expert: retrieve thread-private StoredFieldsReader

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

#### getTermVectorsReader

    public abstract TermVectorsReader getTermVectorsReader()

Expert: retrieve thread-private TermVectorsReader

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

#### getNormsReader

    public abstract NormsProducer getNormsReader()

Expert: retrieve underlying NormsProducer

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

#### getDocValuesReader

    public abstract DocValuesProducer getDocValuesReader()

Expert: retrieve underlying DocValuesProducer

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

#### getPostingsReader

    public abstract FieldsProducer getPostingsReader()

Expert: retrieve underlying FieldsProducer

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

#### getPointsReader

    public abstract PointsReader getPointsReader()

Expert: retrieve underlying PointsReader

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

#### document

    public final void document(int docID,
                               StoredFieldVisitor visitor)
                        throws IOException

Description copied from class: `IndexReader`
Expert: visits the fields of a stored document, for custom processing/loading of each field. If you simply want to load all fields, use `IndexReader.document(int)`. If you want to load a subset, use `DocumentStoredFieldVisitor`.

Specified by:
  `document` in class `IndexReader`
Throws:
  `IOException`

#### getTermVectors

    public final Fields getTermVectors(int docID)
                                throws IOException

Description copied from class: `IndexReader`
Retrieve term vectors for this document, or null if term vectors were not indexed. The returned Fields instance acts like a single-document inverted index (the docID will be 0).

Specified by:
  `getTermVectors` in class `IndexReader`
Throws:
  `IOException`

#### terms

    public final Terms terms(String field)
                      throws IOException

Description copied from class: `LeafReader`
Returns the `Terms` index for this field, or null if it has none.

Specified by:
  `terms` in class `LeafReader`
Throws:
  `IOException`

#### getNumericDocValues

    public final 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.

Specified by:
  `getNumericDocValues` in class `LeafReader`
Throws:
  `IOException`

#### getBinaryDocValues

    public final 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.

Specified by:
  `getBinaryDocValues` in class `LeafReader`
Throws:
  `IOException`

#### getSortedDocValues

    public final 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.

Specified by:
  `getSortedDocValues` in class `LeafReader`
Throws:
  `IOException`

#### getSortedNumericDocValues

    public final 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.

Specified by:
  `getSortedNumericDocValues` in class `LeafReader`
Throws:
  `IOException`

#### getSortedSetDocValues

    public final 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.

Specified by:
  `getSortedSetDocValues` in class `LeafReader`
Throws:
  `IOException`

#### getNormValues

    public final NumericDocValues getNormValues(String field)
                                         throws IOException

Description copied from class: `LeafReader`
Returns `NumericDocValues` representing norms for this field, or null if no `NumericDocValues` were indexed. The returned instance should only be used by a single thread.

Specified by:
  `getNormValues` in class `LeafReader`
Throws:
  `IOException`

#### getPointValues

    public final 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.

Specified by:
  `getPointValues` in class `LeafReader`
Throws:
  `IOException`

#### doClose

    protected void doClose()
                    throws IOException

Description copied from class: `IndexReader`
Implements close.

Specified by:
  `doClose` in class `IndexReader`
Throws:
  `IOException`

#### ramBytesUsed

    public long ramBytesUsed()

Description copied from interface: `Accountable`
Return the memory usage of this object in bytes. Negative values are illegal.

Specified by:
  `ramBytesUsed` in interface `Accountable`

#### getChildResources

    public Collection<Accountable> getChildResources()

Description copied from interface: `Accountable`
Returns nested resources of this class. The result should be a point-in-time snapshot (to avoid race conditions).

Specified by:
  `getChildResources` in interface `Accountable`
See Also:
  `Accountables`

#### checkIntegrity

    public void checkIntegrity()
                        throws IOException

Description copied from class: `LeafReader`
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 class `LeafReader`
Throws:
  `IOException`