@Override public boolean loadExisting() { return da.loadExisting(); }
@Override public boolean loadExisting() { if (!nodesCH.loadExisting() || !shortcuts.loadExisting()) return false; loadEdgesHeader(); return true; }
@Override public synchronized boolean loadExisting() { if (!da.loadExisting()) return false; int len = (int) da.getCapacity(); byte[] bytes = new byte[len]; da.getBytes(0, bytes, len); try { loadProperties(map, new StringReader(new String(bytes, UTF_CS))); return true; } catch (IOException ex) { throw new IllegalStateException(ex); } }
@Override public boolean loadExisting() { if (!turnCosts.loadExisting()) return false; turnCostsEntryBytes = turnCosts.getHeader(0); turnCostsCount = turnCosts.getHeader(4); return true; }
void loadExisting(String dim) { if (!nodes.loadExisting()) throw new IllegalStateException("Cannot load nodes. corrupt file or directory? " + dir); if (!dim.equalsIgnoreCase("" + nodeAccess.getDimension())) throw new IllegalStateException("Configured dimension (" + nodeAccess.getDimension() + ") is not equal " + "to dimension of loaded graph (" + dim + ")"); if (!edges.loadExisting()) throw new IllegalStateException("Cannot load edges. corrupt file or directory? " + dir); if (!wayGeometry.loadExisting()) throw new IllegalStateException("Cannot load geometry. corrupt file or directory? " + dir); if (!nameIndex.loadExisting()) throw new IllegalStateException("Cannot load name index. corrupt file or directory? " + dir); if (!extStorage.loadExisting()) throw new IllegalStateException("Cannot load extended storage. corrupt file or directory? " + dir); // first define header indices of this storage initStorage(); // now load some properties from stored data loadNodesHeader(); loadEdgesHeader(); loadWayGeometryHeader(); }
@Override public boolean loadExisting() { if (names.loadExisting()) { bytePointer = BitUtil.LITTLE.combineIntsToLong(names.getHeader(0), names.getHeader(4)); return true; } return false; }
@Override public boolean loadExisting() { if (initialized) throw new IllegalStateException("Call loadExisting only once"); if (!dataAccess.loadExisting()) return false; if (dataAccess.getHeader(0) != MAGIC_INT) throw new IllegalStateException("incorrect location index version, expected:" + MAGIC_INT); if (dataAccess.getHeader(1 * 4) != calcChecksum()) throw new IllegalStateException("location index was opened with incorrect graph: " + dataAccess.getHeader(1 * 4) + " vs. " + calcChecksum()); setMinResolutionInMeter(dataAccess.getHeader(2 * 4)); prepareAlgo(); initialized = true; return true; }
/** * Loads the index from disc if exists. Make sure you are using the identical graph which was * used while flushing this index. * <p> * * @return if loading from file was successfully. */ @Override public boolean loadExisting() { if (!index.loadExisting()) return false; if (index.getHeader(0) != MAGIC_INT) throw new IllegalStateException("incorrect loc2id index version"); int lat = index.getHeader(1 * 4); int lon = index.getHeader(2 * 4); int checksum = index.getHeader(3 * 4); if (checksum != graph.getNodes()) throw new IllegalStateException("index was created from a different graph with " + checksum + ". Current nodes:" + graph.getNodes()); initAlgo(lat, lon); return true; }
if (isInitialized()) throw new IllegalStateException("Cannot call PrepareLandmarks.loadExisting if already initialized"); if (landmarkWeightDA.loadExisting()) { if (!subnetworkStorage.loadExisting()) throw new IllegalStateException("landmark weights loaded but not the subnetworks!?");
boolean loadExisting = false; try { loadExisting = heights.loadExisting(); } catch (Exception ex) { logger.warn("cannot load " + name + ", error: " + ex.getMessage());
@Test public void testExceptionIfNoEnsureCapacityWasCalled() { DataAccess da = createDataAccess(name); assertFalse(da.loadExisting()); // throw some undefined exception if no ensureCapacity was called try { da.setInt(2 * 4, 321); assertTrue(false); } catch (Exception ex) { } }
boolean loadExisting = false; try { loadExisting = heights.loadExisting(); } catch (Exception ex) { logger.warn("cannot load dem" + intKey + ", error:" + ex.getMessage());
@Test public void testRenameFlush() { DataAccess da = createDataAccess(name); da.create(100); da.setInt(17 * 4, 17); da.flush(); assertTrue(new File(directory + name).exists()); da.rename(name + "wow"); assertFalse(new File(directory + name).exists()); assertTrue(new File(directory + name + "wow").exists()); assertEquals(17, da.getInt(17 * 4)); da.close(); da = createDataAccess(name + "wow"); assertTrue(da.loadExisting()); assertEquals(17, da.getInt(17 * 4)); da.close(); }
@Test public void textMixRAM2MMAP() { DataAccess da = new RAMDataAccess(name, directory, true, defaultOrder); assertFalse(da.loadExisting()); da.create(100); da.setInt(7 * 4, 123); da.flush(); da.close(); da = createDataAccess(name); assertTrue(da.loadExisting()); assertEquals(123, da.getInt(7 * 4)); da.close(); }
@Test public void textMixMMAP2RAM() { DataAccess da = createDataAccess(name); assertFalse(da.loadExisting()); da.create(100); da.setInt(7 * 4, 123); // TODO "memory mapped flush" is expensive and not required. only writing the header is required. da.flush(); da.close(); da = new RAMDataAccess(name, directory, true, defaultOrder); assertTrue(da.loadExisting()); assertEquals(123, da.getInt(7 * 4)); da.close(); } }
@Test public void testLoadFlush() { DataAccess da = createDataAccess(name); assertFalse(da.loadExisting()); da.create(300); da.setInt(7 * 4, 123); assertEquals(123, da.getInt(7 * 4)); da.setInt(10 * 4, Integer.MAX_VALUE / 3); assertEquals(Integer.MAX_VALUE / 3, da.getInt(10 * 4)); da.flush(); // check noValue clearing assertEquals(0, da.getInt(2 * 4)); assertEquals(0, da.getInt(3 * 4)); assertEquals(123, da.getInt(7 * 4)); assertEquals(Integer.MAX_VALUE / 3, da.getInt(10 * 4)); da.close(); // cannot load data if already closed try { da.loadExisting(); assertTrue(false); } catch (Exception ex) { assertEquals("already closed", ex.getMessage()); } da = createDataAccess(name); assertTrue(da.loadExisting()); assertEquals(123, da.getInt(7 * 4)); da.close(); }
@Test public void testLoadClose() { DataAccess da = createDataAccess(name); da.create(300); da.setInt(2 * 4, 321); da.flush(); da.close(); da = createDataAccess(name); assertTrue(da.loadExisting()); assertEquals(321, da.getInt(2 * 4)); da.close(); }
@Test public void testSegments() { DataAccess da = createDataAccess(name); da.setSegmentSize(128); da.create(10); assertEquals(1, da.getSegments()); da.ensureCapacity(500); int olds = da.getSegments(); assertTrue(olds > 3); da.setInt(400, 321); da.flush(); da.close(); da = createDataAccess(name); assertTrue(da.loadExisting()); assertEquals(olds, da.getSegments()); assertEquals(321, da.getInt(400)); da.close(); }
@Test public void testHeader() { DataAccess da = createDataAccess(name); da.create(300); da.setHeader(7 * 4, 123); assertEquals(123, da.getHeader(7 * 4)); da.setHeader(10 * 4, Integer.MAX_VALUE / 3); assertEquals(Integer.MAX_VALUE / 3, da.getHeader(10 * 4)); da.setHeader(11 * 4, Helper.degreeToInt(123.321)); assertEquals(123.321, Helper.intToDegree(da.getHeader(11 * 4)), 1e-4); da.flush(); da.close(); da = createDataAccess(name); assertTrue(da.loadExisting()); assertEquals(123, da.getHeader(7 * 4)); da.close(); }
@Override public boolean loadExisting() { if (!turnCosts.loadExisting()) return false; turnCostsEntryBytes = turnCosts.getHeader(0); turnCostsCount = turnCosts.getHeader(4); return true; }