Mercurial Hosting > luan
view src/goodjava/lucene/api/FieldAnalyzer.java @ 1799:1578324d2aac
backup logging
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 22 Feb 2024 08:34:55 -0700 |
parents | 3ab0d043370f |
children |
line wrap: on
line source
package goodjava.lucene.api; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.AnalyzerWrapper; import org.apache.lucene.analysis.core.KeywordAnalyzer; public final class FieldAnalyzer extends AnalyzerWrapper { private static final Analyzer defaultAnalyzer = new KeywordAnalyzer(); private final Map<String,Analyzer> fieldAnalyzers = new ConcurrentHashMap<String,Analyzer>(); public void add(String fieldName,Analyzer analyzer) { fieldAnalyzers.put(fieldName,analyzer); } public boolean isAdded(String fieldName) { return fieldAnalyzers.containsKey(fieldName); } protected Analyzer getWrappedAnalyzer(String fieldName) { Analyzer analyzer = fieldAnalyzers.get(fieldName); /* if( analyzer == null ) throw new RuntimeException("no analyzer for field: "+fieldName); return analyzer; */ return analyzer!=null ? analyzer : defaultAnalyzer; } }