accept tips from hemingwang

This commit is contained in:
medcl 2013-08-21 09:54:02 +08:00
parent c950add0a7
commit 72718510e4
2 changed files with 33 additions and 31 deletions

View File

@ -6,7 +6,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.elasticsearch</groupId> <groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch-analysis-ik</artifactId> <artifactId>elasticsearch-analysis-ik</artifactId>
<version>1.2.1</version> <version>1.2.2</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<description>IK Analyzer for ElasticSearch</description> <description>IK Analyzer for ElasticSearch</description>
<inceptionYear>2009</inceptionYear> <inceptionYear>2009</inceptionYear>

View File

@ -1,30 +1,32 @@
package org.elasticsearch.index.analysis; package org.elasticsearch.index.analysis;
import java.io.Reader; import org.apache.lucene.analysis.Tokenizer;
import org.elasticsearch.common.inject.Inject;
import org.apache.lucene.analysis.Tokenizer; import org.elasticsearch.common.inject.assistedinject.Assisted;
import org.elasticsearch.common.inject.Inject; import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.settings.Settings; import org.elasticsearch.index.Index;
import org.elasticsearch.index.Index; import org.elasticsearch.index.settings.IndexSettings;
import org.wltea.analyzer.dic.Dictionary; import org.wltea.analyzer.dic.Dictionary;
import org.wltea.analyzer.lucene.IKTokenizer; import org.wltea.analyzer.lucene.IKTokenizer;
public class IkTokenizerFactory extends AbstractTokenizerFactory { import java.io.Reader;
private boolean useSmart = false;
public class IkTokenizerFactory extends AbstractTokenizerFactory {
@Inject private boolean useSmart = false;
public IkTokenizerFactory(Index index, Settings indexSettings, String name, Settings settings) {
super(index, indexSettings, name, settings); @Inject
Dictionary.getInstance().Init(indexSettings); public IkTokenizerFactory(Index index,@IndexSettings Settings indexSettings,@Assisted String name, @Assisted Settings settings) {
super(index, indexSettings, name, settings);
if (settings.get("use_smart", "true").equals("true")) { Dictionary.getInstance().Init(indexSettings);
useSmart = true;
} if (settings.get("use_smart", "true").equals("true")) {
} useSmart = true;
}
@Override }
public Tokenizer create(Reader reader) {
return new IKTokenizer(reader, useSmart); @Override
} public Tokenizer create(Reader reader) {
return new IKTokenizer(reader, useSmart);
} }
}