Package org.apache.lucene.codecs

# Class FieldsProducer

java.lang.Object
org.apache.lucene.index.Fields
org.apache.lucene.codecs.FieldsProducer

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

Direct Known Subclasses:
  `Lucene90BlockTreeTermsReader`

public abstract class FieldsProducer extends Fields implements Closeable
Abstract API that produces terms, doc, freq, prox, offset and payloads postings.

WARNING: This API is experimental and might change in incompatible ways in the next release.

## Field Summary

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

`EMPTY_ARRAY`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`FieldsProducer()`
Sole constructor.

## Method Summary

Modifier and Type
Method
Description
`abstract void`
`checkIntegrity()`
Checks consistency of this reader.
`abstract void`
`close()`
`FieldsProducer`
`getMergeInstance()`
Returns an instance optimized for merging.

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

`iterator, size, terms`

### 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

### FieldsProducer

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

## Method Details

### close

public abstract void close() throws IOException

Specified by:
  `close` in interface `AutoCloseable`
Specified by:
  `close` in interface `Closeable`
Throws:
  `IOException`

### checkIntegrity

public abstract void checkIntegrity() throws IOException
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.

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

### getMergeInstance

public FieldsProducer getMergeInstance()
Returns an instance optimized for merging. This instance may only be consumed in the thread that called `getMergeInstance()`.

The default implementation returns `this`