public class CachingDataStoreGranuleCatalog extends GranuleCatalog
Since the ImageMosaicReader
heavily uses spatial queries to find out which are the
involved tiles during mosaic creation, it is better to do some caching and keep the index in
memory as much as possible, hence we came up with this index.
configurations, hints, multiScaleROIProvider
Constructor and Description |
---|
CachingDataStoreGranuleCatalog(GranuleCatalog adaptee) |
public CachingDataStoreGranuleCatalog(GranuleCatalog adaptee)
public SimpleFeatureCollection getGranules(Query q) throws IOException
IOException
public SimpleFeatureCollection getGranules(Query q, Transaction t) throws IOException
IOException
public void getGranuleDescriptors(Query q, GranuleCatalogVisitor visitor) throws IOException
IOException
protected GranuleDescriptor getGranuleDescriptor(CatalogConfigurationBean configuration, SimpleFeature sf)
protected boolean polygonOverlap(Geometry g1, Geometry g2)
public int removeGranules(Query query)
public int removeGranules(Query query, Transaction transaction)
public void addGranules(String typeName, Collection<SimpleFeature> granules, Transaction transaction) throws IOException
addGranules
in class GranuleCatalog
IOException
public void computeAggregateFunction(Query q, FeatureCalc function) throws IOException
computeAggregateFunction
in class GranuleCatalog
IOException
public void createType(String namespace, String typeName, String typeSpec) throws IOException, SchemaException
createType
in class GranuleCatalog
IOException
SchemaException
public void createType(SimpleFeatureType featureType) throws IOException
createType
in class GranuleCatalog
IOException
public void createType(String identification, String typeSpec) throws SchemaException, IOException
createType
in class GranuleCatalog
SchemaException
IOException
public void dispose()
dispose
in class GranuleCatalog
public BoundingBox getBounds(String typeName)
getBounds
in class GranuleCatalog
public int getGranulesCount(Query q) throws IOException
getGranulesCount
in class GranuleCatalog
IOException
public QueryCapabilities getQueryCapabilities(String typeName)
getQueryCapabilities
in class GranuleCatalog
public SimpleFeatureType getType(String typeName) throws IOException
getType
in class GranuleCatalog
IOException
public void removeType(String typeName) throws IOException
removeType
in class GranuleCatalog
IOException
public String[] getTypeNames()
getTypeNames
in class GranuleCatalog
public void drop() throws IOException
GranuleCatalog
This is usuallu done when deleting an ImageMosaic storre.
drop
in class GranuleCatalog
IOException
- in case something bad happensprotected String getParentLocation()
getParentLocation
in class GranuleCatalog
public void addGranule(String typeName, SimpleFeature granule, Transaction transaction) throws IOException
addGranule
in class GranuleCatalog
IOException
public BoundingBox getBounds(String typeName, Transaction t)
getBounds
in class GranuleCatalog
protected Query mergeHints(Query q)
GranuleCatalog
mergeHints
in class GranuleCatalog
public void setMultiScaleROIProvider(MultiLevelROIProvider footprintProvider)
setMultiScaleROIProvider
in class GranuleCatalog
protected MultiLevelROI getGranuleFootprint(SimpleFeature sf)
GranuleCatalog
getGranuleFootprint
in class GranuleCatalog
public List<File> getFootprintFiles(SimpleFeature sf) throws IOException
GranuleCatalog
getFootprintFiles
in class GranuleCatalog
IOException
protected CatalogConfigurationBeans getConfigurations()
getConfigurations
in class GranuleCatalog
public Hints getHints()
getHints
in class GranuleCatalog
public GranuleCatalog getAdaptee()
Copyright © 1996–2023 Geotools. All rights reserved.