--- dao/DaoAdresseService/src/dk/daoas/daoadresseservice/AdressSearch.java 2015/02/23 12:30:41 2337 +++ dao/DaoAdresseService/src/dk/daoas/daoadresseservice/AdressSearch.java 2015/02/23 14:39:49 2346 @@ -1,8 +1,10 @@ package dk.daoas.daoadresseservice; import java.sql.SQLException; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collections; +import java.util.Date; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -11,6 +13,7 @@ import java.util.concurrent.ConcurrentHashMap; import dk.daoas.daoadresseservice.AddressUtils.SplitResult; +import dk.daoas.daoadresseservice.admin.ServiceConfig; import dk.daoas.daoadresseservice.beans.Address; import dk.daoas.daoadresseservice.beans.DataStatisticsBean; import dk.daoas.daoadresseservice.beans.ExtendedBean; @@ -31,7 +34,7 @@ private DataStatisticsBean stats = new DataStatisticsBean(); - public SearchResult search(String postnrStr, String adresse) { + public SearchResult search(ServiceConfig config, String postnrStr, String adresse) { int postnr=0; boolean google = false; @@ -68,29 +71,33 @@ if ( gadeident == null) { - String googleVej = GeocodeHelper.googleHelper(postnr, split.vej ); - google = true; - - if (googleVej != null) { - String googleVasket = AddressUtils.vaskVejnavn( googleVej ); - gadeident = postnrVeje.get(googleVasket); + if (config.useGoogle) { + String googleVej = GeocodeHelper.googleHelper(postnr, split.vej ); + google = true; - if (gadeident != null) { - helperCache.put(helperSearchKey, gadeident); + if (googleVej != null) { + String googleVasket = AddressUtils.vaskVejnavn( googleVej ); + gadeident = postnrVeje.get(googleVasket); + + if (gadeident != null) { + helperCache.put(helperSearchKey, gadeident); + } } } } if ( gadeident == null) { - String osmVej = GeocodeHelper.openstreetmapHelper(postnr, split.vej ); - osm = true; - - if (osmVej != null) { - String osmVasket = AddressUtils.vaskVejnavn( osmVej ); - gadeident = postnrVeje.get(osmVasket); + if (config.useOpenStreetMaps) { + String osmVej = GeocodeHelper.openstreetmapHelper(postnr, split.vej ); + osm = true; - if (gadeident != null) { - helperCache.put(helperSearchKey, gadeident); + if (osmVej != null) { + String osmVasket = AddressUtils.vaskVejnavn( osmVej ); + gadeident = postnrVeje.get(osmVasket); + + if (gadeident != null) { + helperCache.put(helperSearchKey, gadeident); + } } } } @@ -277,7 +284,11 @@ default: stats.ikkeDaekketCount++; } - } + } + + + stats.elapsed = stop-start1; + stats.buildTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format( new Date() ); System.out.println("Build: direkteCount: " + stats.direkteCount); System.out.println("Build: extendedCount: " + stats.extendedCount);