org.apache.lucene.codecs.lucene41

## Class Lucene41PostingsWriter

- java.lang.Object
- - org.apache.lucene.codecs.PostingsConsumer
  - - org.apache.lucene.codecs.PostingsWriterBase
    - - org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter

- All Implemented Interfaces:
    Closeable, AutoCloseable

      public final class Lucene41PostingsWriter
      extends PostingsWriterBase

  Concrete class that writes docId(maybe frq,pos,offset,payloads) list with postings format. Postings list for each term will be stored separately.
  See Also:
    `for details about skipping setting and postings layout.`
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Lucene41PostingsWriter(SegmentWriteState state)` Creates a postings writer with `PackedInts.COMPACT`
    `Lucene41PostingsWriter(SegmentWriteState state, float acceptableOverheadRatio)` Creates a postings writer with the specified PackedInts overhead ratio

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addPosition(int position, BytesRef payload, int startOffset, int endOffset)` Add a new position & payload
    `void` | `close()`
    `void` | `finishDoc()` Called when we are done adding positions & payloads for each doc.
    `void` | `finishTerm(TermStats stats)` Called when we are done adding docs to this term
    `void` | `flushTermsBlock(int start, int count)` Flush count terms starting at start "backwards", as a block.
    `void` | `setField(FieldInfo fieldInfo)` Called when the writing switches to another field.
    `void` | `start(IndexOutput termsOut)` Called once after startup, before any terms have been added.
    `void` | `startDoc(int docID, int termDocFreq)` Adds a new doc in this term.
    `void` | `startTerm()` Start a new term.

    - ### Methods inherited from class org.apache.lucene.codecs.PostingsConsumer

      `merge`

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

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

- - ### Constructor Detail

    - #### Lucene41PostingsWriter

          public Lucene41PostingsWriter(SegmentWriteState state,
                                float acceptableOverheadRatio)
                                 throws IOException

      Creates a postings writer with the specified PackedInts overhead ratio
      Throws:
        `IOException`

    - #### Lucene41PostingsWriter

          public Lucene41PostingsWriter(SegmentWriteState state)
                                 throws IOException

      Creates a postings writer with `PackedInts.COMPACT`
      Throws:
        `IOException`

  - ### Method Detail

    - #### start

          public void start(IndexOutput termsOut)
                     throws IOException

      Description copied from class: `PostingsWriterBase`
      Called once after startup, before any terms have been added. Implementations typically write a header to the provided `termsOut`.
      Specified by:
        `start` in class `PostingsWriterBase`
      Throws:
        `IOException`

    - #### setField

          public void setField(FieldInfo fieldInfo)

      Description copied from class: `PostingsWriterBase`
      Called when the writing switches to another field.
      Specified by:
        `setField` in class `PostingsWriterBase`

    - #### startTerm

          public void startTerm()

      Description copied from class: `PostingsWriterBase`
      Start a new term. Note that a matching call to `PostingsWriterBase.finishTerm(TermStats)` is done, only if the term has at least one document.
      Specified by:
        `startTerm` in class `PostingsWriterBase`

    - #### startDoc

          public void startDoc(int docID,
                      int termDocFreq)
                        throws IOException

      Description copied from class: `PostingsConsumer`
      Adds a new doc in this term. `freq` will be -1 when term frequencies are omitted for the field.
      Specified by:
        `startDoc` in class `PostingsConsumer`
      Throws:
        `IOException`

    - #### addPosition

          public void addPosition(int position,
                         BytesRef payload,
                         int startOffset,
                         int endOffset)
                           throws IOException

      Add a new position & payload
      Specified by:
        `addPosition` in class `PostingsConsumer`
      Throws:
        `IOException`

    - #### finishDoc

          public void finishDoc()
                         throws IOException

      Description copied from class: `PostingsConsumer`
      Called when we are done adding positions & payloads for each doc.
      Specified by:
        `finishDoc` in class `PostingsConsumer`
      Throws:
        `IOException`

    - #### finishTerm

          public void finishTerm(TermStats stats)
                          throws IOException

      Called when we are done adding docs to this term
      Specified by:
        `finishTerm` in class `PostingsWriterBase`
      Throws:
        `IOException`

    - #### flushTermsBlock

          public void flushTermsBlock(int start,
                             int count)
                               throws IOException

      Description copied from class: `PostingsWriterBase`
      Flush count terms starting at start "backwards", as a block. start is a negative offset from the end of the terms stack, ie bigger start means further back in the stack.
      Specified by:
        `flushTermsBlock` in class `PostingsWriterBase`
      Throws:
        `IOException`

    - #### close

          public void close()
                     throws IOException

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

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