private BasicQuery getQuery( final Map<StatisticsId, InternalDataStatistics<SimpleFeature, ?, ?>> statsMap, final Geometry jtsBounds, final TemporalConstraintsSet timeBounds) { final Constraints timeConstraints = QueryIndexHelper.composeTimeBoundedConstraints( components.getAdapter().getFeatureType(), components.getAdapter().getTimeDescriptors(), statsMap, timeBounds); final GeoConstraintsWrapper geoConstraints = QueryIndexHelper.composeGeometricConstraints(getFeatureType(), statsMap, jtsBounds); /** * NOTE: query to an index that requires a constraint and the constraint is missing equates to a * full table scan. @see BasicQuery */ final BasicQuery query = composeQuery(geoConstraints, timeConstraints); query.setExact(timeBounds.isExact()); return query; }