Package org.apache.lucene.analysis.synonym

# Class SynonymFilterFactory

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

All Implemented Interfaces:
  `ResourceLoaderAware`

@Deprecated public class SynonymFilterFactory extends TokenFilterFactory implements ResourceLoaderAware
Deprecated.
Use `SynonymGraphFilterFactory` instead, but be sure to also use `FlattenGraphFilterFactory` at index time (not at search time) as well.
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 (case-insensitive: if the name is 'htmlStrip', 'htmlstrip' can be used when looking up the service).
  "synonym"

## Field Summary

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

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

`LUCENE_MATCH_VERSION_PARAM, luceneMatchVersion`

## Constructor Summary

Constructors
Constructor
Description
`SynonymFilterFactory()`
Deprecated.
Default ctor for compatibility with SPI
`SynonymFilterFactory(Map<String,String> args)`
Deprecated.

## Method Summary

Modifier and Type
Method
Description
`TokenStream`
`create(TokenStream input)`
Deprecated.
`void`
`inform(ResourceLoader loader)`
Deprecated.
`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.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
Deprecated.
SPI name

See Also:
  - Constant Field Values

## Constructor Details

### SynonymFilterFactory

public SynonymFilterFactory(Map<String,String> args)
Deprecated.

### SynonymFilterFactory

public SynonymFilterFactory()
Deprecated.
Default ctor for compatibility with SPI

## Method Details

### create

public TokenStream create(TokenStream input)
Deprecated.

Specified by:
  `create` in class `TokenFilterFactory`

### inform

public void inform(ResourceLoader loader) throws IOException
Deprecated.

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`