Class GranuleCatalog
- Object
-
- GranuleCatalog
-
- Direct Known Subclasses:
CachingDataStoreGranuleCatalog,GTDataStoreGranuleCatalog,LockingGranuleCatalog,QueryCacheGranuleCatalog,RepositoryDataStoreCatalog
public abstract class GranuleCatalog extends Object
-
-
Field Summary
Fields Modifier and Type Field Description protected CatalogConfigurationBeansconfigurationsprotected Hintshintsprotected MultiLevelROIProvidermultiScaleROIProvider
-
Constructor Summary
Constructors Constructor Description GranuleCatalog(Hints hints, CatalogConfigurationBeans configurations)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddGranule(String typeName, SimpleFeature granule, Transaction transaction)abstract voidaddGranules(String typeName, Collection<SimpleFeature> granules, Transaction transaction)abstract voidcomputeAggregateFunction(Query q, FeatureCalc function)abstract voidcreateType(String identification, String typeSpec)abstract voidcreateType(String namespace, String typeName, String typeSpec)abstract voidcreateType(SimpleFeatureType featureType)abstract voiddispose()abstract voiddrop()Drop the underlying catalog, all the individual granule indexes.abstract BoundingBoxgetBounds(String typeName)BoundingBoxgetBounds(String typeName, Transaction t)protected CatalogConfigurationBeansgetConfigurations()List<File>getFootprintFiles(SimpleFeature sf)Returns the list of footprint files for the given granuleabstract voidgetGranuleDescriptors(Query q, GranuleCatalogVisitor visitor)protected MultiLevelROIgetGranuleFootprint(SimpleFeature sf)Returns the footprint for the given granule.abstract SimpleFeatureCollectiongetGranules(Query q)SimpleFeatureCollectiongetGranules(Query q, Transaction t)abstract intgetGranulesCount(Query q)HintsgetHints()protected abstract StringgetParentLocation()abstract QueryCapabilitiesgetQueryCapabilities(String typeName)abstract SimpleFeatureTypegetType(String typeName)abstract String[]getTypeNames()protected QuerymergeHints(Query q)Merges the wrapper hints with the query ones, making sure not to overwrite the query onesabstract intremoveGranules(Query query)Deprecated.please useremoveGranules(Query, Transaction)intremoveGranules(Query query, Transaction transaction)abstract voidremoveType(String typeName)voidsetMultiScaleROIProvider(MultiLevelROIProvider footprintProvider)
-
-
-
Field Detail
-
hints
protected final Hints hints
-
configurations
protected final CatalogConfigurationBeans configurations
-
multiScaleROIProvider
protected MultiLevelROIProvider multiScaleROIProvider
-
-
Constructor Detail
-
GranuleCatalog
public GranuleCatalog(Hints hints, CatalogConfigurationBeans configurations)
-
-
Method Detail
-
addGranule
public void addGranule(String typeName, SimpleFeature granule, Transaction transaction) throws IOException
- Throws:
IOException
-
addGranules
public abstract void addGranules(String typeName, Collection<SimpleFeature> granules, Transaction transaction) throws IOException
- Throws:
IOException
-
computeAggregateFunction
public abstract void computeAggregateFunction(Query q, FeatureCalc function) throws IOException
- Throws:
IOException
-
createType
public abstract void createType(String namespace, String typeName, String typeSpec) throws IOException, SchemaException
- Throws:
IOExceptionSchemaException
-
createType
public abstract void createType(SimpleFeatureType featureType) throws IOException
- Throws:
IOException
-
createType
public abstract void createType(String identification, String typeSpec) throws SchemaException, IOException
- Throws:
SchemaExceptionIOException
-
dispose
public abstract void dispose()
-
getBounds
public abstract BoundingBox getBounds(String typeName)
-
getBounds
public BoundingBox getBounds(String typeName, Transaction t)
-
getGranules
public abstract SimpleFeatureCollection getGranules(Query q) throws IOException
- Throws:
IOException
-
getGranules
public SimpleFeatureCollection getGranules(Query q, Transaction t) throws IOException
- Throws:
IOException
-
getGranulesCount
public abstract int getGranulesCount(Query q) throws IOException
- Throws:
IOException
-
getGranuleDescriptors
public abstract void getGranuleDescriptors(Query q, GranuleCatalogVisitor visitor) throws IOException
- Throws:
IOException
-
getQueryCapabilities
public abstract QueryCapabilities getQueryCapabilities(String typeName)
-
getType
public abstract SimpleFeatureType getType(String typeName) throws IOException
- Throws:
IOException
-
removeType
public abstract void removeType(String typeName) throws IOException
- Throws:
IOException
-
removeGranules
@Deprecated public abstract int removeGranules(Query query)
Deprecated.please useremoveGranules(Query, Transaction)
-
removeGranules
public int removeGranules(Query query, Transaction transaction)
-
getTypeNames
public abstract String[] getTypeNames()
-
mergeHints
protected Query mergeHints(Query q)
Merges the wrapper hints with the query ones, making sure not to overwrite the query ones
-
setMultiScaleROIProvider
public void setMultiScaleROIProvider(MultiLevelROIProvider footprintProvider)
-
getGranuleFootprint
protected MultiLevelROI getGranuleFootprint(SimpleFeature sf)
Returns the footprint for the given granule. Mind, when applying insets we might have the case of the geometry being empty (negative buffer eroded it fully), in that case the granule must not be loaded
-
getFootprintFiles
public List<File> getFootprintFiles(SimpleFeature sf) throws IOException
Returns the list of footprint files for the given granule- Throws:
IOException
-
drop
public abstract void drop() throws IOExceptionDrop the underlying catalog, all the individual granule indexes.This is usuallu done when deleting an ImageMosaic storre.
- Throws:
IOException- in case something bad happens
-
getConfigurations
protected CatalogConfigurationBeans getConfigurations()
-
getParentLocation
protected abstract String getParentLocation()
-
getHints
public Hints getHints()
-
-