Compare commits

..

No commits in common. "b1e2fd03c7ac40fcdf367935f580a9890ad8927c" and "041488b36c761ff2dd0fd71c1538b646364223ea" have entirely different histories.

7 changed files with 13 additions and 98 deletions

View file

@ -90,69 +90,7 @@ public class DatabasePseudoTagProvider {
}
}
public DatabasePseudoTagProvider(String filename, String jdbcurl) {
if (filename != null) doFileImport(filename);
if (jdbcurl != null) doDatabaseImport(jdbcurl);
}
private void doDatabaseImport(String jdbcurl) {
try (Connection conn = DriverManager.getConnection(jdbcurl)) {
System.out.println("DatabasePseudoTagProvider reading from database: " + jdbcurl);
conn.setAutoCommit(false);
Map<Map<String, String>, Map<String, String>> mapUnifier = new HashMap<>();
CompactLongMap<Map<String, String>> data = new CompactLongMap<>();
String sql_all_tags = "SELECT * from all_tags";
try(PreparedStatement psAllTags = conn.prepareStatement(sql_all_tags)) {
psAllTags.setFetchSize(100);
// process the results
ResultSet rs = psAllTags.executeQuery();
long dbRows = 0L;
while (rs.next()) {
long osm_id = rs.getLong("losmid");
Map<String, String> row = new HashMap<>(5);
addDBTag(row, rs, "noise_class");
addDBTag(row, rs, "river_class");
addDBTag(row, rs, "forest_class");
addDBTag(row, rs, "town_class");
addDBTag(row, rs, "traffic_class");
// apply the instance-unifier for the row-map
Map<String, String> knownRow = mapUnifier.get(row);
if (knownRow != null) {
row = knownRow;
} else {
mapUnifier.put(row, row);
}
data.put(osm_id, row);
dbRows++;
if (dbRows % 1000000L == 0L) {
System.out.println(".. from database: rows =" + dbRows);
}
}
System.out.println("freezing result map..");
dbData = new FrozenLongMap<>(data);
System.out.println("read from database: rows =" + dbData.size() + " unique rows=" + mapUnifier.size());
}
} catch (SQLException g) {
System.err.format("DatabasePseudoTagProvider execute sql .. SQL State: %s\n%s\n", g.getSQLState(), g.getMessage());
System.exit(1);
} catch (Exception f) {
f.printStackTrace();
System.exit(1);
}
}
private void doFileImport(String filename) {
public DatabasePseudoTagProvider(String filename) {
try (BufferedReader br = new BufferedReader(new InputStreamReader(
filename.endsWith(".gz") ? new GZIPInputStream(new FileInputStream(filename)) : new FileInputStream(filename)))) {
@ -220,22 +158,12 @@ public class DatabasePseudoTagProvider {
return l;
}
private static void addTag(Map<String, String> row, String s, String name) {
private static void addTag(Map<String, String> row, String s, String name) {
if (!s.isEmpty()) {
row.put(name, s);
}
}
private static void addDBTag(Map<String, String> row, ResultSet rs, String name) {
String v = null;
try {
v = rs.getString(name);
} catch (Exception e) {}
if (v != null) {
row.put("estimated_" + name, v);
}
}
public void addTags(long osm_id, Map<String, String> map) {
if (map == null || !map.containsKey("highway")) {
@ -266,6 +194,6 @@ public class DatabasePseudoTagProvider {
pseudoTagsFound.put(key, cnt + 1L);
}
}
}

View file

@ -113,11 +113,7 @@ public class OsmCutter extends MapCreatorBase {
}
public void setDbTagFilename(String filename) {
dbPseudoTagProvider = new DatabasePseudoTagProvider(filename, null);
}
public void setDbTagDatabase(String jdbcurl) {
dbPseudoTagProvider = new DatabasePseudoTagProvider(null, jdbcurl);
dbPseudoTagProvider = new DatabasePseudoTagProvider(filename);
}
@Override

View file

@ -13,7 +13,7 @@ public class OsmFastCutter extends MapCreatorBase {
public static void main(String[] args) throws Exception {
System.out.println("*** OsmFastCutter: cut an osm map in node-tiles + way-tiles");
if (args.length != 11 && args.length != 12 && args.length != 13) {
String common = "java OsmFastCutter <lookup-file> <node-dir> <way-dir> <node55-dir> <way55-dir> <border-file> <out-rel-file> <out-res-file> <filter-profile> <report-profile> <check-profile> <map-file> [db-tag-filename | db-tag-jdbcurl]";
String common = "java OsmFastCutter <lookup-file> <node-dir> <way-dir> <node55-dir> <way55-dir> <border-file> <out-rel-file> <out-res-file> <filter-profile> <report-profile> <check-profile> <map-file> [db-tag-filename]";
System.out.println("usage: bzip2 -dc <map> | " + common);
System.out.println("or : " + common + " <inputfile> ");
@ -37,16 +37,10 @@ public class OsmFastCutter extends MapCreatorBase {
);
}
public static void doCut(File lookupFile, File nodeDir, File wayDir, File node55Dir, File way55Dir, File borderFile, File relFile, File resFile, File profileAll, File profileReport, File profileCheck, File mapFile, String dbTagInfo) throws Exception {
public static void doCut(File lookupFile, File nodeDir, File wayDir, File node55Dir, File way55Dir, File borderFile, File relFile, File resFile, File profileAll, File profileReport, File profileCheck, File mapFile, String dbTagFilename) throws Exception {
// **** run OsmCutter ****
OsmCutter cutter = new OsmCutter();
if (dbTagInfo != null) {
if (dbTagInfo.toLowerCase().startsWith("jdbc")) {
cutter.setDbTagDatabase(dbTagInfo);
} else {
cutter.setDbTagFilename(dbTagInfo);
}
}
if (dbTagFilename != null) cutter.setDbTagFilename(dbTagFilename);
// ... inject WayCutter
cutter.wayCutter = new WayCutter();

View file

@ -47,7 +47,6 @@ public class StackSampler extends Thread {
}
}
@SuppressWarnings({"deprecation", "RedundantSuppression"}) // Android
public void dumpThreads() {
try {
int wait1 = rand.nextInt(interval);

View file

@ -6,7 +6,7 @@ buildscript {
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.11.1'
classpath 'com.android.tools.build:gradle:8.10.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files

View file

@ -16,8 +16,6 @@ publishing {
}
}
publications {
gpr(MavenPublication) {
from components.java
}
gpr(MavenPublication)
}
}

View file

@ -247,10 +247,10 @@ assign costfactor
if ( and highway= not route=ferry ) then 10000
#
# exclude motorways and proposed, abandoned under construction roads
# exclude motorways and proposed roads
#
else if ( highway=motorway|motorway_link ) then 10000
else if ( highway=proposed|abandoned|construction ) then 10000
else if ( highway=motorway|motorway_link ) then 10000
else if ( highway=proposed|abandoned ) then 10000
#
# all other exclusions below (access, steps, ferries,..)