Class SynonymGraphFilterFactory
java.lang.Object
org.apache.lucene.analysis.AbstractAnalysisFactory
org.apache.lucene.analysis.TokenFilterFactory
org.apache.lucene.analysis.synonym.SynonymGraphFilterFactory
- All Implemented Interfaces:
ResourceLoaderAware
Factory for
SynonymGraphFilter
.
<fieldType name="text_synonym" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="solr.WhitespaceTokenizerFactory"/> <filter class="solr.SynonymGraphFilterFactory" 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 SynonymGraphFilterFactory 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 SynonymGraphFilterFactory, 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 otherwiseboolean expand
- true if conflation groups should be expanded, false if they are one-directional
- an analyzer used for each raw synonymAnalyzer
analyzer
- Since:
- 6.4.0
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final String
private final boolean
private final String
private final boolean
private SynonymMap
static final String
SPI nameprivate final String
private final String
Fields inherited from class org.apache.lucene.analysis.AbstractAnalysisFactory
LUCENE_MATCH_VERSION_PARAM, luceneMatchVersion
-
Constructor Summary
ConstructorsConstructorDescriptionDefault ctor for compatibility with SPISynonymGraphFilterFactory
(Map<String, String> args) -
Method Summary
Modifier and TypeMethodDescriptioncreate
(TokenStream input) Transform the specified input TokenStreamvoid
inform
(ResourceLoader loader) Initializes this component with the provided ResourceLoader (used for loading classes, files, etc).private Analyzer
loadAnalyzer
(ResourceLoader loader, String cname) protected SynonymMap
loadSynonyms
(ResourceLoader loader, String cname, boolean dedup, Analyzer analyzer) Load synonyms with the givenSynonymMap.Parser
class.private TokenizerFactory
loadTokenizerFactory
(ResourceLoader loader, String cname) 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
-
Field Details
-
NAME
SPI name- See Also:
-
ignoreCase
private final boolean ignoreCase -
tokenizerFactory
-
synonyms
-
format
-
expand
private final boolean expand -
analyzerName
-
tokArgs
-
map
-
-
Constructor Details
-
SynonymGraphFilterFactory
-
SynonymGraphFilterFactory
public SynonymGraphFilterFactory()Default ctor for compatibility with SPI
-
-
Method Details
-
create
Description copied from class:TokenFilterFactory
Transform the specified input TokenStream- Specified by:
create
in classTokenFilterFactory
-
inform
Description copied from interface:ResourceLoaderAware
Initializes this component with the provided ResourceLoader (used for loading classes, files, etc).- Specified by:
inform
in interfaceResourceLoaderAware
- Throws:
IOException
-
loadSynonyms
protected SynonymMap loadSynonyms(ResourceLoader loader, String cname, boolean dedup, Analyzer analyzer) throws IOException, ParseException Load synonyms with the givenSynonymMap.Parser
class.- Throws:
IOException
ParseException
-
loadTokenizerFactory
private TokenizerFactory loadTokenizerFactory(ResourceLoader loader, String cname) throws IOException - Throws:
IOException
-
loadAnalyzer
- Throws:
IOException
-