NamedWriteable
, Writeable
, ToXContent
, ToXContentObject
, QueryBuilder
, Rewriteable<QueryBuilder>
BaseTermQueryBuilder
, BoolQueryBuilder
, BoostingQueryBuilder
, CommonTermsQueryBuilder
, ConstantScoreQueryBuilder
, DisMaxQueryBuilder
, ExistsQueryBuilder
, FieldMaskingSpanQueryBuilder
, FunctionScoreQueryBuilder
, FuzzyQueryBuilder
, GeoBoundingBoxQueryBuilder
, GeoDistanceQueryBuilder
, GeoPolygonQueryBuilder
, GeoShapeQueryBuilder
, IdsQueryBuilder
, MatchAllQueryBuilder
, MatchNoneQueryBuilder
, MatchPhrasePrefixQueryBuilder
, MatchPhraseQueryBuilder
, MatchQueryBuilder
, MoreLikeThisQueryBuilder
, MultiMatchQueryBuilder
, NestedQueryBuilder
, PrefixQueryBuilder
, QueryStringQueryBuilder
, RangeQueryBuilder
, RegexpQueryBuilder
, ScriptQueryBuilder
, SimpleQueryStringBuilder
, SpanContainingQueryBuilder
, SpanFirstQueryBuilder
, SpanMultiTermQueryBuilder
, SpanNearQueryBuilder
, SpanNotQueryBuilder
, SpanOrQueryBuilder
, SpanWithinQueryBuilder
, TermsQueryBuilder
, TermsSetQueryBuilder
, TypeQueryBuilder
, WildcardQueryBuilder
, WrapperQueryBuilder
public abstract class AbstractQueryBuilder<QB extends AbstractQueryBuilder<QB>> extends java.lang.Object implements QueryBuilder
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
Writeable.Reader<V>, Writeable.Writer<V>
Modifier and Type | Field | Description |
---|---|---|
protected float |
boost |
|
static ParseField |
BOOST_FIELD |
|
static float |
DEFAULT_BOOST |
Default for boost to apply to resulting Lucene query.
|
static ParseField |
NAME_FIELD |
|
protected java.lang.String |
queryName |
MAX_REWRITE_ROUNDS
EMPTY_PARAMS
Modifier | Constructor | Description |
---|---|---|
protected |
AbstractQueryBuilder() |
|
protected |
AbstractQueryBuilder(StreamInput in) |
Modifier and Type | Method | Description |
---|---|---|
protected QueryValidationException |
addValidationError(java.lang.String validationError,
QueryValidationException validationException) |
|
float |
boost() |
Returns the boost for this query.
|
QB |
boost(float boost) |
Sets the boost for this query.
|
protected static void |
declareStandardFields(AbstractObjectParser<? extends QueryBuilder,?> parser) |
|
protected abstract boolean |
doEquals(QB other) |
Indicates whether some other
QueryBuilder object of the same type is "equal to" this one. |
protected abstract int |
doHashCode() |
|
protected QueryBuilder |
doRewrite(QueryRewriteContext queryShardContext) |
|
protected abstract org.apache.lucene.search.Query |
doToQuery(QueryShardContext context) |
|
protected abstract void |
doWriteTo(StreamOutput out) |
|
protected abstract void |
doXContent(XContentBuilder builder,
ToXContent.Params params) |
|
boolean |
equals(java.lang.Object obj) |
|
protected void |
extractInnerHitBuilders(java.util.Map<java.lang.String,InnerHitContextBuilder> innerHits) |
For internal usage only!
Extracts the inner hits from the query tree.
|
java.lang.String |
getName() |
Returns the name that identifies uniquely the query
|
int |
hashCode() |
|
static QueryBuilder |
parseInnerQueryBuilder(XContentParser parser) |
Parses a query excluding the query element that wraps it
|
protected void |
printBoostAndQueryName(XContentBuilder builder) |
|
java.lang.String |
queryName() |
Returns the query name for the query.
|
QB |
queryName(java.lang.String queryName) |
Sets the query name for the query.
|
protected static <T> T |
requireValue(T value,
java.lang.String message) |
|
QueryBuilder |
rewrite(QueryRewriteContext queryShardContext) |
Rewrites this query builder into its primitive form.
|
protected static void |
throwParsingExceptionOnMultipleFields(java.lang.String queryName,
XContentLocation contentLocation,
java.lang.String processedFieldName,
java.lang.String currentFieldName) |
|
org.apache.lucene.search.Query |
toFilter(QueryShardContext context) |
Converts this QueryBuilder to an unscored lucene
Query that acts as a filter. |
org.apache.lucene.search.Query |
toQuery(QueryShardContext context) |
Converts this QueryBuilder to a lucene
Query . |
java.lang.String |
toString() |
|
XContentBuilder |
toXContent(XContentBuilder builder,
ToXContent.Params params) |
|
void |
writeTo(StreamOutput out) |
Write this into the StreamOutput.
|
getWriteableName
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
isFragment
public static final float DEFAULT_BOOST
public static final ParseField NAME_FIELD
public static final ParseField BOOST_FIELD
protected java.lang.String queryName
protected float boost
protected AbstractQueryBuilder()
protected AbstractQueryBuilder(StreamInput in) throws java.io.IOException
java.io.IOException
public final void writeTo(StreamOutput out) throws java.io.IOException
Writeable
protected abstract void doWriteTo(StreamOutput out) throws java.io.IOException
java.io.IOException
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
toXContent
in interface ToXContent
java.io.IOException
protected abstract void doXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
java.io.IOException
protected void printBoostAndQueryName(XContentBuilder builder) throws java.io.IOException
java.io.IOException
public final org.apache.lucene.search.Query toQuery(QueryShardContext context) throws java.io.IOException
QueryBuilder
Query
.
Returns null if this query should be ignored in the context of
parent queries.toQuery
in interface QueryBuilder
context
- additional information needed to construct the queriesQuery
or null if this query should be ignored upstreamjava.io.IOException
public final org.apache.lucene.search.Query toFilter(QueryShardContext context) throws java.io.IOException
QueryBuilder
Query
that acts as a filter.
Returns null if this query should be ignored in the context of
parent queries.toFilter
in interface QueryBuilder
context
- additional information needed to construct the queriesQuery
or null if this query should be ignored upstreamjava.io.IOException
protected abstract org.apache.lucene.search.Query doToQuery(QueryShardContext context) throws java.io.IOException
java.io.IOException
public final QB queryName(java.lang.String queryName)
queryName
in interface QueryBuilder
public final java.lang.String queryName()
queryName
in interface QueryBuilder
public final float boost()
boost
in interface QueryBuilder
public final QB boost(float boost)
boost
in interface QueryBuilder
protected final QueryValidationException addValidationError(java.lang.String validationError, QueryValidationException validationException)
public final boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
protected abstract boolean doEquals(QB other)
QueryBuilder
object of the same type is "equal to" this one.public final int hashCode()
hashCode
in class java.lang.Object
protected abstract int doHashCode()
public java.lang.String getName()
QueryBuilder
getName
in interface QueryBuilder
public final QueryBuilder rewrite(QueryRewriteContext queryShardContext) throws java.io.IOException
QueryBuilder
rewrite
in interface QueryBuilder
rewrite
in interface Rewriteable<QB extends AbstractQueryBuilder<QB>>
java.io.IOException
protected QueryBuilder doRewrite(QueryRewriteContext queryShardContext) throws java.io.IOException
java.io.IOException
protected void extractInnerHitBuilders(java.util.Map<java.lang.String,InnerHitContextBuilder> innerHits)
public static QueryBuilder parseInnerQueryBuilder(XContentParser parser) throws java.io.IOException
java.io.IOException
protected static <T> T requireValue(T value, java.lang.String message)
protected static void throwParsingExceptionOnMultipleFields(java.lang.String queryName, XContentLocation contentLocation, java.lang.String processedFieldName, java.lang.String currentFieldName)
protected static void declareStandardFields(AbstractObjectParser<? extends QueryBuilder,?> parser)
boost
and query_name
parsing to the
AbstractObjectParser
passed in. All query builders except
MatchAllQueryBuilder
and MatchNoneQueryBuilder
support these fields so they
should use this method.public final java.lang.String toString()
toString
in class java.lang.Object