Package org.elasticsearch.index.query
Class AbstractGeometryQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
java.lang.Object
org.elasticsearch.index.query.AbstractQueryBuilder<QB>
org.elasticsearch.index.query.AbstractGeometryQueryBuilder<QB>
- All Implemented Interfaces:
NamedWriteable
,Writeable
,org.elasticsearch.common.xcontent.ToXContent
,org.elasticsearch.common.xcontent.ToXContentObject
,QueryBuilder
,Rewriteable<QueryBuilder>
- Direct Known Subclasses:
GeoShapeQueryBuilder
public abstract class AbstractGeometryQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
extends AbstractQueryBuilder<QB>
Base
QueryBuilder
that builds a Geometry Query-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
local class that encapsulates xcontent parsed shape parametersNested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.Params
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Field Summary
Modifier and TypeFieldDescriptionstatic boolean
The default value for ignore_unmapped.static String
static String
static ShapeRelation
protected String
protected static org.elasticsearch.common.xcontent.ParseField
protected boolean
protected static org.elasticsearch.common.xcontent.ParseField
protected String
protected String
protected String
protected String
protected String
protected ShapeRelation
protected static org.elasticsearch.common.xcontent.ParseField
protected org.elasticsearch.geometry.Geometry
protected static org.elasticsearch.common.xcontent.ParseField
protected static org.elasticsearch.common.xcontent.ParseField
protected static org.elasticsearch.common.xcontent.ParseField
protected static org.elasticsearch.common.xcontent.ParseField
protected static org.elasticsearch.common.xcontent.ParseField
protected static org.elasticsearch.common.xcontent.ParseField
protected Supplier<org.elasticsearch.geometry.Geometry>
Fields inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
boost, BOOST_FIELD, DEFAULT_BOOST, NAME_FIELD, queryName
Fields inherited from interface org.elasticsearch.index.query.Rewriteable
MAX_REWRITE_ROUNDS
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
Constructor Summary
ModifierConstructorDescriptionprotected
AbstractGeometryQueryBuilder(String fieldName, String indexedShapeId)
Creates a new ShapeQueryBuilder whose Query will be against the given field name and will use the Shape found with the given IDprotected
AbstractGeometryQueryBuilder(String fieldName, String indexedShapeId, String indexedShapeType)
Deprecated.protected
AbstractGeometryQueryBuilder(String fieldName, Supplier<org.elasticsearch.geometry.Geometry> supplier, String indexedShapeId, String indexedShapeType)
protected
AbstractGeometryQueryBuilder(String fieldName, ShapeBuilder shape)
Deprecated.useAbstractGeometryQueryBuilder(String, Geometry)
insteadAbstractGeometryQueryBuilder(String fieldName, org.elasticsearch.geometry.Geometry shape)
Creates a new AbstractGeometryQueryBuilder whose Query will be against the given field name using the given Shapeprotected
AbstractGeometryQueryBuilder(String fieldName, org.elasticsearch.geometry.Geometry shape, String indexedShapeId, String indexedShapeType)
protected
Read from a stream. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.apache.lucene.search.Query
buildShapeQuery(SearchExecutionContext context, MappedFieldType fieldType)
builds the appropriate lucene shape queryprotected boolean
Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.protected int
protected QueryBuilder
doRewrite(QueryRewriteContext queryRewriteContext)
protected abstract void
doShapeQueryXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
writes the xcontent specific to this shape queryprotected org.apache.lucene.search.Query
doToQuery(SearchExecutionContext context)
protected void
doWriteTo(StreamOutput out)
protected void
doXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
boolean
Gets whether the query builder will ignore unmapped fields (and run aMatchNoDocsQuery
in place of this query) or throw an exception if the field is unmapped.ignoreUnmapped(boolean ignoreUnmapped)
Sets whether the query builder should ignore unmapped fields (and run aMatchNoDocsQuery
in place of this query) or throw an exception if the field is unmapped.indexedShapeIndex(String indexedShapeIndex)
Sets the name of the index where the indexed Shape can be foundindexedShapePath(String indexedShapePath)
Sets the path of the field in the indexed Shape document that has the Shape itselfindexedShapeRouting(String indexedShapeRouting)
Sets the optional routing to the indexed Shape that will be used in the queryDeprecated.Types are in the process of being removed.protected abstract AbstractGeometryQueryBuilder<QB>
newShapeQueryBuilder(String fieldName, Supplier<org.elasticsearch.geometry.Geometry> shapeSupplier, String indexedShapeId, String indexedShapeType)
creates a new ShapeQueryBuilder from the provided field name, supplier, indexed shape id, and indexed shape typeprotected abstract AbstractGeometryQueryBuilder<QB>
newShapeQueryBuilder(String fieldName, org.elasticsearch.geometry.Geometry shape)
creates a new ShapeQueryBuilder from the provided field name and shape builderparsedParamsFromXContent(org.elasticsearch.common.xcontent.XContentParser parser, AbstractGeometryQueryBuilder.ParsedGeometryQueryParams params)
relation()
relation(ShapeRelation relation)
Sets the relation of query shape and indexed shape.org.elasticsearch.geometry.Geometry
shape()
shape(org.elasticsearch.geometry.Geometry geometry)
Sets the shapeBuilder for the query shape.Methods inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
addValidationError, boost, boost, checkNegativeBoost, declareStandardFields, equals, extractInnerHitBuilders, getName, hashCode, parseInnerQueryBuilder, parseInnerQueryBuilder, printBoostAndQueryName, queryName, queryName, requireValue, rewrite, throwParsingExceptionOnMultipleFields, toQuery, toString, toXContent, writeTo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.elasticsearch.common.io.stream.NamedWriteable
getWriteableName
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentObject
isFragment
-
Field Details
-
DEFAULT_SHAPE_INDEX_NAME
- See Also:
- Constant Field Values
-
DEFAULT_SHAPE_FIELD_NAME
- See Also:
- Constant Field Values
-
DEFAULT_SHAPE_RELATION
-
DEFAULT_IGNORE_UNMAPPED
public static final boolean DEFAULT_IGNORE_UNMAPPEDThe default value for ignore_unmapped.- See Also:
- Constant Field Values
-
SHAPE_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField SHAPE_FIELD -
RELATION_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField RELATION_FIELD -
INDEXED_SHAPE_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField INDEXED_SHAPE_FIELD -
SHAPE_ID_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField SHAPE_ID_FIELD -
SHAPE_TYPE_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField SHAPE_TYPE_FIELD -
SHAPE_INDEX_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField SHAPE_INDEX_FIELD -
SHAPE_PATH_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField SHAPE_PATH_FIELD -
SHAPE_ROUTING_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField SHAPE_ROUTING_FIELD -
IGNORE_UNMAPPED_FIELD
protected static final org.elasticsearch.common.xcontent.ParseField IGNORE_UNMAPPED_FIELD -
fieldName
-
supplier
-
indexedShapeId
-
indexedShapeType
-
shape
protected org.elasticsearch.geometry.Geometry shape -
indexedShapeIndex
-
indexedShapePath
-
indexedShapeRouting
-
relation
-
ignoreUnmapped
protected boolean ignoreUnmapped
-
-
Constructor Details
-
AbstractGeometryQueryBuilder
Deprecated.useAbstractGeometryQueryBuilder(String, Geometry)
insteadCreates a new ShapeQueryBuilder whose Query will be against the given field name using the given Shape- Parameters:
fieldName
- Name of the field that will be queriedshape
- Shape used in the Query
-
AbstractGeometryQueryBuilder
Creates a new AbstractGeometryQueryBuilder whose Query will be against the given field name using the given Shape- Parameters:
fieldName
- Name of the field that will be queriedshape
- Shape used in the Query
-
AbstractGeometryQueryBuilder
Creates a new ShapeQueryBuilder whose Query will be against the given field name and will use the Shape found with the given ID- Parameters:
fieldName
- Name of the field that will be filteredindexedShapeId
- ID of the indexed Shape that will be used in the Query
-
AbstractGeometryQueryBuilder
@Deprecated protected AbstractGeometryQueryBuilder(String fieldName, String indexedShapeId, String indexedShapeType)Deprecated.useAbstractGeometryQueryBuilder(String, String)
insteadCreates a new AbstractGeometryQueryBuilder whose Query will be against the given field name and will use the Shape found with the given ID in the given type- Parameters:
fieldName
- Name of the field that will be filteredindexedShapeId
- ID of the indexed Shape that will be used in the QueryindexedShapeType
- Index type of the indexed Shapes
-
AbstractGeometryQueryBuilder
-
AbstractGeometryQueryBuilder
-
AbstractGeometryQueryBuilder
Read from a stream.- Throws:
IOException
-
-
Method Details
-
doWriteTo
- Specified by:
doWriteTo
in classAbstractQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
- Throws:
IOException
-
fieldName
- Returns:
- the name of the field that will be queried
-
shape
Sets the shapeBuilder for the query shape.- Parameters:
geometry
- the geometry- Returns:
- this
-
shape
public org.elasticsearch.geometry.Geometry shape()- Returns:
- the shape used in the Query
-
indexedShapeId
- Returns:
- the ID of the indexed Shape that will be used in the Query
-
indexedShapeType
Deprecated.Types are in the process of being removed.- Returns:
- the document type of the indexed Shape that will be used in the Query
-
indexedShapeIndex
Sets the name of the index where the indexed Shape can be found- Parameters:
indexedShapeIndex
- Name of the index where the indexed Shape is- Returns:
- this
-
indexedShapeIndex
- Returns:
- the index name for the indexed Shape that will be used in the Query
-
indexedShapePath
Sets the path of the field in the indexed Shape document that has the Shape itself- Parameters:
indexedShapePath
- Path of the field where the Shape itself is defined- Returns:
- this
-
indexedShapePath
- Returns:
- the path of the indexed Shape that will be used in the Query
-
indexedShapeRouting
Sets the optional routing to the indexed Shape that will be used in the query- Parameters:
indexedShapeRouting
- indexed shape routing- Returns:
- this
-
indexedShapeRouting
- Returns:
- the optional routing to the indexed Shape that will be used in the Query
-
relation
Sets the relation of query shape and indexed shape.- Parameters:
relation
- relation of the shapes- Returns:
- this
-
relation
- Returns:
- the relation of query shape and indexed shape to use in the Query
-
ignoreUnmapped
Sets whether the query builder should ignore unmapped fields (and run aMatchNoDocsQuery
in place of this query) or throw an exception if the field is unmapped. -
ignoreUnmapped
public boolean ignoreUnmapped()Gets whether the query builder will ignore unmapped fields (and run aMatchNoDocsQuery
in place of this query) or throw an exception if the field is unmapped. -
buildShapeQuery
protected abstract org.apache.lucene.search.Query buildShapeQuery(SearchExecutionContext context, MappedFieldType fieldType)builds the appropriate lucene shape query -
doShapeQueryXContent
protected abstract void doShapeQueryXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws IOExceptionwrites the xcontent specific to this shape query- Throws:
IOException
-
newShapeQueryBuilder
protected abstract AbstractGeometryQueryBuilder<QB> newShapeQueryBuilder(String fieldName, org.elasticsearch.geometry.Geometry shape)creates a new ShapeQueryBuilder from the provided field name and shape builder -
newShapeQueryBuilder
protected abstract AbstractGeometryQueryBuilder<QB> newShapeQueryBuilder(String fieldName, Supplier<org.elasticsearch.geometry.Geometry> shapeSupplier, String indexedShapeId, String indexedShapeType)creates a new ShapeQueryBuilder from the provided field name, supplier, indexed shape id, and indexed shape type -
doToQuery
- Specified by:
doToQuery
in classAbstractQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
-
doXContent
protected void doXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws IOException- Specified by:
doXContent
in classAbstractQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
- Throws:
IOException
-
doEquals
Description copied from class:AbstractQueryBuilder
Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.- Specified by:
doEquals
in classAbstractQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
-
doHashCode
protected int doHashCode()- Specified by:
doHashCode
in classAbstractQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
-
doRewrite
- Overrides:
doRewrite
in classAbstractQueryBuilder<QB extends AbstractGeometryQueryBuilder<QB>>
- Throws:
IOException
-
parsedParamsFromXContent
public static AbstractGeometryQueryBuilder.ParsedGeometryQueryParams parsedParamsFromXContent(org.elasticsearch.common.xcontent.XContentParser parser, AbstractGeometryQueryBuilder.ParsedGeometryQueryParams params) throws IOException- Throws:
IOException
-
AbstractGeometryQueryBuilder(String, String)
instead