public abstract class Query extends Object implements Serializable, Cloneable
Modifier and Type | Class and Description |
---|---|
static interface |
Query.ForEachQueryNode
ForEachQueryNode interface
|
Modifier and Type | Field and Description |
---|---|
protected Query |
child
An encapsulated query.
|
protected static SingleTermQuery[] |
tmpSTQ
An attribute used constructing arrays of the right type.
|
Constructor and Description |
---|
Query()
default constructor
|
Modifier and Type | Method and Description |
---|---|
void |
apply(Query.ForEachQueryNode processor)
Apply the specified processor to this node.
|
boolean |
applyTermPipeline(TermPipelineAccessor tpa)
Applies a term pipeline in the query's terms, through
the given term pipeline accessor.
|
Object |
clone()
Deep copy this Query object
|
protected void |
getTerms(List<Query> alist)
Returns the terms of the query.
|
abstract void |
getTermsOf(Class<? extends Query> c,
List<Query> alist,
boolean req)
Returns all the query terms, in subqueries that
are instances of a given class
|
void |
obtainAllOf(Class<? extends Query> c,
List<Query> a)
Returns all the queries of the specified class
|
boolean |
obtainControls(Set<String> allowed,
Map<String,String> controls)
Returns the specified control or false if that control does not exist
|
void |
obtainQueryTerms(MatchingQueryTerms terms)
Stores the terms of the query in an structure used for matching
documents to the query.
|
void |
obtainQueryTerms(MatchingQueryTerms terms,
boolean required)
Stores the terms of the query in an structure used for matching
documents to the query.
|
abstract String |
parseTree()
Returns the parse tree for the query as a string
|
void |
setChild(Query q)
Sets the subquery object of this query.
|
abstract String |
toString()
Force anything concrete to provide toString method
|
protected Query child
protected static final SingleTermQuery[] tmpSTQ
public abstract String toString()
public abstract String parseTree()
public abstract void getTermsOf(Class<? extends Query> c, List<Query> alist, boolean req)
c
- Class a class of queries.alist
- ArrayList the list of query terms.req
- boolean indicates whether it the
subqueries are required or not.public void setChild(Query q)
q
- Query the subquery object.public boolean applyTermPipeline(TermPipelineAccessor tpa)
tpa
- TermPipelineAccessor the object that provides
access to the term pipeline.public boolean obtainControls(Set<String> allowed, Map<String,String> controls)
public void obtainQueryTerms(MatchingQueryTerms terms)
terms
- MatchingQueryTerms the structure that is used for
modelling a query for matching.public void obtainQueryTerms(MatchingQueryTerms terms, boolean required)
terms
- MatchingQueryTerms the structure that is used for
modelling a query for matching.required
- boolean specifies whether the subqueries are
required or not.protected void getTerms(List<Query> alist)
alist
- A structure that contains the query terms.public void apply(Query.ForEachQueryNode processor)
processor
- Terrier Information Retrieval Platform4.1. Copyright © 2004-2015, University of Glasgow