本文整理汇总了Java中org.apache.lucene.index.SingleTermsEnum类的典型用法代码示例。如果您正苦于以下问题:Java SingleTermsEnum类的具体用法?Java SingleTermsEnum怎么用?Java SingleTermsEnum使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SingleTermsEnum类属于org.apache.lucene.index包,在下文中一共展示了SingleTermsEnum类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getTermsEnum
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
/** Return a {@link TermsEnum} intersecting the provided {@link Terms}
* with the terms accepted by this automaton. */
public TermsEnum getTermsEnum(Terms terms) throws IOException {
switch(type) {
case NONE:
return TermsEnum.EMPTY;
case ALL:
return terms.iterator(null);
case SINGLE:
return new SingleTermsEnum(terms.iterator(null), term);
case PREFIX:
// TODO: this is very likely faster than .intersect,
// but we should test and maybe cutover
return new PrefixTermsEnum(terms.iterator(null), term);
case NORMAL:
return terms.intersect(this, null);
default:
// unreachable
throw new RuntimeException("unhandled case");
}
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:22,代码来源:CompiledAutomaton.java
示例2: getTermsEnum
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
public TermsEnum getTermsEnum(Terms terms) throws IOException {
switch(type) {
case NONE:
return TermsEnum.EMPTY;
case ALL:
return terms.iterator(null);
case SINGLE:
return new SingleTermsEnum(terms.iterator(null), term);
case PREFIX:
// TODO: this is very likely faster than .intersect,
// but we should test and maybe cutover
return new PrefixTermsEnum(terms.iterator(null), term);
case NORMAL:
return terms.intersect(this, null);
default:
// unreachable
throw new RuntimeException("unhandled case");
}
}
开发者ID:pkarmstr,项目名称:NYBC,代码行数:20,代码来源:CompiledAutomaton.java
示例3: getTermsEnum
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts) throws IOException {
if (maxEdits == 0 || prefixLength >= term.text().length()) { // can only match if it's exact
return new SingleTermsEnum(terms.iterator(null), term.bytes());
}
return new FuzzyTermsEnum(terms, atts, getTerm(), maxEdits, prefixLength, transpositions);
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:8,代码来源:FuzzyQuery.java
示例4: getTermsEnum
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(final Terms terms,
final AttributeSource atts) throws IOException {
if ((maxEdits == 0) || (prefixLength >= term.text().length())) { // can
// only
// match
// if
// it's
// exact
return new SingleTermsEnum(terms.iterator(null), term.bytes());
}
return new FuzzyTermsEnum(terms, atts, getTerm(), maxEdits,
prefixLength, transpositions);
}
开发者ID:quhfus,项目名称:DoSeR-Disambiguation,代码行数:15,代码来源:LearnToRankFuzzyQuery.java
示例5: getTermsEnum
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts) throws IOException {
if (!termLongEnough) { // can only match if it's exact
return new SingleTermsEnum(terms.iterator(null), term.bytes());
}
return new SlowFuzzyTermsEnum(terms, atts, getTerm(), minimumSimilarity, prefixLength);
}
开发者ID:europeana,项目名称:search,代码行数:8,代码来源:SlowFuzzyQuery.java
示例6: testRewriteSingleTerm
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
/**
* Test that rewriting to a single term works as expected, preserves
* MultiTermQuery semantics.
*/
public void testRewriteSingleTerm() throws IOException {
AutomatonQuery aq = new AutomatonQuery(newTerm("bogus"), Automata.makeString("piece"));
Terms terms = MultiFields.getTerms(searcher.getIndexReader(), FN);
assertTrue(aq.getTermsEnum(terms) instanceof SingleTermsEnum);
assertEquals(1, automatonQueryNrHits(aq));
}
开发者ID:europeana,项目名称:search,代码行数:11,代码来源:TestAutomatonQuery.java
示例7: getTermsEnum
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts)
throws IOException {
if (maxEdits == 0 || prefixLength >= term.text().length()) { // can only
// match
// if
// it's
// exact
return new SingleTermsEnum(terms.iterator(null), term.bytes());
}
return new FuzzyTermsEnum(terms, atts, getTerm(), maxEdits,
prefixLength, transpositions);
}
开发者ID:quhfus,项目名称:DoSeR,代码行数:14,代码来源:LearnToRankFuzzyQuery.java
示例8: testRewriteSingleTerm
import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
/**
* Test that rewriting to a single term works as expected, preserves
* MultiTermQuery semantics.
*/
public void testRewriteSingleTerm() throws IOException {
AutomatonQuery aq = new AutomatonQuery(newTerm("bogus"), BasicAutomata
.makeString("piece"));
Terms terms = MultiFields.getTerms(searcher.getIndexReader(), FN);
assertTrue(aq.getTermsEnum(terms) instanceof SingleTermsEnum);
assertEquals(1, automatonQueryNrHits(aq));
}
开发者ID:pkarmstr,项目名称:NYBC,代码行数:12,代码来源:TestAutomatonQuery.java
注:本文中的org.apache.lucene.index.SingleTermsEnum类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论