## org.apache.lucene.spatial.util
Class ShapeFieldCacheProvider<T extends com.spatial4j.core.shape.Shape>

    java.lang.Object
      org.apache.lucene.spatial.util.ShapeFieldCacheProvider<T>

Direct Known Subclasses:
  PointPrefixTreeFieldCacheProvider

    public abstract class ShapeFieldCacheProvider<T extends com.spatial4j.core.shape.Shape>

extends Object

Provides access to a `ShapeFieldCache` for a given `AtomicReader`. If a Cache does not exist for the Reader, then it is built by iterating over the all terms for a given field, reconstructing the Shape from them, and adding them to the Cache.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

Field Summary
`protected int` `defaultSize`
`protected String` `shapeField`

Constructor Summary
`ShapeFieldCacheProvider(String shapeField, int defaultSize)`

Method Summary
`ShapeFieldCache<T>` `getCache(AtomicReader reader)`
`protected abstract T` `readShape(BytesRef term)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### defaultSize

    protected final int defaultSize

### shapeField

    protected final String shapeField

Constructor Detail

### ShapeFieldCacheProvider

    public ShapeFieldCacheProvider(String shapeField,
                                   int defaultSize)

Method Detail

### readShape

    protected abstract T readShape(BytesRef term)

### getCache

    public ShapeFieldCache<T> getCache(AtomicReader reader)
                                                                       throws IOException

  Throws:
    `IOException`

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