org.apache.lucene.spatial.query

## Class SpatialArgsParser

- java.lang.Object
- - org.apache.lucene.spatial.query.SpatialArgsParser

-     public class SpatialArgsParser
      extends Object

  Parses a string that usually looks like "OPERATION(SHAPE)" into a `SpatialArgs` object. The set of operations supported are defined in `SpatialOperation`, such as "Intersects" being a common one. The shape portion is defined by `ShapeReadWriter.readShape(String)`. There are some optional name-value pair parameters that follow the closing parenthesis. Example:

         Intersects(-10,20,-8,22) distErrPct=0.025

  In the future it would be good to support something at least semi-standardized like a variant of [E]CQL.
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `DIST_ERR`
    `static String` | `DIST_ERR_PCT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SpatialArgsParser()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `SpatialArgs` | `parse(String v, com.spatial4j.core.context.SpatialContext ctx)` Parses a string such as "Intersects(-10,20,-8,22) distErrPct=0.025".
    `protected static Map<String,String>` | `parseMap(String body)` Parses "a=b c=d f" (whitespace separated) into name-value pairs.
    `protected static boolean` | `readBool(String v, boolean defaultValue)`
    `protected static Double` | `readDouble(String v)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DIST_ERR_PCT

          public static final String DIST_ERR_PCT

      See Also:
        Constant Field Values

    - #### DIST_ERR

          public static final String DIST_ERR

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### SpatialArgsParser

          public SpatialArgsParser()

  - ### Method Detail

    - #### parse

          public SpatialArgs parse(String v,
                          com.spatial4j.core.context.SpatialContext ctx)
                            throws IllegalArgumentException,
                                   com.spatial4j.core.exception.InvalidShapeException

      Parses a string such as "Intersects(-10,20,-8,22) distErrPct=0.025".
      Parameters:
        `v` - The string to parse. Mandatory.
        `ctx` - The spatial context. Mandatory.
      Returns:
        Not null.
      Throws:
        `IllegalArgumentException` - If there is a problem parsing the string.
        `com.spatial4j.core.exception.InvalidShapeException` - Thrown from `ShapeReadWriter.readShape(String)`

    - #### readDouble

          protected static Double readDouble(String v)

    - #### readBool

          protected static boolean readBool(String v,
                         boolean defaultValue)

    - #### parseMap

          protected static Map<String,String> parseMap(String body)

      Parses "a=b c=d f" (whitespace separated) into name-value pairs. If there is no '=' as in 'f' above then it's short for f=f.

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.