/[projects]/dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/AddressSearch.java
ViewVC logotype

Diff of /dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/AddressSearch.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2556 by torben, Fri May 22 11:22:56 2015 UTC revision 2557 by torben, Fri May 22 12:00:25 2015 UTC
# Line 27  import dk.daoas.daoadresseservice.beans. Line 27  import dk.daoas.daoadresseservice.beans.
27  import dk.daoas.daoadresseservice.beans.SearchResult;  import dk.daoas.daoadresseservice.beans.SearchResult;
28  import dk.daoas.daoadresseservice.beans.SearchResult.Status;  import dk.daoas.daoadresseservice.beans.SearchResult.Status;
29  import dk.daoas.daoadresseservice.db.DatabaseLayer;  import dk.daoas.daoadresseservice.db.DatabaseLayer;
30    import dk.daoas.daoadresseservice.util.DaoUtils;
31  import dk.daoas.daoadresseservice.util.DeduplicateHelper;  import dk.daoas.daoadresseservice.util.DeduplicateHelper;
32  import dk.daoas.daoadresseservice.util.NaturalOrderComparator;  import dk.daoas.daoadresseservice.util.NaturalOrderComparator;
33    
# Line 110  public class AddressSearch { Line 111  public class AddressSearch {
111                  }                  }
112                                    
113                  // LookupStreetname er en indkapsling af alm + levenstein + google + osm                  // LookupStreetname er en indkapsling af alm + levenstein + google + osm
114                  Integer gadeident = lookupStretname(request, result, helperSearchKey);                  Integer gadeident = lookupStretname(request, result, helperSearchKey, true);
115                                    
116                                    
117                  /*                  /*
118                   * Hvis der ikke er direkte hits, prøver vi at skære op til 3 ord vejnavn                   * Hvis der ikke er direkte hits, prøver vi at skære ord af vejnavn
119                   *                   *
120                   *Denne sektion er MEGET experimental da den øger antallet af kald til google/OSM væsentligt                   * <strike>Denne sektion er MEGET experimental da den øger antallet af kald til google/OSM væsentligt</strike>*/
121                  if (gadeident == null) {                  if (gadeident == null) {
122                            final int MAX_TRIES = 4;
123                            
124                          String vejnavnParts[] = request.vejnavn.split(" ");                          String vejnavnParts[] = request.vejnavn.split(" ");
125                                                    
126                          for (int i=1; i<=3 && i<vejnavnParts.length; i++) {                          for (int i=1; i<=MAX_TRIES && i<vejnavnParts.length; i++) {
127                                  String subVejnavn = DaoUtils.joinHelper(vejnavnParts, i);                                  String subVejnavn = DaoUtils.joinHelper(vejnavnParts, i);
128                                                                    
129                                  request.vejnavn = subVejnavn;                                  request.vejnavn = subVejnavn;
130                                  result.vasketVejnavn = AddressUtils.vaskVejnavn( request.vejnavn );                                  result.vasketVejnavn = AddressUtils.vaskVejnavn( request.vejnavn );
131                                                                    
132                                  gadeident = lookupStretname(request, result, helperSearchKey);                                  gadeident = lookupStretname(request, result, helperSearchKey, false);//prøv opslag MEN UDEN GOOGLE/OSM !!!
133                                                                    
134                                  //hvis vi fandt vejen ud fra substrengen                                  //hvis vi fandt vejen ud fra substrengen
135                                  if (gadeident != null) {                                  if (gadeident != null) {
# Line 137  public class AddressSearch { Line 140  public class AddressSearch {
140                                  request.vejnavn = result.splitResult.vej;                                  request.vejnavn = result.splitResult.vej;
141                                  result.vasketVejnavn = AddressUtils.vaskVejnavn( request.vejnavn );                                  result.vasketVejnavn = AddressUtils.vaskVejnavn( request.vejnavn );
142                          }                                                }                      
143                  }*/                  }
144                                    
145    
146                                    
# Line 188  public class AddressSearch { Line 191  public class AddressSearch {
191          }          }
192    
193    
194          private Integer lookupStretname(SearchRequest request, SearchResult result, String helperSearchKey) {          private Integer lookupStretname(SearchRequest request, SearchResult result, String helperSearchKey, boolean useExternal) {
195                  Integer gadeident =  request.streetNames.get(result.vasketVejnavn);                  Integer gadeident =  request.streetNames.get(result.vasketVejnavn);
196                                    
197                                    
# Line 207  public class AddressSearch { Line 210  public class AddressSearch {
210                                    
211                  // Brug OpenStreetMap før vi prøver google                  // Brug OpenStreetMap før vi prøver google
212                  // For google har en request limit, det har OSM ikke!                  // For google har en request limit, det har OSM ikke!
213                  if ( gadeident == null) {                  if ( gadeident == null && useExternal) {
214                          String vej = osmHelper.proposeStreetName(request, result);                                        String vej = osmHelper.proposeStreetName(request, result);              
215                          gadeident = helperWrapper(vej, request.streetNames, helperSearchKey);                          gadeident = helperWrapper(vej, request.streetNames, helperSearchKey);
216                  }                  }
217                                    
218                  if ( gadeident == null) {                  if ( gadeident == null && useExternal) {
219                          String vej = googleHelper.proposeStreetName(request, result);                                    String vej = googleHelper.proposeStreetName(request, result);          
220                          gadeident = helperWrapper(vej, request.streetNames, helperSearchKey);                          gadeident = helperWrapper(vej, request.streetNames, helperSearchKey);
221                  }                  }

Legend:
Removed from v.2556  
changed lines
  Added in v.2557

  ViewVC Help
Powered by ViewVC 1.1.20