@Override public int removeGranules(Filter filter, Hints hints) { // unmap the feature identifiers Filter unmapped = GranuleStoreViewFilterVisitor.unmapIdentifiers(filter, coverageView.getName()); List<CoverageBand> bands = coverageView.getCoverageBands(); int removed = 0; for (CoverageBand band : bands) { String coverageName = band.getInputCoverageBands().get(0).getCoverageName(); GranuleStore granuleStore; try { granuleStore = (GranuleStore) reader.getGranules(coverageName, false); // TODO: We may revisit the #removed granules computation to take into // account cases where we remove different number of records across different // input coverages removed = granuleStore.removeGranules(unmapped, hints); } catch (UnsupportedOperationException e) { LOGGER.log(Level.FINER, e.getMessage(), e); } catch (IOException e) { LOGGER.log(Level.FINER, e.getMessage(), e); } } return removed; }
CoverageInfo coverageInfo, Hints hints) { this.coverageName = coverageView.getName(); this.delegate = delegate; this.coverageView = coverageView;
assertEquals(2, coverageView.getSize()); assertEquals(2, coverageView.getCoverageBands().size()); assertEquals("wind", coverageView.getName());
@Override public void validate(IValidatable<String> validatable) { String vcName = validatable.getValue(); final CoverageStoreInfo store = getCatalog().getStore(storeId, CoverageStoreInfo.class); List<CoverageInfo> coverages = getCatalog().getCoveragesByCoverageStore(store); for (CoverageInfo curr : coverages) { CoverageView currvc = curr.getMetadata().get(CoverageView.COVERAGE_VIEW, CoverageView.class); if (currvc != null) { if (coverageInfoId == null || !coverageInfoId.equals(curr.getId())) { if (currvc.getName().equals(vcName) && newCoverage) { Map<String, Object> map = new HashMap<>(); map.put("name", vcName); map.put("coverageName", curr.getName()); IValidationError err = new ValidationError("duplicateCoverageViewName") .addKey("duplicateCoverageViewName") .setVariables(map); validatable.error(err); return; } } } } } }
name = coverageView.getName(); envelopeCompositionType = Optional.ofNullable(coverageView.getEnvelopeCompositionType())