## org.apache.lucene.codecs.blockterms
Class BlockTermsReader

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

All Implemented Interfaces:
  Closeable, Iterable<String>

    public class BlockTermsReader

extends FieldsProducer

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.

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
`BlockTermsReader(TermsIndexReaderBase indexReader, Directory dir, FieldInfos fieldInfos, SegmentInfo info, PostingsReaderBase postingsReader, IOContext context, int termsCacheSize, String segmentSuffix)`

Method Summary
`void` `close()`
`Iterator<String>` `iterator()`
`int` `size()`
`Terms` `terms(String field)`

Methods inherited from class org.apache.lucene.index.Fields
`getUniqueTermCount`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BlockTermsReader

    public BlockTermsReader(TermsIndexReaderBase indexReader,
                            Directory dir,
                            FieldInfos fieldInfos,
                            SegmentInfo info,
                            PostingsReaderBase postingsReader,
                            IOContext context,
                            int termsCacheSize,
                            String segmentSuffix)
                     throws IOException

Throws:
  `IOException`

Method Detail

### close

    public void close()
               throws IOException

  Specified by:
    `close` in interface `Closeable`
  Specified by:
    `close` in class `FieldsProducer`
  Throws:
    `IOException`

### iterator

    public Iterator<String> iterator()

  Specified by:
    `iterator` in interface `Iterable<String>`
  Specified by:
    `iterator` in class `Fields`

### terms

    public Terms terms(String field)
                throws IOException

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

### size

    public int size()

  Specified by:
    `size` in class `Fields`

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.