public void finish(CancelTask cancelTask) throws IOException { datasetManager.scan(true); // Make the list of Datasets, by scanning if needed. cacheDirty = true; makeDatasets(cancelTask); //ucar.unidata.io.RandomAccessFile.setDebugAccess( true); buildNetcdfDataset(cancelTask); //ucar.unidata.io.RandomAccessFile.setDebugAccess( false); }
@Override public boolean scanIfNeeded() throws IOException { if (map == null && !isStatic()) return true; return isScanNeeded() && scan(true); }
public void finish(CancelTask cancelTask) throws IOException { datasetManager.scan(true); // Make the list of Datasets, by scanning if needed. cacheDirty = true; closeDatasets(); makeDatasets(cancelTask); //ucar.unidata.io.RandomAccessFile.setDebugAccess( true); buildNetcdfDataset(cancelTask); //ucar.unidata.io.RandomAccessFile.setDebugAccess( false); }
public void finish(CancelTask cancelTask) throws IOException { datasetManager.scan(true); // Make the list of Datasets, by scanning if needed. cacheDirty = true; closeDatasets(); makeDatasets(cancelTask); //ucar.unidata.io.RandomAccessFile.setDebugAccess( true); buildNetcdfDataset(cancelTask); //ucar.unidata.io.RandomAccessFile.setDebugAccess( false); }
public CalendarDateRange update() throws IOException { datasets = new ArrayList<>(); manager.scan(false); for (MFile f : manager.getFilesSorted()) datasets.add(new Dataset(f)); if (manager.hasDateExtractor()) { if (datasets.size() == 1) { Dataset ds = datasets.get(0); if (ds.start != null) dateRange = CalendarDateRange.of(ds.start, ds.start); // LOOK ?? } else if (datasets.size() > 1) { for (int i = 0; i < datasets.size() - 1; i++) { Dataset d1 = datasets.get(i); Dataset d2 = datasets.get(i + 1); d1.setDateRange(CalendarDateRange.of(d1.start, d2.start)); if (i == datasets.size() - 2) // last one d2.setDateRange(new CalendarDateRange(d2.start, d1.getDateRange().getDurationInSecs())); } Dataset first = datasets.get(0); Dataset last = datasets.get(datasets.size() - 1); dateRange = CalendarDateRange.of(first.getDateRange().getStart(), last.getDateRange().getEnd()); } } return dateRange; }
private boolean _sync() throws IOException { if (!datasetManager.scan(true)) return false; // nothing changed LOOK what about grib extention ?? cacheDirty = true; makeDatasets(null); // rebuild the metadata rebuildDataset(); ncDataset.finish(); if (ncDataset.getEnhanceMode().contains(NetcdfDataset.Enhance.CoordSystems)) { // force recreation of the coordinate systems ncDataset.clearCoordinateSystems(); ncDataset.enhance(ncDataset.getEnhanceMode()); ncDataset.finish(); } return true; }
if (config != null && config.gribConfig != null) dcm.putAuxInfo(FeatureCollectionConfig.AUX_GRIB_CONFIG, config.gribConfig); dcm.scan(false); result.add(dcm);
private boolean _sync() throws IOException { if (!datasetManager.scan(true)) return false; // nothing changed LOOK what about grib extention ?? cacheDirty = true; closeDatasets(); makeDatasets(null); // rebuild the metadata rebuildDataset(); ncDataset.finish(); if (ncDataset.getEnhanceMode().contains(NetcdfDataset.Enhance.CoordSystems)) { // force recreation of the coordinate systems ncDataset.clearCoordinateSystems(); ncDataset.enhance(ncDataset.getEnhanceMode()); ncDataset.finish(); } return true; }
private boolean _sync() throws IOException { if (!datasetManager.scan(true)) return false; // nothing changed LOOK what about grib extention ?? cacheDirty = true; closeDatasets(); makeDatasets(null); // rebuild the metadata rebuildDataset(); ncDataset.finish(); if (ncDataset.getEnhanceMode().contains(NetcdfDataset.Enhance.CoordSystems)) { // force recreation of the coordinate systems ncDataset.clearCoordinateSystems(); ncDataset.enhance(ncDataset.getEnhanceMode()); ncDataset.finish(); } return true; }
@Test @Ignore("tests fail on jenkins due to file permisssions") public void testScanFromConfig() throws IOException { //public FeatureCollectionConfig(String name, FeatureCollectionType fcType, String spec, String dateFormatMark, String olderThan, String recheckAfter, // String timePartition, String useIndexOnlyS, Element innerNcml) { // public FeatureCollectionConfig(String name, String path, FeatureCollectionType fcType, String spec, // String dateFormatMark, String olderThan, // String timePartition, String useIndexOnlyS, Element innerNcml) { FeatureCollectionConfig config = new FeatureCollectionConfig("testScanFromConfig", "path", FeatureCollectionType.FMRC, TestDir.cdmUnitTestDir + "agg/updating/.*nc$", null, null, "10 sec", null, null); assert touch(TestDir.cdmUnitTestDir + "agg/updating/extra.nc"); // count scanned files Formatter f = new Formatter(System.out); MFileCollectionManager dcm = new MFileCollectionManager(config, f, null); dcm.scan(true); List<MFile> fileList = (List<MFile>) Misc.getList(dcm.getFilesSorted()); assert fileList.size() == 2 : dcm; }