Package org.apache.lucene.search.suggest

# Class UnsortedInputIterator

java.lang.Object
org.apache.lucene.search.suggest.BufferedInputIterator
org.apache.lucene.search.suggest.UnsortedInputIterator

All Implemented Interfaces:
  `InputIterator`, `BytesRefIterator`

public class UnsortedInputIterator extends BufferedInputIterator
This wrapper buffers the incoming elements and makes sure they are in random order.

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

## Nested Class Summary

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

`InputIterator.InputIteratorWrapper`

## Field Summary

### Fields inherited from class org.apache.lucene.search.suggest.BufferedInputIterator

`contextSets, curPos, entries, freqs, payloads`

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

`EMPTY`

## Constructor Summary

Constructors
Constructor
Description
`UnsortedInputIterator(InputIterator source)`
Creates a new iterator, wrapping the specified iterator and returning elements in a random order.

## Method Summary

Modifier and Type
Method
Description
`Set<BytesRef>`
`contexts()`
A term's contexts context can be used to filter suggestions.
`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 org.apache.lucene.search.suggest.BufferedInputIterator

`hasContexts, hasPayloads`

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

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

## Constructor Details

### UnsortedInputIterator

public UnsortedInputIterator(InputIterator source) throws IOException
Creates a new iterator, wrapping the specified iterator and returning elements in a random order.

Throws:
  `IOException`

## Method Details

### weight

public long weight()
Description copied from interface: `InputIterator`
A term's weight, higher numbers mean better suggestions.

Specified by:
  `weight` in interface `InputIterator`
Overrides:
  `weight` in class `BufferedInputIterator`

### next

public BytesRef next() throws IOException

Specified by:
  `next` in interface `BytesRefIterator`
Overrides:
  `next` in class `BufferedInputIterator`
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`
Overrides:
  `payload` in class `BufferedInputIterator`

### 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`
Overrides:
  `contexts` in class `BufferedInputIterator`