--- dao/DaoAdresseService/src/dk/daoas/daoadresseservice/AdressSearch.java 2015/02/15 16:13:11 2302 +++ dao/DaoAdresseService/src/dk/daoas/daoadresseservice/AdressSearch.java 2015/02/15 16:53:13 2303 @@ -23,6 +23,8 @@ List
alleAdresser; + Map helperCache; + Map hundredePct; @@ -56,20 +58,31 @@ Long gadeident = postnrVeje.get(vasketVejnavn); if ( gadeident == null) { - String osmVej = GeocodeHelper.openstreetmapHelper(postnr, split.vej ); - if (osmVej != null) { - String osmVasket = AddressUtils.vaskVejnavn( osmVej ); - gadeident = postnrVeje.get(osmVasket); - osm = true; - } + gadeident = helperCache.get(vasketVejnavn); } + if ( gadeident == null) { String googleVej = GeocodeHelper.googleHelper(postnr, split.vej ); if (googleVej != null) { String googleVasket = AddressUtils.vaskVejnavn( googleVej ); gadeident = postnrVeje.get(googleVasket); google = true; + if (gadeident != null) { + helperCache.put(googleVasket, gadeident); + } + } + } + + if ( gadeident == null) { + String osmVej = GeocodeHelper.openstreetmapHelper(postnr, split.vej ); + if (osmVej != null) { + String osmVasket = AddressUtils.vaskVejnavn( osmVej ); + gadeident = postnrVeje.get(osmVasket); + osm = true; + if (gadeident != null) { + helperCache.put(osmVasket, gadeident); + } } } @@ -105,7 +118,8 @@ public void buildSearchStructures() throws SQLException{ searchPostnrVejnavnGadeid = new HashMap>(); searchGadeidentAdresser = new HashMap>(); - + helperCache = new ConcurrentHashMap(); + System.out.println("Build -- stage 1"); alleAdresser = DatabaseLayer.getAllAdresses();