org.apache.solr.analysis
Class PhoneticFilterFactory
java.lang.Object
org.apache.lucene.analysis.util.AbstractAnalysisFactory
org.apache.lucene.analysis.util.TokenFilterFactory
org.apache.solr.analysis.PhoneticFilterFactory
public class PhoneticFilterFactory
- extends TokenFilterFactory
Factory for PhoneticFilter
.
Create tokens based on phonetic encoders from Apache Commons Codec.
This takes one required argument, "encoder", and the rest are optional:
- encoder
- required, one of "DoubleMetaphone", "Metaphone", "Soundex", "RefinedSoundex", "Caverphone" (v2.0),
or "ColognePhonetic" (case insensitive). If encoder isn't one of these, it'll be resolved as a class name either by
itself if it already contains a '.' or otherwise as in the same package as these others.
- inject
- (default=true) add tokens to the stream with the offset=0
- maxCodeLength
- The maximum length of the phonetic codes, as defined by the encoder. If an encoder doesn't
support this then specifying this is an error.
<fieldType name="text_phonetic" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.PhoneticFilterFactory" encoder="DoubleMetaphone" inject="true"/>
</analyzer>
</fieldType>
- See Also:
PhoneticFilter
Methods inherited from class org.apache.lucene.analysis.util.AbstractAnalysisFactory |
assureMatchVersion, getArgs, getBoolean, getBoolean, getInt, getInt, getInt, getLuceneMatchVersion, getPattern, getSnowballWordSet, getWordSet, setLuceneMatchVersion, splitFileNames |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ENCODER
public static final String ENCODER
- See Also:
- Constant Field Values
INJECT
public static final String INJECT
- See Also:
- Constant Field Values
MAX_CODE_LENGTH
public static final String MAX_CODE_LENGTH
- See Also:
- Constant Field Values
inject
protected boolean inject
name
protected String name
clazz
protected Class<? extends org.apache.commons.codec.Encoder> clazz
setMaxCodeLenMethod
protected Method setMaxCodeLenMethod
maxCodeLength
protected Integer maxCodeLength
PhoneticFilterFactory
public PhoneticFilterFactory()
init
public void init(Map<String,String> args)
- Overrides:
init
in class AbstractAnalysisFactory
getEncoder
protected org.apache.commons.codec.Encoder getEncoder()
- Must be thread-safe.
create
public PhoneticFilter create(TokenStream input)
- Specified by:
create
in class TokenFilterFactory
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.