org.apache.lucene.spatial.prefix.tree

## Class SpatialPrefixTreeFactory

- java.lang.Object
- - org.apache.lucene.spatial.prefix.tree.SpatialPrefixTreeFactory

- Direct Known Subclasses:
    GeohashPrefixTree.Factory, QuadPrefixTree.Factory, S2PrefixTree.Factory

      public abstract class SpatialPrefixTreeFactory
      extends Object

  Abstract Factory for creating `SpatialPrefixTree` instances with useful defaults and passed on configurations defined in a Map.
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Map<String,String>` | `args`
    `protected org.locationtech.spatial4j.context.SpatialContext` | `ctx`
    `static String` | `MAX_DIST_ERR`
    `static String` | `MAX_LEVELS`
    `protected Integer` | `maxLevels`
    `static String` | `PREFIX_TREE`
    `static String` | `VERSION`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SpatialPrefixTreeFactory()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected abstract int` | `getLevelForDistance(double degrees)` Calls `SpatialPrefixTree.getLevelForDistance(double)`.
    `Version` | `getVersion()` Return the version of Lucene this tree will mimic the behavior of for analysis.
    `protected void` | `init(Map<String,String> args, org.locationtech.spatial4j.context.SpatialContext ctx)`
    `protected void` | `initMaxLevels()`
    `protected void` | `initVersion()`
    `static SpatialPrefixTree` | `makeSPT(Map<String,String> args, ClassLoader classLoader, org.locationtech.spatial4j.context.SpatialContext ctx)` The factory is looked up via "prefixTree" in args, expecting "geohash" or "quad".
    `protected abstract SpatialPrefixTree` | `newSPT()`
    `void` | `setVersion(Version v)` Set the version of Lucene this tree should mimic the behavior for for analysis.

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

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

- - ### Field Detail

    - #### PREFIX_TREE

          public static final String PREFIX_TREE

      See Also:
        Constant Field Values

    - #### MAX_LEVELS

          public static final String MAX_LEVELS

      See Also:
        Constant Field Values

    - #### MAX_DIST_ERR

          public static final String MAX_DIST_ERR

      See Also:
        Constant Field Values

    - #### VERSION

          public static final String VERSION

      See Also:
        Constant Field Values

    - #### args

          protected Map<String,String> args

    - #### ctx

          protected org.locationtech.spatial4j.context.SpatialContext ctx

    - #### maxLevels

          protected Integer maxLevels

  - ### Constructor Detail

    - #### SpatialPrefixTreeFactory

          public SpatialPrefixTreeFactory()

  - ### Method Detail

    - #### makeSPT

          public static SpatialPrefixTree makeSPT(Map<String,String> args,
                                                  ClassLoader classLoader,
                                                  org.locationtech.spatial4j.context.SpatialContext ctx)

      The factory is looked up via "prefixTree" in args, expecting "geohash" or "quad". If it's neither of these, then "geohash" is chosen for a geo context, otherwise "quad" is chosen. The "version" arg, if present, is parsed with `Version` and the prefix tree might be sensitive to it.

    - #### init

          protected void init(Map<String,String> args,
                              org.locationtech.spatial4j.context.SpatialContext ctx)

    - #### initVersion

          protected void initVersion()

    - #### initMaxLevels

          protected void initMaxLevels()

    - #### setVersion

          public void setVersion(Version v)

      Set the version of Lucene this tree should mimic the behavior for for analysis.

    - #### getVersion

          public Version getVersion()

      Return the version of Lucene this tree will mimic the behavior of for analysis.

    - #### getLevelForDistance

          protected abstract int getLevelForDistance(double degrees)

      Calls `SpatialPrefixTree.getLevelForDistance(double)`.

    - #### newSPT

          protected abstract SpatialPrefixTree newSPT()

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