querqy.model.Query.getClauses()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(2.9k)|赞(0)|评价(0)|浏览(254)

本文整理了Java中querqy.model.Query.getClauses方法的一些代码示例,展示了Query.getClauses的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query.getClauses方法的具体详情如下:
包路径:querqy.model.Query
类名称:Query
方法名:getClauses

Query.getClauses介绍

暂无

代码示例

代码示例来源:origin: renekrie/querqy

  1. @Override
  2. public T visit(final Query query) {
  3. for (final BooleanClause clause : query.getClauses()) {
  4. clause.accept(this);
  5. }
  6. return null;
  7. }

代码示例来源:origin: renekrie/querqy

  1. @Override
  2. public Node visit(final Query query) {
  3. Query clone = new Query();
  4. newParentStack.add(clone);
  5. for (final BooleanClause clause : query.getClauses()) {
  6. clone.addClause((BooleanClause) clause.accept(this));
  7. }
  8. newParentStack.removeLast();
  9. return clone;
  10. }

代码示例来源:origin: renekrie/querqy

  1. if (t.length() > 0) {
  2. Query query = termsToQuery(t);
  3. if (!query.getClauses().isEmpty()) {
  4. for (Input input : inputs) {
  5. BoostInstruction bi = new BoostInstruction(query, direction, boost);

代码示例来源:origin: renekrie/querqy

  1. final List<BooleanClause> clauses = ((querqy.model.Query) userQuery).getClauses();

代码示例来源:origin: renekrie/querqy

  1. if (query.getClauses().isEmpty()) {
  2. DisjunctionMaxQuery dmq = new DisjunctionMaxQuery(query, Occur.SHOULD, false);
  3. dmq.addClause(new Term(dmq, input));

代码示例来源:origin: renekrie/querqy

  1. @Test
  2. public void testThatTermIsRemovedIfThereIsAnotherTermInTheSameDMQ() throws Exception {
  3. RulesCollectionBuilder builder = new TrieMapRulesCollectionBuilder(false);
  4. DeleteInstruction delete = new DeleteInstruction(Arrays.asList(mkTerm("a")));
  5. builder.addRule(new Input(Arrays.asList(mkTerm("a")), false, false), new Instructions(Arrays.asList((Instruction) delete)));
  6. RulesCollection rules = builder.build();
  7. CommonRulesRewriter rewriter = new CommonRulesRewriter(rules);
  8. ExpandedQuery expandedQuery = makeQuery("a");
  9. Query query = (Query) expandedQuery.getUserQuery();
  10. DisjunctionMaxQuery dmq = query.getClauses(DisjunctionMaxQuery.class).get(0);
  11. querqy.model.Term termB = new querqy.model.Term(dmq, null, "b");
  12. dmq.addClause(termB);
  13. Query rewritten = (Query) rewriter.rewrite(expandedQuery, EMPTY_CONTEXT).getUserQuery();
  14. assertThat(rewritten,
  15. bq(
  16. dmq(
  17. term("b")
  18. )
  19. ));
  20. }

代码示例来源:origin: renekrie/querqy

  1. @Test
  2. public void testThatTermIsRemovedOnceIfItExistsTwiceInSameDMQAndNoOtherTermExistsInQuery() throws Exception {
  3. RulesCollectionBuilder builder = new TrieMapRulesCollectionBuilder(false);
  4. DeleteInstruction delete = new DeleteInstruction(Arrays.asList(mkTerm("a")));
  5. builder.addRule(new Input(Arrays.asList(mkTerm("a")), false, false), new Instructions(Arrays.asList((Instruction) delete)));
  6. RulesCollection rules = builder.build();
  7. CommonRulesRewriter rewriter = new CommonRulesRewriter(rules);
  8. ExpandedQuery expandedQuery = makeQuery("a");
  9. Query query = (Query) expandedQuery.getUserQuery();
  10. DisjunctionMaxQuery dmq = query.getClauses(DisjunctionMaxQuery.class).get(0);
  11. querqy.model.Term termB = new querqy.model.Term(dmq, null, "a");
  12. dmq.addClause(termB);
  13. Query rewritten = (Query) rewriter.rewrite(expandedQuery, EMPTY_CONTEXT).getUserQuery();
  14. assertThat(rewritten,
  15. bq(
  16. dmq(
  17. term("a")
  18. )
  19. ));
  20. }

相关文章