org.apache.lucene.facet.index.streaming
Class CategoryParentsStream
java.lang.Object
org.apache.lucene.util.AttributeSource
org.apache.lucene.analysis.TokenStream
org.apache.lucene.analysis.TokenFilter
org.apache.lucene.facet.index.streaming.CategoryParentsStream
- All Implemented Interfaces:
- Closeable
public class CategoryParentsStream
- extends org.apache.lucene.analysis.TokenFilter
This class adds parents to a CategoryAttributesStream
. The parents
are added according to the PathPolicy
and OrdinalPolicy
from
the FacetIndexingParams
given in the constructor.
By default, category properties are removed when creating parents of a
certain category. However, it is possible to retain certain property types
using addRetainableProperty(Class)
.
- WARNING: This API is experimental and might change in incompatible ways in the next release.
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource |
org.apache.lucene.util.AttributeSource.AttributeFactory, org.apache.lucene.util.AttributeSource.State |
Fields inherited from class org.apache.lucene.analysis.TokenFilter |
input |
Methods inherited from class org.apache.lucene.analysis.TokenFilter |
close, end, reset |
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 |
taxonomyWriter
protected TaxonomyWriter taxonomyWriter
- A
TaxonomyWriter
for adding categories and retrieving their
ordinals.
categoryAttribute
protected CategoryAttribute categoryAttribute
- An attribute containing all data related to the category
ordinalProperty
protected OrdinalProperty ordinalProperty
- A category property containing the category ordinal
CategoryParentsStream
public CategoryParentsStream(CategoryAttributesStream input,
TaxonomyWriter taxonomyWriter,
FacetIndexingParams indexingParams)
- Constructor.
- Parameters:
input
- The input stream to handle, must be derived from
CategoryAttributesStream
.taxonomyWriter
- The taxonomy writer to use for adding categories and
retrieving their ordinals.indexingParams
- The indexing params used for filtering parents.
incrementToken
public final boolean incrementToken()
throws IOException
- Specified by:
incrementToken
in class org.apache.lucene.analysis.TokenStream
- Throws:
IOException
clearCategoryProperties
protected void clearCategoryProperties()
- Clear the properties of the current
CategoryAttribute
attribute
before setting the parent attributes.
It is possible to retain properties of certain types the parent tokens,
using addRetainableProperty(Class)
.
addRetainableProperty
public void addRetainableProperty(Class<? extends CategoryProperty> toRetain)
- Add a
CategoryProperty
class which is retained when creating
parent tokens.
- Parameters:
toRetain
- The property class to retain.
Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.