@Test public void testPreserveStructuredReader() throws IOException { // we have to make sure time ranges native name is set to trigger the bug in question CoverageInfo ci = getCatalog().getCoverageByName(getLayerId(TIMERANGES)); assertTrue(ci.getGridCoverageReader(null, null) instanceof StructuredGridCoverage2DReader); String name = ci.getGridCoverageReader(null, null).getGridCoverageNames()[0]; ci.setNativeCoverageName(name); getCatalog().save(ci); ci = getCatalog().getCoverageByName(getLayerId(TIMERANGES)); assertTrue(ci.getGridCoverageReader(null, null) instanceof StructuredGridCoverage2DReader); }
private List<String> getStoreCoverages(CoverageStoreInfo coverageStore) { try { GridCoverageReader reader = coverageStore.getGridCoverageReader(null, null); return Arrays.stream(reader.getGridCoverageNames()).collect(Collectors.toList()); } catch (Exception exception) { // the read failed to retrieve the available coverages for publishing throw new RuntimeException("Error getting coverages from coverage reader.", exception); } }
public String getCoverageName(CoverageInfo ci) throws IOException { return ci.getNativeCoverageName() != null ? ci.getNativeCoverageName() : ci.getGridCoverageReader(null, null).getGridCoverageNames()[0]; } }
bandSpecs = mosaicStoreInfo.getGridCoverageReader(null, null).getGridCoverageNames();
reader = ci.getGridCoverageReader(null, null); String[] cvNames = reader.getGridCoverageNames();
GridCoverageReader reader = expandedStore.getGridCoverageReader(null, null); try { String[] names = reader.getGridCoverageNames(); for (String name : names) { Name qualified = new NameImpl(ns.getURI(), name);