## org.apache.lucene.index
Class MultipleTermPositions

    java.lang.Object
      org.apache.lucene.index.MultipleTermPositions

All Implemented Interfaces:
  Closeable, TermDocs, TermPositions

    public class MultipleTermPositions

extends Object
implements TermPositions

Allows you to iterate over the `TermPositions` for multiple `Term`s as a single `TermPositions`.

Constructor Summary
`MultipleTermPositions(IndexReader indexReader, Term[] terms)` Creates a new `MultipleTermPositions` instance.

Method Summary
`void` `close()` Frees associated resources.
`int` `doc()` Returns the current document number.
`int` `freq()` Returns the frequency of the term within the current document.
`byte[]` `getPayload(byte[] data, int offset)` Not implemented.
`int` `getPayloadLength()` Not implemented.
`boolean` `isPayloadAvailable()` Checks if a payload can be loaded at this position.
`boolean` `next()` Moves to the next pair in the enumeration.
`int` `nextPosition()` Returns next position in the current document.
`int` `read(int[] arg0, int[] arg1)` Not implemented.
`void` `seek(Term arg0)` Not implemented.
`void` `seek(TermEnum termEnum)` Not implemented.
`boolean` `skipTo(int target)` Skips entries to the first beyond the current whose document number is greater than or equal to target.

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

Constructor Detail

### MultipleTermPositions

    public MultipleTermPositions(IndexReader indexReader,
                                 Term[] terms)
                          throws IOException

  Creates a new `MultipleTermPositions` instance.

  Throws:
    `IOException`

Method Detail

### next

    public final boolean next()
                       throws IOException

  Description copied from interface: `TermDocs`
  Moves to the next pair in the enumeration.

  Returns true iff there is such a next pair in the enumeration. Once this returns false you should not call any of the other methods.

  Specified by:
    `next` in interface `TermDocs`
  Throws:
    `IOException`

### nextPosition

    public final int nextPosition()

  Description copied from interface: `TermPositions`
  Returns next position in the current document. It is an error to call this more than `TermDocs.freq()` times without calling `TermDocs.next()`

  This is invalid until `TermDocs.next()` is called for the first time.

  Specified by:
    `nextPosition` in interface `TermPositions`

### skipTo

    public final boolean skipTo(int target)
                         throws IOException

  Description copied from interface: `TermDocs`
  Skips entries to the first beyond the current whose document number is greater than or equal to target.

  Returns true iff there is such an entry.

  Behaves as if written:

         boolean skipTo(int target) {
           do {
             if (!next())
                   return false;
           } while (target > doc());
           return true;
         }

  Some implementations are considerably more efficient than that.

  Specified by:
    `skipTo` in interface `TermDocs`
  Throws:
    `IOException`

### doc

    public final int doc()

  Description copied from interface: `TermDocs`
  Returns the current document number.

  This is invalid until `TermDocs.next()` is called for the first time.

  Specified by:
    `doc` in interface `TermDocs`

### freq

    public final int freq()

  Description copied from interface: `TermDocs`
  Returns the frequency of the term within the current document.

  This is invalid until `TermDocs.next()` is called for the first time.

  Specified by:
    `freq` in interface `TermDocs`

### close

    public final void close()
                     throws IOException

  Description copied from interface: `TermDocs`
  Frees associated resources.

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

### seek

    public void seek(Term arg0)
              throws IOException

  Not implemented.

  Specified by:
    `seek` in interface `TermDocs`
  Throws:
    `UnsupportedOperationException`
    `IOException`

### seek

    public void seek(TermEnum termEnum)
              throws IOException

  Not implemented.

  Specified by:
    `seek` in interface `TermDocs`
  Throws:
    `UnsupportedOperationException`
    `IOException`

### read

    public int read(int[] arg0,
                    int[] arg1)
             throws IOException

  Not implemented.

  Specified by:
    `read` in interface `TermDocs`
  Throws:
    `UnsupportedOperationException`
    `IOException`

### getPayloadLength

    public int getPayloadLength()

  Not implemented.

  Specified by:
    `getPayloadLength` in interface `TermPositions`
  Returns:
    length of the current payload in number of bytes
  Throws:
    `UnsupportedOperationException`

### getPayload

    public byte[] getPayload(byte[] data,
                             int offset)
                      throws IOException

  Not implemented.

  Specified by:
    `getPayload` in interface `TermPositions`
  Parameters:
    `data` - the array into which the data of this payload is to be stored, if it is big enough; otherwise, a new byte[] array is allocated for this purpose.
    `offset` - the offset in the array into which the data of this payload is to be stored.
  Returns:
    a byte[] array containing the data of this payload
  Throws:
    `UnsupportedOperationException`
    `IOException`

### isPayloadAvailable

    public boolean isPayloadAvailable()

  Description copied from interface: `TermPositions`
  Checks if a payload can be loaded at this position.

  Payloads can only be loaded once per call to `TermPositions.nextPosition()`.

  Specified by:
    `isPayloadAvailable` in interface `TermPositions`
  Returns:
    false