本文整理汇总了Java中org.apache.lucene.search.spell.HighFrequencyDictionary类的典型用法代码示例。如果您正苦于以下问题:Java HighFrequencyDictionary类的具体用法?Java HighFrequencyDictionary怎么用?Java HighFrequencyDictionary使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
HighFrequencyDictionary类属于org.apache.lucene.search.spell包,在下文中一共展示了HighFrequencyDictionary类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: build
import org.apache.lucene.search.spell.HighFrequencyDictionary; //导入依赖的package包/类
@Override
public void build(SolrCore core, SolrIndexSearcher searcher) throws IOException {
IndexReader reader = null;
if (sourceLocation == null) {
// Load from Solr's index
reader = searcher.getIndexReader();
} else {
// Load from Lucene index at given sourceLocation
reader = this.reader;
}
// Create the dictionary
dictionary = new HighFrequencyDictionary(reader, field,
threshold);
// TODO: maybe whether or not to clear the index should be configurable?
// an incremental update is faster (just adds new terms), but if you 'expunged'
// old terms I think they might hang around.
spellChecker.clearIndex();
// TODO: you should be able to specify the IWC params?
// TODO: if we enable this, codec gets angry since field won't exist in the schema
// config.setCodec(core.getCodec());
spellChecker.indexDictionary(dictionary, new IndexWriterConfig(core.getSolrConfig().luceneMatchVersion, null), false);
}
示例2: create
import org.apache.lucene.search.spell.HighFrequencyDictionary; //导入依赖的package包/类
@Override
public Dictionary create(SolrCore core, SolrIndexSearcher searcher) {
if(params == null) {
// should not happen; implies setParams was not called
throw new IllegalStateException("Value of params not set");
}
String field = (String)params.get(SolrSpellChecker.FIELD);
if (field == null) {
throw new IllegalArgumentException(SolrSpellChecker.FIELD + " is a mandatory parameter");
}
float threshold = params.get(THRESHOLD_TOKEN_FREQUENCY) == null ? 0.0f
: (Float)params.get(THRESHOLD_TOKEN_FREQUENCY);
return new HighFrequencyDictionary(searcher.getIndexReader(), field, threshold);
}
示例3: createIndexSpellchecker
import org.apache.lucene.search.spell.HighFrequencyDictionary; //导入依赖的package包/类
@NotNull
private static SpellChecker createIndexSpellchecker(@NotNull final Directory index) throws IOException {
final Directory spellCheckerDirectory = new RAMDirectory();
final IndexReader indexReader = DirectoryReader.open(index);
final Analyzer analyzer = new SimpleAnalyzer();
final IndexWriterConfig config = new IndexWriterConfig(analyzer);
final Dictionary dictionary = new HighFrequencyDictionary(indexReader, DRUG_TERMS_FIELD, 0.0f);
final SpellChecker spellChecker = new SpellChecker(spellCheckerDirectory);
spellChecker.indexDictionary(dictionary, config, false);
spellChecker.setAccuracy(SPELLCHECK_ACCURACY);
return spellChecker;
}
示例4: testEmpty
import org.apache.lucene.search.spell.HighFrequencyDictionary; //导入依赖的package包/类
public void testEmpty() throws Exception {
Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(new MockAnalyzer(random())));
writer.commit();
writer.close();
IndexReader ir = DirectoryReader.open(dir);
Dictionary dictionary = new HighFrequencyDictionary(ir, "bogus", 0.1f);
BytesRefIterator tf = dictionary.getEntryIterator();
assertNull(tf.getComparator());
assertNull(tf.next());
dir.close();
}
示例5: testEmpty
import org.apache.lucene.search.spell.HighFrequencyDictionary; //导入依赖的package包/类
public void testEmpty() throws Exception {
Directory dir = newDirectory();
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())));
writer.commit();
writer.close();
IndexReader ir = DirectoryReader.open(dir);
Dictionary dictionary = new HighFrequencyDictionary(ir, "bogus", 0.1f);
BytesRefIterator tf = dictionary.getWordsIterator();
assertNull(tf.getComparator());
assertNull(tf.next());
dir.close();
}