org.apache.lucene.analysis.synonym

## Class SynonymFilterFactory

- java.lang.Object
- - org.apache.lucene.analysis.util.AbstractAnalysisFactory
  - - org.apache.lucene.analysis.util.TokenFilterFactory
    - - org.apache.lucene.analysis.synonym.SynonymFilterFactory

- All Implemented Interfaces:
    ResourceLoaderAware

  Deprecated.
  Use `SynonymGraphFilterFactory` instead, but be sure to also use `FlattenGraphFilterFactory` at index time (not at search time) as well.

      @Deprecated
      public class SynonymFilterFactory
      extends TokenFilterFactory
      implements ResourceLoaderAware

  Factory for `SynonymFilter`.

       <fieldType name="text_synonym" class="solr.TextField" positionIncrementGap="100">
         <analyzer>
           <tokenizer class="solr.WhitespaceTokenizerFactory"/>
           <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt"
                   format="solr" ignoreCase="false" expand="true"
                   tokenizerFactory="solr.WhitespaceTokenizerFactory"
                   [optional tokenizer factory parameters]/>
         </analyzer>
       </fieldType>

  An optional param name prefix of "tokenizerFactory." may be used for any init params that the SynonymFilterFactory needs to pass to the specified TokenizerFactory. If the TokenizerFactory expects an init parameters with the same name as an init param used by the SynonymFilterFactory, the prefix is mandatory.

  The optional `format` parameter controls how the synonyms will be parsed: It supports the short names of `solr` for `SolrSynonymParser` and `wordnet` for and `WordnetSynonymParser`, or your own `SynonymMap.Parser` class name. The default is `solr`. A custom `SynonymMap.Parser` is expected to have a constructor taking:

  - `boolean dedup` - true if duplicates should be ignored, false otherwise
  - `boolean expand` - true if conflation groups should be expanded, false if they are one-directional
  - ``Analyzer` analyzer` - an analyzer used for each raw synonym
  Since:
    3.1
  See Also:
    `SolrSynonymParser: default format`
  SPI Name (Note: This is case-insensitive. e.g., if the name is 'htmlStrip', 'htmlstrip' can be used when looking up the service):
    "synonym"

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `NAME` Deprecated. SPI name

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

      `LUCENE_MATCH_VERSION_PARAM, luceneMatchVersion`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SynonymFilterFactory(Map<String,String> args)` Deprecated.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `TokenStream` | `create(TokenStream input)` Deprecated. Transform the specified input TokenStream
    `void` | `inform(ResourceLoader loader)` Deprecated. Initializes this component with the provided ResourceLoader (used for loading classes, files, etc).
    `protected SynonymMap` | `loadSynonyms(ResourceLoader loader, String cname, boolean dedup, Analyzer analyzer)` Deprecated. Load synonyms with the given `SynonymMap.Parser` class.

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

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

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

      `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 Detail

    - #### NAME

          public static final String NAME

      Deprecated.
      SPI name
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### SynonymFilterFactory

          public SynonymFilterFactory(Map<String,String> args)

      Deprecated.

  - ### Method Detail

    - #### create

          public TokenStream create(TokenStream input)

      Deprecated.
      Description copied from class: `TokenFilterFactory`
      Transform the specified input TokenStream
      Specified by:
        `create` in class `TokenFilterFactory`

    - #### inform

          public void inform(ResourceLoader loader)
                      throws IOException

      Deprecated.
      Description copied from interface: `ResourceLoaderAware`
      Initializes this component with the provided ResourceLoader (used for loading classes, files, etc).
      Specified by:
        `inform` in interface `ResourceLoaderAware`
      Throws:
        `IOException`

    - #### loadSynonyms

          protected SynonymMap loadSynonyms(ResourceLoader loader,
                                            String cname,
                                            boolean dedup,
                                            Analyzer analyzer)
                                     throws IOException,
                                            ParseException

      Deprecated.
      Load synonyms with the given `SynonymMap.Parser` class.
      Throws:
        `IOException`
        `ParseException`

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