@Override public BooleanClause clone(final BooleanQuery newParent, final Occur occur, final boolean generated) { final DisjunctionMaxQuery dmq = new DisjunctionMaxQuery(newParent, occur, generated); for (final DisjunctionMaxClause clause : clauses) { dmq.addClause(clause.clone(dmq, generated)); } return dmq; }
@Override public T visit(final BooleanQuery booleanQuery) { for (final BooleanClause clause : booleanQuery.getClauses()) { clause.accept(this); } return null; }
@Override public T visit(final Query query) { for (final BooleanClause clause : query.getClauses()) { clause.accept(this); } return null; }
Query termsToQuery(String termsQuery) { Query query = new Query(); for (String t : termsQuery.split("\\s+")) { if (t.length() > 0) { DisjunctionMaxQuery dmq = new DisjunctionMaxQuery(query, Occur.SHOULD, false); query.addClause(dmq); Term term = new Term(dmq, t); dmq.addClause(term); } } return query; }
@Override public Node visit(final Query query) { Query clone = new Query(); newParentStack.add(clone); for (final BooleanClause clause : query.getClauses()) { clone.addClause((BooleanClause) clause.accept(this)); } newParentStack.removeLast(); return clone; }
public BooleanQuery clone(final BooleanParent newParent, final Occur occur, final boolean generated) { final BooleanQuery bq = new BooleanQuery(newParent, occur, generated); for (final BooleanClause clause : clauses) { bq.addClause(clause.clone(bq, generated)); } return bq; } }
@Override public Node visit(final BooleanQuery booleanQuery) { super.visit(booleanQuery); return booleanQuery; }
@Override public T visit(final DisjunctionMaxQuery disjunctionMaxQuery) { for (final DisjunctionMaxClause clause : disjunctionMaxQuery.getClauses()) { clause.accept(this); } return null; }
public CacheKey(String fieldname, Term term) { this.fieldname = fieldname; // this.term = term; value = term.getValue(); }
@Override public QuerqyQuery<BooleanParent> clone(final BooleanParent newParent, boolean generated) { return new MatchAllQuery(newParent, getOccur(), generated); } }
@Override public void apply(final PositionSequence<Term> sequence, final TermMatches termMatches, final int startPosition, final int endPosition, final ExpandedQuery expandedQuery, final Map<String, Object> context) { // TODO: we might not need to clone here, if we already cloned all queries in the constructor expandedQuery.addFilterQuery(filterQuery.clone(null, true)); }
@Override public BooleanQuery clone(final BooleanParent newParent) { return clone(newParent, this.occur, this.generated); }
@Override protected boolean matchesSafely(Occur occur) { return expected.equals(occur); } }
private void addTerm(Query query, String field, String value) { DisjunctionMaxQuery dmq = new DisjunctionMaxQuery(query, Clause.Occur.SHOULD, true); query.addClause(dmq); Term term = new Term(dmq, field, value); dmq.addClause(term); }
@Override public Node visit(final RawQuery rawQuery) { super.visit(rawQuery); return rawQuery; }
private void addTerm(Query query, String field, String value, boolean isGenerated) { DisjunctionMaxQuery dmq = new DisjunctionMaxQuery(query, Clause.Occur.SHOULD, true); query.addClause(dmq); Term term = new Term(dmq, field, value, isGenerated); dmq.addClause(term); }
@Override public Node visit(final Query query) { super.visit(query); return query; }
@Override public Node visit(final BooleanQuery bq) { previousTerm = null; return super.visit(bq); } }