org.apache.lucene.search.suggest

## Class DocumentDictionary.DocumentInputIterator

- java.lang.Object
- - org.apache.lucene.search.suggest.DocumentDictionary.DocumentInputIterator

- All Implemented Interfaces:
    InputIterator, BytesRefIterator
  Enclosing class:
    DocumentDictionary

      protected class DocumentDictionary.DocumentInputIterator
      extends Object
      implements InputIterator

  Implements `InputIterator` from stored fields.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.lucene.search.suggest.InputIterator

      `InputIterator.InputIteratorWrapper`

  - ### Field Summary

    - ### Fields inherited from interface org.apache.lucene.search.suggest.InputIterator

      `EMPTY`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DocumentInputIterator(boolean hasPayloads, boolean hasContexts)` Creates an iterator over term, weight and payload fields from the lucene index.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Set<BytesRef>` | `contexts()` A term's contexts context can be used to filter suggestions.
    `protected long` | `getWeight(Document doc, int docId)` Returns the value of the `weightField` for the current document.
    `boolean` | `hasContexts()` Returns true if the iterator has contexts
    `boolean` | `hasPayloads()` Returns true if the iterator has payloads
    `BytesRef` | `next()`
    `BytesRef` | `payload()` An arbitrary byte[] to record per suggestion.
    `long` | `weight()` A term's weight, higher numbers mean better suggestions.

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

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

- - ### Constructor Detail

    - #### DocumentInputIterator

          public DocumentInputIterator(boolean hasPayloads,
                                       boolean hasContexts)
                                throws IOException

      Creates an iterator over term, weight and payload fields from the lucene index. setting `withPayload` to false, implies an iterator over only term and weight.
      Throws:
        `IOException`

  - ### Method Detail

    - #### weight

          public long weight()

      Description copied from interface: `InputIterator`
      A term's weight, higher numbers mean better suggestions.
      Specified by:
        `weight` in interface `InputIterator`

    - #### next

          public BytesRef next()
                        throws IOException

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

    - #### payload

          public BytesRef payload()

      Description copied from interface: `InputIterator`
      An arbitrary byte[] to record per suggestion. See `Lookup.LookupResult.payload` to retrieve the payload for each suggestion.
      Specified by:
        `payload` in interface `InputIterator`

    - #### hasPayloads

          public boolean hasPayloads()

      Description copied from interface: `InputIterator`
      Returns true if the iterator has payloads
      Specified by:
        `hasPayloads` in interface `InputIterator`

    - #### getWeight

          protected long getWeight(Document doc,
                                   int docId)
                            throws IOException

      Returns the value of the `weightField` for the current document. Retrieves the value for the `weightField` if it's stored (using `doc`) or if it's indexed as `NumericDocValues` (using `docId`) for the document. If no value is found, then the weight is 0.
      Throws:
        `IOException`

    - #### contexts

          public Set<BytesRef> contexts()

      Description copied from interface: `InputIterator`
      A term's contexts context can be used to filter suggestions. May return null, if suggest entries do not have any context
      Specified by:
        `contexts` in interface `InputIterator`

    - #### hasContexts

          public boolean hasContexts()

      Description copied from interface: `InputIterator`
      Returns true if the iterator has contexts
      Specified by:
        `hasContexts` in interface `InputIterator`

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