CavalliumDBEngine/src/main/java/it/cavallium/dbengine/lucene/analyzer/NCharGramAnalyzer.java

23 lines
613 B
Java
Raw Normal View History

package it.cavallium.dbengine.lucene.analyzer;
2020-12-07 22:15:18 +01:00
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.Tokenizer;
2022-01-11 22:23:07 +01:00
import org.apache.lucene.analysis.ngram.NGramTokenizer;
2020-12-07 22:15:18 +01:00
2021-02-05 20:34:58 +01:00
public class NCharGramAnalyzer extends Analyzer {
2020-12-07 22:15:18 +01:00
2021-02-05 20:34:58 +01:00
private final int minGram;
private final int maxGram;
2020-12-07 22:15:18 +01:00
2022-01-11 22:23:07 +01:00
public NCharGramAnalyzer(int minGram, int maxGram) {
2021-02-05 20:34:58 +01:00
this.minGram = minGram;
this.maxGram = maxGram;
2020-12-07 22:15:18 +01:00
}
@Override
protected TokenStreamComponents createComponents(final String fieldName) {
2022-01-11 22:23:07 +01:00
Tokenizer tokenizer = new NGramTokenizer(minGram, maxGram);
return new TokenStreamComponents(tokenizer);
2020-12-07 22:15:18 +01:00
}
}