Module org.elasticsearch.server
Package org.elasticsearch.index.query
Class LeafQueryBuilder<QB extends LeafQueryBuilder<QB>>
java.lang.Object
org.elasticsearch.index.query.AbstractQueryBuilder<QB>
org.elasticsearch.index.query.LeafQueryBuilder<QB>
- All Implemented Interfaces:
NamedWriteable,VersionedNamedWriteable,Writeable,QueryBuilder,Rewriteable<QueryBuilder>,ToXContent,ToXContentObject
- Direct Known Subclasses:
AbstractGeometryQueryBuilder,BaseTermQueryBuilder,BoostingQueryBuilder,CombinedFieldsQueryBuilder,DistanceFeatureQueryBuilder,ExactKnnQueryBuilder,ExistsQueryBuilder,FieldMaskingSpanQueryBuilder,FuzzyQueryBuilder,GeoBoundingBoxQueryBuilder,GeoDistanceQueryBuilder,GeoPolygonQueryBuilder,IdsQueryBuilder,IntervalQueryBuilder,KnnScoreDocQueryBuilder,KnnVectorQueryBuilder,MatchAllQueryBuilder,MatchNoneQueryBuilder,MoreLikeThisQueryBuilder,NestedQueryBuilder,PrefixQueryBuilder,QueryStringQueryBuilder,RandomSamplingQueryBuilder,RangeQueryBuilder,RankDocsQueryBuilder,RegexpQueryBuilder,ScriptQueryBuilder,SimpleQueryStringBuilder,SpanContainingQueryBuilder,SpanFirstQueryBuilder,SpanMultiTermQueryBuilder,SpanNearQueryBuilder,SpanNotQueryBuilder,SpanOrQueryBuilder,SpanWithinQueryBuilder,TermsQueryBuilder,TermsSetQueryBuilder,ToChildBlockJoinQueryBuilder,WildcardQueryBuilder
public abstract class LeafQueryBuilder<QB extends LeafQueryBuilder<QB>>
extends AbstractQueryBuilder<QB>
Base class for query builders that produce a single Lucene query.
Implementations provide the query via doToQuery(SearchExecutionContext) and this class
ensures the resulting query is visited by the provided QueryVisitor.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.elasticsearch.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.ParamsNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Field Summary
Fields inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
boost, BOOST_FIELD, DEFAULT_BOOST, NAME_FIELD, queryNameFields inherited from interface org.elasticsearch.index.query.Rewriteable
MAX_REWRITE_ROUNDSFields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY, EMPTY_PARAMS -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedprotected -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.apache.lucene.search.QuerydoToQuery(SearchExecutionContext context) protected final org.apache.lucene.search.QuerydoToQuery(SearchExecutionContext context, MaxClauseCountQueryVisitor queryVisitor) Builds the LuceneQueryfor this builder.Methods inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
addValidationError, boost, boost, boostAndQueryNameToXContent, checkNegativeBoost, declareStandardFields, doCoordinatorRewrite, doEquals, doHashCode, doIndexMetadataRewrite, doInnerHitsRewrite, doRewrite, doSearchRewrite, doWriteTo, doXContent, equals, extractInnerHitBuilders, getMaxNestedDepth, getName, hashCode, parseInnerQueryBuilder, parseTopLevelQuery, parseTopLevelQuery, printBoostAndQueryName, queryName, queryName, readQueries, requireValue, rewrite, setMaxNestedDepth, throwParsingExceptionOnMultipleFields, toQuery, toQuery, toString, toXContent, writeQueries, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.elasticsearch.xcontent.ToXContentObject
isFragmentMethods inherited from interface org.elasticsearch.common.io.stream.VersionedNamedWriteable
getMinimalSupportedVersion, getWriteableName, supportsVersion
-
Constructor Details
-
LeafQueryBuilder
protected LeafQueryBuilder() -
LeafQueryBuilder
- Throws:
IOException
-
-
Method Details
-
doToQuery
protected final org.apache.lucene.search.Query doToQuery(SearchExecutionContext context, MaxClauseCountQueryVisitor queryVisitor) throws IOException Description copied from class:AbstractQueryBuilderBuilds the LuceneQueryfor this builder.Implementations should use the provided
QueryVisitorto visit any generated query or sub-queries. Boost and named-query handling are applied byQueryBuilder.toQuery(SearchExecutionContext, MaxClauseCountQueryVisitor).LeafQueryBuilderimplementations get this visitor handling automatically.- Specified by:
doToQueryin classAbstractQueryBuilder<QB extends LeafQueryBuilder<QB>>- Parameters:
context- additional information needed to construct the queryqueryVisitor- query MaxClauseCountQueryVisitor used to account for clauses while building the query- Returns:
- the
Queryornullif this query should be ignored upstream - Throws:
IOException
-
doToQuery
protected abstract org.apache.lucene.search.Query doToQuery(SearchExecutionContext context) throws IOException - Throws:
IOException
-