org.apache.lucene.benchmark.byTask.feeds

## Class SpatialDocMaker

- java.lang.Object
- - org.apache.lucene.benchmark.byTask.feeds.DocMaker
  - - org.apache.lucene.benchmark.byTask.feeds.SpatialDocMaker

- All Implemented Interfaces:
    Closeable, AutoCloseable

      public class SpatialDocMaker
      extends DocMaker

  Indexes spatial data according to a configured `SpatialStrategy` with optional shape transformation via a configured `SpatialDocMaker.ShapeConverter`. The converter can turn points into circles and bounding boxes, in order to vary the type of indexing performance tests. Unless it's subclass-ed to do otherwise, this class configures a `SpatialContext`, `SpatialPrefixTree`, and `RecursivePrefixTreeStrategy`. The Strategy is made available to a query maker via the static method `getSpatialStrategy(int)`. See spatial.alg for a listing of spatial parameters, in particular those starting with "spatial." and "doc.spatial".

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `SpatialDocMaker.ShapeConverter` Converts one shape to another.

    - ### Nested classes/interfaces inherited from class org.apache.lucene.benchmark.byTask.feeds.DocMaker

      `DocMaker.DocState`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `SPATIAL_FIELD`

    - ### Fields inherited from class org.apache.lucene.benchmark.byTask.feeds.DocMaker

      `BODY_FIELD, bodyValType, BYTES_FIELD, config, DATE_FIELD, DATE_MSEC_FIELD, ID_FIELD, indexProperties, NAME_FIELD, reuseFields, source, TIME_SEC_FIELD, TITLE_FIELD, valType`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SpatialDocMaker()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static SpatialStrategy` | `getSpatialStrategy(int roundNumber)` Looks up the SpatialStrategy from the given round -- `Config.getRoundNumber()`.
    `protected SpatialStrategy` | `makeCompositeStrategy(Config config, Map<String,String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx)`
    `Document` | `makeDocument()` Creates a `Document` object ready for indexing.
    `Document` | `makeDocument(int size)` Same as `DocMaker.makeDocument()`, only this method creates a document of the given size input by `size`.
    `protected RecursivePrefixTreeStrategy` | `makeRPTStrategy(String spatialField, Config config, Map<String,String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx)`
    `protected SerializedDVStrategy` | `makeSerializedDVStrategy(String spatialField, Config config, Map<String,String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx)`
    `static SpatialDocMaker.ShapeConverter` | `makeShapeConverter(SpatialStrategy spatialStrategy, Config config, String configKeyPrefix)` Optionally converts points to circles, and optionally bbox'es result.
    `static org.locationtech.spatial4j.shape.Shape` | `makeShapeFromString(SpatialStrategy strategy, String name, String shapeStr)`
    `protected SpatialStrategy` | `makeSpatialStrategy(Config config)` Builds a SpatialStrategy from configuration options.
    `protected SpatialStrategy` | `makeSpatialStrategy(Config config, Map<String,String> configMap, org.locationtech.spatial4j.context.SpatialContext ctx)`
    `void` | `setConfig(Config config, ContentSource source)` Set the configuration parameters of this doc maker.

    - ### Methods inherited from class org.apache.lucene.benchmark.byTask.feeds.DocMaker

      `close, getDocState, resetInputs`

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

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

- - ### Field Detail

    - #### SPATIAL_FIELD

          public static final String SPATIAL_FIELD

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### SpatialDocMaker

          public SpatialDocMaker()

  - ### Method Detail

    - #### getSpatialStrategy

          public static SpatialStrategy getSpatialStrategy(int roundNumber)

      Looks up the SpatialStrategy from the given round -- `Config.getRoundNumber()`. It's an error if it wasn't created already for this round -- when SpatialDocMaker is initialized.

    - #### makeSpatialStrategy

          protected SpatialStrategy makeSpatialStrategy(Config config)

      Builds a SpatialStrategy from configuration options.

    - #### makeSpatialStrategy

          protected SpatialStrategy makeSpatialStrategy(Config config,
                                                        Map<String,String> configMap,
                                                        org.locationtech.spatial4j.context.SpatialContext ctx)

    - #### makeRPTStrategy

          protected RecursivePrefixTreeStrategy makeRPTStrategy(String spatialField,
                                                                Config config,
                                                                Map<String,String> configMap,
                                                                org.locationtech.spatial4j.context.SpatialContext ctx)

    - #### makeSerializedDVStrategy

          protected SerializedDVStrategy makeSerializedDVStrategy(String spatialField,
                                                                  Config config,
                                                                  Map<String,String> configMap,
                                                                  org.locationtech.spatial4j.context.SpatialContext ctx)

    - #### makeCompositeStrategy

          protected SpatialStrategy makeCompositeStrategy(Config config,
                                                          Map<String,String> configMap,
                                                          org.locationtech.spatial4j.context.SpatialContext ctx)

    - #### setConfig

          public void setConfig(Config config,
                                ContentSource source)

      Description copied from class: `DocMaker`
      Set the configuration parameters of this doc maker.
      Overrides:
        `setConfig` in class `DocMaker`

    - #### makeShapeConverter

          public static SpatialDocMaker.ShapeConverter makeShapeConverter(SpatialStrategy spatialStrategy,
                                                                          Config config,
                                                                          String configKeyPrefix)

      Optionally converts points to circles, and optionally bbox'es result.

    - #### makeDocument

          public Document makeDocument()
                                throws Exception

      Description copied from class: `DocMaker`
      Creates a `Document` object ready for indexing. This method uses the `ContentSource` to get the next document from the source, and creates a `Document` object from the returned fields. If `reuseFields` was set to true, it will reuse `Document` and `Field` instances.
      Overrides:
        `makeDocument` in class `DocMaker`
      Throws:
        `Exception`

    - #### makeShapeFromString

          public static org.locationtech.spatial4j.shape.Shape makeShapeFromString(SpatialStrategy strategy,
                                                                                   String name,
                                                                                   String shapeStr)

    - #### makeDocument

          public Document makeDocument(int size)
                                throws Exception

      Description copied from class: `DocMaker`
      Same as `DocMaker.makeDocument()`, only this method creates a document of the given size input by `size`.
      Overrides:
        `makeDocument` in class `DocMaker`
      Throws:
        `Exception`

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