org.apache.lucene.search.suggest.document

## Class CompletionTokenStream

- java.lang.Object
- - org.apache.lucene.util.AttributeSource
  - - org.apache.lucene.analysis.TokenStream
    - - org.apache.lucene.search.suggest.document.CompletionTokenStream

- All Implemented Interfaces:
    Closeable, AutoCloseable

      public final class CompletionTokenStream
      extends TokenStream

  Token stream which converts a provided token stream to an automaton. The accepted strings enumeration from the automaton are available through the `TermToBytesRefAttribute` attribute The token stream uses a `PayloadAttribute` to store a completion's payload (see `setPayload(org.apache.lucene.util.BytesRef)`)
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `CompletionTokenStream.BytesRefBuilderTermAttribute` Attribute providing access to the term builder and UTF-16 conversion
    `static class` | `CompletionTokenStream.BytesRefBuilderTermAttributeImpl` Custom attribute implementation for completion token stream

    - ### Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource

      `AttributeSource.State`

  - ### Field Summary

    - ### Fields inherited from class org.apache.lucene.analysis.TokenStream

      `DEFAULT_TOKEN_ATTRIBUTE_FACTORY`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()`
    `void` | `end()`
    `boolean` | `incrementToken()`
    `void` | `reset()`
    `void` | `setPayload(BytesRef payload)` Sets a payload available throughout successive token stream enumeration
    `Automaton` | `toAutomaton()` Converts the token stream to an automaton, treating the transition labels as utf-8
    `Automaton` | `toAutomaton(boolean unicodeAware)` Converts the tokenStream to an automaton

    - ### Methods inherited from class org.apache.lucene.util.AttributeSource

      `addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, endAttributes, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, removeAllAttributes, restoreState, toString`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### setPayload

          public void setPayload(BytesRef payload)

      Sets a payload available throughout successive token stream enumeration

    - #### incrementToken

          public boolean incrementToken()
                                 throws IOException

      Specified by:
        `incrementToken` in class `TokenStream`
      Throws:
        `IOException`

    - #### end

          public void end()
                   throws IOException

      Overrides:
        `end` in class `TokenStream`
      Throws:
        `IOException`

    - #### close

          public void close()
                     throws IOException

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

    - #### reset

          public void reset()
                     throws IOException

      Overrides:
        `reset` in class `TokenStream`
      Throws:
        `IOException`

    - #### toAutomaton

          public Automaton toAutomaton()
                                throws IOException

      Converts the token stream to an automaton, treating the transition labels as utf-8
      Throws:
        `IOException`

    - #### toAutomaton

          public Automaton toAutomaton(boolean unicodeAware)
                                throws IOException

      Converts the tokenStream to an automaton
      Throws:
        `IOException`

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