Class NetCDFSliceProvider
Object
NetCDFSliceProvider
- All Implemented Interfaces:
CoverageSlicesCatalog.SliceProvider
A
CoverageSlicesCatalog.SliceProvider implementation that exposes the slices of a single NetCDF variable as queryable catalog
entries.
This class coordinates the full query-to-slice workflow. A Query is first translated into a
NetCDFSliceQuery, which separates recognized dimension constraints from generic post-filters. Filter
recognition is delegated to DimensionFilterSplitter, which in turn relies on a
NetCDFPreFilterDimensionExtractor to identify filters targeting time, elevation, and additional NetCDF dimensions.
The resulting NetCDFSliceQuery is converted into a domain of selected dimension indices, and a
NetCDFSliceIterator walks the matching tuples to build CoverageSlice
instances. This allows recognized dimension predicates to be evaluated up front, while any residual filter is applied
in memory as a post-filter during iteration.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordAssociates an additional domain with its attribute name and logical dimension index.static final classPer-variable context holding the available dimension lookups. -
Constructor Summary
ConstructorsConstructorDescriptionNetCDFSliceProvider(VariableAdapter adapter, SimpleFeatureType schema, int startIndex, ReferencedEnvelope bounds, NetCDFSliceProvider.DimensionIndexesContext context) Builds a slice provider for a NetCDF variable and its indexed dimension context. -
Method Summary
Modifier and TypeMethodDescriptionReturns the bounds of the underlying variable slices.intCounts the slices matching the provided query.Returns the variable adapter handled by this provider.Returns the feature type used for slice features.intReturns the starting global image index for this variable.Returns an iterator over slices matching the provided query.
-
Constructor Details
-
NetCDFSliceProvider
public NetCDFSliceProvider(VariableAdapter adapter, SimpleFeatureType schema, int startIndex, ReferencedEnvelope bounds, NetCDFSliceProvider.DimensionIndexesContext context) Builds a slice provider for a NetCDF variable and its indexed dimension context.
-
-
Method Details
-
iterate
Returns an iterator over slices matching the provided query.- Specified by:
iteratein interfaceCoverageSlicesCatalog.SliceProvider
-
count
Counts the slices matching the provided query.- Specified by:
countin interfaceCoverageSlicesCatalog.SliceProvider
-
bounds
Returns the bounds of the underlying variable slices. Note that all the slices of a Variable share the same spatial bounds, so we can return the variable bounds directly without looking at the query.- Specified by:
boundsin interfaceCoverageSlicesCatalog.SliceProvider- Throws:
IOException
-
getAdapter
Returns the variable adapter handled by this provider. -
getSchema
Returns the feature type used for slice features. -
getStartIndex
public int getStartIndex()Returns the starting global image index for this variable.
-