Example usage for org.apache.commons.codec.language DoubleMetaphone getMaxCodeLen

List of usage examples for org.apache.commons.codec.language DoubleMetaphone getMaxCodeLen

Introduction

In this page you can find the example usage for org.apache.commons.codec.language DoubleMetaphone getMaxCodeLen.

Prototype

public int getMaxCodeLen() 

Source Link

Document

Returns the maxCodeLen.

Usage

From source file:org.elasticsearch.index.analysis.phonetic.PhoneticTokenFilterFactory.java

@Inject
public PhoneticTokenFilterFactory(Index index, @IndexSettings Settings indexSettings, @Assisted String name,
        @Assisted Settings settings) {//from  w  ww  .ja  v  a2 s.  c  om
    super(index, indexSettings, name, settings);
    this.replace = settings.getAsBoolean("replace", true);
    String encoder = settings.get("encoder");
    if (encoder == null) {
        throw new ElasticSearchIllegalArgumentException("encoder must be set on phonetic token filter");
    }
    if ("metaphone".equalsIgnoreCase(encoder)) {
        this.encoder = new Metaphone();
    } else if ("soundex".equalsIgnoreCase(encoder)) {
        this.encoder = new Soundex();
    } else if ("caverphone1".equalsIgnoreCase(encoder)) {
        this.encoder = new Caverphone1();
    } else if ("caverphone2".equalsIgnoreCase(encoder)) {
        this.encoder = new Caverphone2();
    } else if ("caverphone".equalsIgnoreCase(encoder)) {
        this.encoder = new Caverphone2();
    } else if ("refined_soundex".equalsIgnoreCase(encoder) || "refinedSoundex".equalsIgnoreCase(encoder)) {
        this.encoder = new RefinedSoundex();
    } else if ("cologne".equalsIgnoreCase(encoder)) {
        this.encoder = new ColognePhonetic();
    } else if ("double_metaphone".equalsIgnoreCase(encoder) || "doubleMetaphone".equalsIgnoreCase(encoder)) {
        DoubleMetaphone doubleMetaphone = new DoubleMetaphone();
        doubleMetaphone.setMaxCodeLen(settings.getAsInt("max_code_len", doubleMetaphone.getMaxCodeLen()));
        this.encoder = doubleMetaphone;
    } else {
        throw new ElasticSearchIllegalArgumentException(
                "unknown encoder [" + encoder + "] for phonetic token filter");
    }
}