--- dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/AddressSearch.java 2015/05/22 12:06:22 2558 +++ dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/AddressSearch.java 2015/07/15 06:52:05 2608 @@ -42,6 +42,8 @@ private DataStatisticsBean stats = new DataStatisticsBean(); + private DatabaseLayer db; + ServiceConfig config; StreetnameHelper levenshteinHelper; @@ -49,9 +51,11 @@ StreetnameHelper osmHelper; - public AddressSearch(ServiceConfig config) { + public AddressSearch(DatabaseLayer db, ServiceConfig config) { this.config = config; + this.db = db; + levenshteinHelper = new LevenshteinStreetnameHelper( this ); googleHelper = new GoogleStreetnameHelper( config ); osmHelper = new OSMStreetnameHelper( config ); @@ -250,7 +254,7 @@ long start1 = System.currentTimeMillis(); System.out.println("Build -- stage 1"); - alleAdresser = DatabaseLayer.getAllAdresses(); + alleAdresser = db.getAllAdresses(); /* Mapper mellem db Row ID og adresse noden */ @@ -301,7 +305,7 @@ System.out.println("Build -- stage 2 alias tabel"); int vaskCount = 0; - List aliasList = DatabaseLayer.getAliasList(); + List aliasList = db.getAliasList(); for (AliasBean alias : aliasList) { Map postnrVeje = searchPostnrVejnavnGadeid.get(alias.postnr); @@ -338,7 +342,7 @@ DeduplicateHelper ruteHelper = new DeduplicateHelper(); DeduplicateHelper korelisteHelper = new DeduplicateHelper(); - List extDao = DatabaseLayer.getExtendedAdresslist(); + List extDao = db.getExtendedAdresslist(); for (ExtendedBean eb : extDao) { Address orgAddress = idAddressMap.get(eb.orgId); @@ -412,7 +416,7 @@ System.out.println("Build, stage3 elapsed: " + (start4-start3) ); System.out.println("Build -- stage 4 - 100pct"); - Map hundredePct = DatabaseLayer.get100PctList(); + Map hundredePct = db.get100PctList(); for (Address addr : alleAdresser) { if (addr.daekningsType != DaekningsType.DAEKNING_IKKEDAEKKET) { continue; @@ -455,11 +459,13 @@ stats.ikkeDaekketCount++; } } + stats.totalCount = alleAdresser.size(); stats.elapsed = stop-start1; stats.buildTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format( new Date() ); + System.out.println("Build: totalCount: " + stats.totalCount); System.out.println("Build: direkteCount: " + stats.direkteCount); System.out.println("Build: extendedCount: " + stats.extendedCount); System.out.println("Build: hundredePctCount: " + stats.hundredePctCount); @@ -474,6 +480,10 @@ return stats; } + public DatabaseLayer getDatabaseLayer() { + return db; + } + public void clear() { searchPostnrVejnavnGadeid.clear(); searchGadeidentAdresser.clear(); @@ -584,7 +594,9 @@ aliasSet.add(vejnavn.replace("st.", "store") ); aliasSet.add(vejnavn.replace("søndre", "sdr") ); - aliasSet.add(vejnavn.replace("sdr", "søndre") ); + aliasSet.add(vejnavn.replace("sdr", "søndre") ); + aliasSet.add(vejnavn.replace("sønder", "sdr") ); + aliasSet.add(vejnavn.replace("sdr", "sønder") ); aliasSet.add(vejnavn.replace("nørre", "nr") ); @@ -620,10 +632,14 @@ aliasSet.add(vejnavn.replace("john", "j") ); aliasSet.add(vejnavn.replace("thomas", "th") ); aliasSet.add(vejnavn.replace("thorvald", "th") ); + aliasSet.add(vejnavn.replace("frederik", "fr") ); + aliasSet.add(vejnavn.replace("frederiks", "fr") ); aliasSet.add(vejnavn.replace("christian", "chr") ); + aliasSet.add(vejnavn.replace("christians", "chr") ); aliasSet.add(vejnavn.replace("kristian", "kr") ); + aliasSet.add(vejnavn.replace("kristians", "kr") ); // alternative stavninger @@ -683,7 +699,15 @@ aliasSet.add(vejnavn.replace("plads", "pl") ); aliasSet.add(vejnavn.replace("vænget", "vænge") ); - + + aliasSet.add(vejnavn.replace("boulevard", "blvd") ); + aliasSet.add(vejnavn.replace("blvd", "boulevard") ); + + aliasSet.add(vejnavn.replace("boulevard", "boule") ); + aliasSet.add(vejnavn.replace("boule", "boulevard") ); + + aliasSet.add(vejnavn.replace("kronborg", "krbg") ); //Krbg ladegårdsvej, 3000 + aliasSet.add(vejnavn.replace("krbg", "kronborg") ); // Opbyg æøå varianter over alle fundne aliaser