## org.apache.lucene.facet.index.streaming
Class CategoryAttributesStream

    java.lang.Object
      org.apache.lucene.util.AttributeSource
          org.apache.lucene.analysis.TokenStream
              org.apache.lucene.facet.index.streaming.CategoryAttributesStream

All Implemented Interfaces:
  Closeable

    public class CategoryAttributesStream

extends org.apache.lucene.analysis.TokenStream

An attribute stream built from an `Iterable` of `CategoryAttribute`. This stream should then be passed through several filters (see `CategoryParentsStream`, `CategoryListTokenizer` and `CategoryTokenizer`) until a token stream is produced that can be indexed by Lucene.

A CategoryAttributesStream object can be reused for producing more than one stream. To do that, the user should cause the underlying Iterable<CategoryAttribute> object to return a new set of categories, and then call `reset()` to allow this stream to be used again.

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

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
`org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State`

Field Summary
`protected CategoryAttribute` `categoryAttribute`

Constructor Summary
`CategoryAttributesStream(Iterable<CategoryAttribute> iterable)` Constructor

Method Summary
`boolean` `incrementToken()`
`void` `reset()`

Methods inherited from class org.apache.lucene.analysis.TokenStream
`close, end`

Methods inherited from class org.apache.lucene.util.AttributeSource
`addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState, toString`

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

Field Detail

### categoryAttribute

    protected CategoryAttribute categoryAttribute

Constructor Detail

### CategoryAttributesStream

    public CategoryAttributesStream(Iterable<CategoryAttribute> iterable)

  Constructor

  Parameters:
    `iterable` - `Iterable` of `CategoryAttribute`, from which categories are taken.

Method Detail

### incrementToken

    public final boolean incrementToken()
                                 throws IOException

  Specified by:
    `incrementToken` in class `org.apache.lucene.analysis.TokenStream`
  Throws:
    `IOException`

### reset

    public void reset()

  Overrides:
    `reset` in class `org.apache.lucene.analysis.TokenStream`