private CoordinateReferenceSystem getCRS(int srid) { try { try (Connection cx = connPool.getConnection()) { try (PreparedStatement ps = cx.prepareStatement( String.format( "SELECT definition FROM %s WHERE srs_id = ?", SPATIAL_REF_SYS))) { try (ResultSet rs = prepare(ps).set(srid).log(Level.FINE).statement().executeQuery()) { if (rs.next()) { try { return CRS.parseWKT(rs.getString("definition")); } catch (FactoryException e) { LOGGER.log(Level.FINE, "Error parsing CRS definitions!", e); } } } } } } catch (SQLException e) { throw new RuntimeException(e); } return null; }
.set(e.getTableName()) .set(e.getSrid()) .set(bounds.getMinX()) .set(bounds.getMinY()) .set(bounds.getMaxX()) .set(bounds.getMaxY()) .statement(); try { st.execute(); "INSERT INTO %s VALUES (?,?,?,?,?,?,?,?)", TILE_MATRIX_METADATA)) .statement(); try { for (TileMatrix m : e.getTileMatricies()) { prepare(st) .set(e.getTableName()) .set(m.getZoomLevel()) .set(m.getMatrixWidth()) .set(m.getMatrixHeight()) .set(m.getTileWidth()) .set(m.getTileHeight()) .set(m.getXPixelSize()) .set(m.getYPixelSize()) .statement() .execute();
SqlUtil.PreparedStatementBuilder psb = prepare(cx, sb.toString()) .set(e.getTableName()) .set(e.getDataType().value()) .set(e.getIdentifier()); psb.set(e.getDescription()); psb.set(DATE_FORMAT.format(e.getLastChange())); psb.set(e.getBounds().getMinX()) .set(e.getBounds().getMinY()) .set(e.getBounds().getMaxX()) .set(e.getBounds().getMaxY()); } else { double minx = 0; psb.set(minx).set(miny).set(maxx).set(maxy); psb.set(e.getSrid()); PreparedStatement ps = psb.log(Level.FINE).statement(); try { ps.execute();
"INSERT OR REPLACE INTO %s VALUES (?,?,?,?)", TABLE_GRIDS)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .set(entry.getGrid()) .log(Level.FINE) .statement(); } else { ps = "DELETE FROM %s WHERE zoom_level=? AND tile_column=? AND tile_row=?", TABLE_GRIDS)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .log(Level.FINE) .statement(); "INSERT OR REPLACE INTO %s VALUES (?,?,?,?,?)", TABLE_GRID_DATA)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .set(gridDataEntry.getKey()) .set(gridDataEntry.getValue()) .log(Level.FINE) .statement(); } else {
"INSERT OR REPLACE INTO %s VALUES (?,?,?,?)", TABLE_TILES)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .set(entry.getData()) .log(Level.FINE) .statement(); } else { ps = "DELETE FROM %s WHERE zoom_level=? AND tile_column=? AND tile_row=?", TABLE_TILES)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .log(Level.FINE) .statement();
"SELECT grid FROM %s WHERE zoom_level=? AND tile_column=? AND tile_row=?", TABLE_GRIDS)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .log(Level.FINE) .statement(); ResultSet rs = ps.executeQuery(); "SELECT key_name, key_json FROM %s WHERE zoom_level=? AND tile_column=? AND tile_row=?", TABLE_GRID_DATA)) .set(entry.getZoomLevel()) .set(entry.getTileColumn()) .set(entry.getTileRow()) .log(Level.FINE) .statement(); rs = ps.executeQuery();
public long maxRow(long zoomLevel) throws SQLException { long size = Long.MAX_VALUE; Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare( cx, format( "SELECT MAX(tile_row) FROM %s WHERE zoom_level=?", TABLE_TILES)) .set(zoomLevel) .statement(); ResultSet rs = ps.executeQuery(); if (rs.next()) { size = rs.getLong(1); } rs.close(); ps.close(); } finally { cx.close(); } return size; }
public long closestZoom(long zoomLevel) throws SQLException { long zoom = 0; Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare( cx, format( "SELECT zoom_level FROM %s ORDER BY abs(zoom_level - ?)", TABLE_TILES)) .set(zoomLevel) .statement(); ResultSet rs = ps.executeQuery(); if (rs.next()) { zoom = rs.getLong(1); } rs.close(); ps.close(); } finally { cx.close(); } return zoom; }
public long minRow(long zoomLevel) throws SQLException { long size = 0; Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare( cx, format( "SELECT MIN(tile_row) FROM %s WHERE zoom_level=?", TABLE_TILES)) .set(zoomLevel) .statement(); ResultSet rs = ps.executeQuery(); if (rs.next()) { size = rs.getLong(1); } rs.close(); ps.close(); } finally { cx.close(); } return size; }
protected void saveMetaDataEntry(String name, String value, Connection cx) throws SQLException { PreparedStatement ps; if (disableJournal) { disableJournal(cx); } if (value != null) { ps = prepare(cx, format("INSERT OR REPLACE INTO %s VALUES (?,?)", TABLE_METADATA)) .set(name) .set(value) .log(Level.FINE) .statement(); } else { ps = prepare(cx, format("DELETE FROM %s WHERE NAME = ?", TABLE_METADATA)) .set(name) .log(Level.FINE) .statement(); } ps.execute(); ps.close(); }
public long maxColumn(long zoomLevel) throws SQLException { long size = Long.MAX_VALUE; Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare( cx, format( "SELECT MAX(tile_column) FROM %s WHERE zoom_level=?", TABLE_TILES)) .set(zoomLevel) .statement(); ResultSet rs = ps.executeQuery(); if (rs.next()) { size = rs.getLong(1); } rs.close(); ps.close(); } finally { cx.close(); } return size; }
public long minColumn(long zoomLevel) throws SQLException { long size = 0; Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare( cx, format( "SELECT MIN(tile_column) FROM %s WHERE zoom_level=?", TABLE_TILES)) .set(zoomLevel) .statement(); ResultSet rs = ps.executeQuery(); if (rs.next()) { size = rs.getLong(1); } rs.close(); ps.close(); } finally { cx.close(); } return size; }
public int numberOfTiles(long zoomLevel) throws SQLException { int size; Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare(cx, format("SELECT COUNT(*) FROM %s WHERE zoom_level=?", TABLE_TILES)) .set(zoomLevel) .statement(); ResultSet rs = ps.executeQuery(); if (!rs.next()) { throw new SQLException("Zoom level count did not return any row"); } size = rs.getInt(1); rs.close(); ps.close(); } finally { cx.close(); } return size; }
void deleteGeometryColumnsEntry(FeatureEntry e) throws IOException { String sql = format("DELETE FROM %s WHERE table_name = ?", GEOMETRY_COLUMNS); try { Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare(cx, sql).set(e.getTableName()).log(Level.FINE).statement(); try { ps.execute(); } finally { close(ps); } } finally { close(cx); } } catch (SQLException ex) { throw new IOException(ex); } }
protected String loadMetaDataEntry(String name, Connection cx) throws SQLException { PreparedStatement ps; ps = prepare(cx, format("SELECT VALUE FROM %s WHERE NAME = ?", TABLE_METADATA)) .set(name) .log(Level.FINE) .statement(); ResultSet rs = ps.executeQuery(); String result = null; if (rs.next()) { result = rs.getString(1); } rs.close(); ps.close(); return result; }
void deleteGeoPackageContentsEntry(Entry e) throws IOException { String sql = format("DELETE FROM %s WHERE table_name = ?", GEOPACKAGE_CONTENTS); try { Connection cx = connPool.getConnection(); try { PreparedStatement ps = prepare(cx, sql).set(e.getTableName()).log(Level.FINE).statement(); try { ps.execute(); } finally { close(ps); } } finally { close(cx); } } catch (SQLException ex) { throw new IOException(ex); } }