Package org.apache.lucene.analysis.miscellaneous

# Class ConditionalTokenFilterFactory

java.lang.Object
org.apache.lucene.analysis.AbstractAnalysisFactory
org.apache.lucene.analysis.TokenFilterFactory
org.apache.lucene.analysis.miscellaneous.ConditionalTokenFilterFactory

All Implemented Interfaces:
  `ResourceLoaderAware`

Direct Known Subclasses:
  `ProtectedTermFilterFactory`

public abstract class ConditionalTokenFilterFactory extends TokenFilterFactory implements ResourceLoaderAware
Abstract parent class for analysis factories that create `ConditionalTokenFilter` instances

Since:
  7.4.0
SPI Name (case-insensitive: if the name is 'htmlStrip', 'htmlstrip' can be used when looking up the service).
  "conditional"

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `NAME`
  SPI name

  ### Fields inherited from class org.apache.lucene.analysis.AbstractAnalysisFactory

  `LUCENE_MATCH_VERSION_PARAM, luceneMatchVersion`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  ``
  `ConditionalTokenFilterFactory()`
  Default ctor for compatibility with SPI
  `protected`
  `ConditionalTokenFilterFactory(Map<String,String> args)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `TokenStream`
  `create(TokenStream input)`
  `protected abstract ConditionalTokenFilter`
  `create(TokenStream input, Function<TokenStream,TokenStream> inner)`
  Modify the incoming `TokenStream` with a `ConditionalTokenFilter`
  `protected void`
  `doInform(ResourceLoader loader)`
  Initialises this component with the corresponding `ResourceLoader`
  `final void`
  `inform(ResourceLoader loader)`
  `void`
  `setInnerFilters(List<TokenFilterFactory> innerFilters)`
  Set the inner filter factories to produce the `TokenFilter`s that will be wrapped by the `ConditionalTokenFilter`

  ### Methods inherited from class org.apache.lucene.analysis.TokenFilterFactory

  `availableTokenFilters, findSPIName, forName, lookupClass, normalize, reloadTokenFilters`

  ### Methods inherited from class org.apache.lucene.analysis.AbstractAnalysisFactory

  `defaultCtorException, get, get, get, get, get, getBoolean, getChar, getClassArg, getFloat, getInt, getLines, getLuceneMatchVersion, getOriginalArgs, getPattern, getSet, getSnowballWordSet, getWordSet, isExplicitLuceneMatchVersion, require, require, require, requireBoolean, requireChar, requireFloat, requireInt, setExplicitLuceneMatchVersion, splitAt, splitFileNames`

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

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

- ## Field Details

  - ### NAME

    public static final String NAME
    SPI name
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### ConditionalTokenFilterFactory

    protected ConditionalTokenFilterFactory(Map<String,String> args)

  - ### ConditionalTokenFilterFactory

    public ConditionalTokenFilterFactory()
    Default ctor for compatibility with SPI

- ## Method Details

  - ### setInnerFilters

    public void setInnerFilters(List<TokenFilterFactory> innerFilters)
    Set the inner filter factories to produce the `TokenFilter`s that will be wrapped by the `ConditionalTokenFilter`

  - ### create

    public TokenStream create(TokenStream input)
    Specified by:
      `create` in class `TokenFilterFactory`

  - ### inform

    public final void inform(ResourceLoader loader) throws IOException
    Specified by:
      `inform` in interface `ResourceLoaderAware`
    Throws:
      `IOException`

  - ### doInform

    protected void doInform(ResourceLoader loader) throws IOException
    Initialises this component with the corresponding `ResourceLoader`
    Throws:
      `IOException`

  - ### create

    protected abstract ConditionalTokenFilter create(TokenStream input, Function<TokenStream,TokenStream> inner)
    Modify the incoming `TokenStream` with a `ConditionalTokenFilter`