Class GeoShapeQueryBuilder

    • Field Detail

      • DEFAULT_SHAPE_INDEX_NAME

        public static final java.lang.String DEFAULT_SHAPE_INDEX_NAME
        See Also:
        Constant Field Values
      • DEFAULT_SHAPE_FIELD_NAME

        public static final java.lang.String DEFAULT_SHAPE_FIELD_NAME
        See Also:
        Constant Field Values
      • DEFAULT_SHAPE_RELATION

        public static final ShapeRelation DEFAULT_SHAPE_RELATION
      • DEFAULT_IGNORE_UNMAPPED

        public static final boolean DEFAULT_IGNORE_UNMAPPED
        The default value for ignore_unmapped.
        See Also:
        Constant Field Values
    • Constructor Detail

      • GeoShapeQueryBuilder

        public GeoShapeQueryBuilder​(java.lang.String fieldName,
                                    ShapeBuilder shape)
        Creates a new GeoShapeQueryBuilder whose Query will be against the given field name using the given Shape
        Parameters:
        fieldName - Name of the field that will be queried
        shape - Shape used in the Query
      • GeoShapeQueryBuilder

        public GeoShapeQueryBuilder​(java.lang.String fieldName,
                                    java.lang.String indexedShapeId,
                                    java.lang.String indexedShapeType)
        Creates a new GeoShapeQueryBuilder 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 filtered
        indexedShapeId - ID of the indexed Shape that will be used in the Query
        indexedShapeType - Index type of the indexed Shapes
      • GeoShapeQueryBuilder

        public GeoShapeQueryBuilder​(StreamInput in)
                             throws java.io.IOException
        Read from a stream.
        Throws:
        java.io.IOException
    • Method Detail

      • fieldName

        public java.lang.String fieldName()
        Returns:
        the name of the field that will be queried
      • shape

        public ShapeBuilder shape()
        Returns:
        the shape used in the Query
      • indexedShapeId

        public java.lang.String indexedShapeId()
        Returns:
        the ID of the indexed Shape that will be used in the Query
      • indexedShapeType

        public java.lang.String indexedShapeType()
        Returns:
        the document type of the indexed Shape that will be used in the Query
      • strategy

        public GeoShapeQueryBuilder strategy​(SpatialStrategy strategy)
        Defines which spatial strategy will be used for building the geo shape Query. When not set, the strategy that will be used will be the one that is associated with the geo shape field in the mappings.
        Parameters:
        strategy - The spatial strategy to use for building the geo shape Query
        Returns:
        this
      • strategy

        public SpatialStrategy strategy()
        Returns:
        The spatial strategy to use for building the geo shape Query
      • indexedShapeIndex

        public GeoShapeQueryBuilder indexedShapeIndex​(java.lang.String 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

        public java.lang.String indexedShapeIndex()
        Returns:
        the index name for the indexed Shape that will be used in the Query
      • indexedShapePath

        public GeoShapeQueryBuilder indexedShapePath​(java.lang.String 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

        public java.lang.String indexedShapePath()
        Returns:
        the path of the indexed Shape that will be used in the Query
      • indexedShapeRouting

        public GeoShapeQueryBuilder indexedShapeRouting​(java.lang.String indexedShapeRouting)
        Sets the optional routing to the indexed Shape that will be used in the query
        Parameters:
        indexedShapeRouting - indexed shape routing
        Returns:
        this
      • indexedShapeRouting

        public java.lang.String indexedShapeRouting()
        Returns:
        the optional routing to the indexed Shape that will be used in the Query
      • relation

        public GeoShapeQueryBuilder relation​(ShapeRelation relation)
        Sets the relation of query shape and indexed shape.
        Parameters:
        relation - relation of the shapes
        Returns:
        this
      • relation

        public ShapeRelation relation()
        Returns:
        the relation of query shape and indexed shape to use in the Query
      • ignoreUnmapped

        public GeoShapeQueryBuilder ignoreUnmapped​(boolean ignoreUnmapped)
        Sets whether the query builder should ignore unmapped fields (and run a MatchNoDocsQuery 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 a MatchNoDocsQuery in place of this query) or throw an exception if the field is unmapped.
      • getArgs

        public static org.apache.lucene.spatial.query.SpatialArgs getArgs​(ShapeBuilder shape,
                                                                          ShapeRelation relation)
      • getWriteableName

        public java.lang.String getWriteableName()
        Description copied from interface: NamedWriteable
        Returns the name of the writeable object