org.apache.lucene.codecs
Class PostingsReaderBase

java.lang.Object
  extended by org.apache.lucene.codecs.PostingsReaderBase
All Implemented Interfaces:
Closeable
Direct Known Subclasses:
Lucene40PostingsReader, Lucene41PostingsReader

public abstract class PostingsReaderBase
extends Object
implements Closeable

The core terms dictionaries (BlockTermsReader, BlockTreeTermsReader) interact with a single instance of this class to manage creation of DocsEnum and DocsAndPositionsEnum instances. It provides an IndexInput (termsIn) where this class may read any previously stored data that it had written in its corresponding PostingsWriterBase at indexing time.

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

Constructor Summary
protected PostingsReaderBase()
          Sole constructor.
 
Method Summary
abstract  void close()
           
abstract  void decodeTerm(long[] longs, DataInput in, FieldInfo fieldInfo, BlockTermState state, boolean absolute)
          Actually decode metadata for next term
abstract  DocsEnum docs(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsEnum reuse, int flags)
          Must fully consume state, since after this call that TermState may be reused.
abstract  DocsAndPositionsEnum docsAndPositions(FieldInfo fieldInfo, BlockTermState state, Bits skipDocs, DocsAndPositionsEnum reuse, int flags)
          Must fully consume state, since after this call that TermState may be reused.
abstract  void init(IndexInput termsIn)
          Performs any initialization, such as reading and verifying the header from the provided terms dictionary IndexInput.
abstract  BlockTermState newTermState()
          Return a newly created empty TermState
abstract  long ramBytesUsed()
          Returns approximate RAM bytes used
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PostingsReaderBase

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

Method Detail

init

public abstract void init(IndexInput termsIn)
                   throws IOException
Performs any initialization, such as reading and verifying the header from the provided terms dictionary IndexInput.

Throws:
IOException

newTermState

public abstract BlockTermState newTermState()
                                     throws IOException
Return a newly created empty TermState

Throws:
IOException

decodeTerm

public abstract void decodeTerm(long[] longs,
                                DataInput in,
                                FieldInfo fieldInfo,
                                BlockTermState state,
                                boolean absolute)
                         throws IOException
Actually decode metadata for next term

Throws:
IOException
See Also:
PostingsWriterBase.encodeTerm(long[], org.apache.lucene.store.DataOutput, org.apache.lucene.index.FieldInfo, org.apache.lucene.codecs.BlockTermState, boolean)

docs

public abstract DocsEnum docs(FieldInfo fieldInfo,
                              BlockTermState state,
                              Bits skipDocs,
                              DocsEnum reuse,
                              int flags)
                       throws IOException
Must fully consume state, since after this call that TermState may be reused.

Throws:
IOException

docsAndPositions

public abstract DocsAndPositionsEnum docsAndPositions(FieldInfo fieldInfo,
                                                      BlockTermState state,
                                                      Bits skipDocs,
                                                      DocsAndPositionsEnum reuse,
                                                      int flags)
                                               throws IOException
Must fully consume state, since after this call that TermState may be reused.

Throws:
IOException

ramBytesUsed

public abstract long ramBytesUsed()
Returns approximate RAM bytes used


close

public abstract void close()
                    throws IOException
Specified by:
close in interface Closeable
Throws:
IOException


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