no.sesat.search.mode.command.querybuilder
Class AbstractQueryBuilder
java.lang.Object
no.sesat.commons.visitor.AbstractReflectionVisitor
no.sesat.search.mode.command.querybuilder.AbstractQueryBuilder
- All Implemented Interfaces:
- no.sesat.commons.visitor.Visitor, QueryBuilder
- Direct Known Subclasses:
- BaseFilterBuilder, InfixQueryBuilder, PrefixQueryBuilder
public abstract class AbstractQueryBuilder
- extends no.sesat.commons.visitor.AbstractReflectionVisitor
- implements QueryBuilder
Abstract QueryBuilder providing basic support for mantaining context and stringBuilder fields (and related methods).
Any instance will have getQuery(..) called multiple times.
It is therefore paramount that inside this method state fields are reset before the visitor is visited.
For example a subclass will override getQuery(..) such:
@Override
public String getQueryString() {
// myVariable needs to be reset before every visit.
myVariable = 0;
return super.getQueryString();
}
- Version:
- $Id: AbstractQueryBuilder.java 7225 2009-04-09 00:32:20Z ssmiweve $
| Fields inherited from class no.sesat.commons.visitor.AbstractReflectionVisitor |
VISIT_METHOD_IMPL |
| Methods inherited from class no.sesat.commons.visitor.AbstractReflectionVisitor |
visit, visitImpl |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface no.sesat.commons.visitor.Visitor |
visit |
AbstractQueryBuilder
public AbstractQueryBuilder(QueryBuilder.Context cxt,
QueryBuilderConfig config)
getQueryString
public String getQueryString()
- Description copied from interface:
QueryBuilder
- The Query String built from the Query's transformed clauses.
- Specified by:
getQueryString in interface QueryBuilder
- Returns:
- string built from the Query's transformed clauses, or "*".
getContext
protected final QueryBuilder.Context getContext()
getConfig
protected QueryBuilderConfig getConfig()
getEscapedTransformedTerm
protected String getEscapedTransformedTerm(Clause clause)
- Gets the transformed term, escaping any reserved words.
- Parameters:
clause -
- Returns:
escape
protected String escape(String string)
- Escapes any reserved words (including those fielded).
Case-insensitive.
How to actually escape any matching words is left to the context to define via context.escape(word)
- Parameters:
string -
- Returns:
- possibilly escaped string
getWordsToEscape
protected Collection<String> getWordsToEscape()
appendToQueryRepresentation
protected final void appendToQueryRepresentation(CharSequence addition)
appendToQueryRepresentation
protected final void appendToQueryRepresentation(char addition)
getQueryRepresentationLength
protected final int getQueryRepresentationLength()
insertToQueryRepresentation
protected final void insertToQueryRepresentation(int offset,
CharSequence addition)
isEmptyLeaf
protected boolean isEmptyLeaf(Clause clause)
isNextLeafInsideNotClause
protected boolean isNextLeafInsideNotClause(Clause clause)
visitImpl
protected void visitImpl(XorClause clause)
Copyright © 2005-2009 Schibsted ASA. All Rights Reserved.